meБрам Штайн

Разработчик и ръководител на проекти
Магистърска степен по компютърни науки

Оригиналът:
HYPHER

Hypher

Малък и бърз JavaScript пренос на уред. Може да се използва в Node.js и като JQuery плъгин.

Node.js

Hypher може да бъде инсталиран от NPM:

npm install hypher hyphenation.en-us

След това можете да го използвате във вашата програма, чрез създаване на копие на Hypher и придавайки му език на обект:

var Hypher = require('hypher'),
    english = require('hyphenation.en-us'),
    h = new Hypher(english);

// returns ['hy', 'phen', 'ation']
h.hyphenate('hyphenation');

Виж examples/node/ за пълен пример за това как да използвате Hypher. Този hyphenate метод не поддържа смесен сложни думи. Те трябва да се раздели на отделни думи, преди да бъде приет до пренос на уред и събрана отново по-късно от повикващия. Можете също така да използвате hyphenateText метод за пренасяне низ от текст. Този hyphenateText метод наистина подкрепя сложни думи и връща низ с вмъкнати меки тирета

( \u00AD .)

// returns 'Hy|phen|ation is use|ful when cen|ter jus|ti|fy|ing a 
text.' where `|` is a soft hyphen
h.hyphenateText('Hyphenation is useful when center justifying a 
text.');

The hyphenateText методът взима втори незадължителен параметър minLength който е минималната дължина една дума трябва да има трябва да се разглеждат за сричкопренасяне (по подразбиране е 4.) Имайте предвид, че инстанция на Hypher клас трябва да бъдат създадени само веднъж за всеки език обект.

Обектът език трябва да съдържа:

{
  // The minimum number of unhyphenated characters at the left of each word. (required)
  leftmin: <number>, 

  // The minimum number of unhyphenated characters at the right of each word. (required)
  rightmin: <number>,

  // A comma separated list of hyphenation exceptions. Custom hyphenations
  // can be specified using '\u2027' (hyphenation point) as hyphenation
  // character. List items are case-insensitive. (Optional)
  exceptions: <string>,

  // A patterns object (required)
  patterns: {}
}

Езикови обекти са идентични на формата, използван от Hyphenator.js . Единствената разлика е, как те се използват. Hypher изисква от вас да мине ръчно език обект, докато Hyphenator.js автоматично „регистрира“ език обект. Езикови предмети могат да бъдат намерени в хранилището модели .

JQuery

За да използвате JQuery плъгин включва dist/jquery.hypher.js във вашия HTML документ заедно с произволен брой език модел на файлове от dist/browser директория в хранилището модели . Важно е, че сте включили jquery.hypher.js преди всяко език модел файлове.

<script src="jquery.hypher.js"></script>
<script src="en-us.js"></script>

Това ще удължи JQuery с hyphenate метод. Като се има предвид следното HTML:

<p>Hyphenation is <em>important</em></p>

Можете да пренасяне на съдържанието на текста на p елемент така:

$('p').hyphenate('en-us');

Този hyphenate метод работи само на текстовото съдържание на елементите е призван, така че в горния пример думата „важни“ няма да бъде от смесен произход. За да включва и текстово съдържание на em елемент, просто да го включите в избора:

$('p, em').hyphenate('en-us');

Това естествено важи и за вашите собствени класове:

$('p.hyphenate, em, a').hyphenate('en-us');

Това ще пренасяне само p с клас hyphenate и em и a елементи.

Ендър

Ако приемем, че имате Ender инсталиран можете да добавите Hypher и сричкопренасяне модел към библиотеката си с помощта на команден ред ender build hypher hyphenation.en-us, или включват ги в твоите зависимости във вашия package.json :

"dependencies": {
  "hypher": "*",
  "hyphenation.en-us": "*"
}

и изграждане на вашата библиотека, както обикновено с ender build . Тогава – както в Jquery – пренасяне на избраните елементи.:

$('p').hyphenate('en-us');

The examples/ender/ директория съдържа пример проект използва Ender и Hypher.

Разрешително

Hypher се разпространява под лиценз BSD трите клауза (вж BSD.txt.)

Вижте също

Сътрудници

  • Лоренц Меурс – подобрения в списъка с изключения