Typograf
Universal tool for preparing russian text for web publishing. Ruby wrapper for typograf.ru webservice
Installation
Add this line to your application's Gemfile:
gem 'typograf'
And then execute:
$ bundle
Or install it yourself as:
$ gem install typograf
Usage
require "typograf"
Typograf.process('text')
You can pass second argument - hash of options.
Default options
{
:tags => 1, # 0 — не расставлять; 1 — расставлять
:tags_delete => 0, # 0 — не удалять; 1 — удалять до типографирования; 2 — удалять после типографирования
:paragraph => {
:insert => 1, # 1 — ставить; 0 — не ставить
# теги задают внешний вид обрамления параграфа, начальные и конечные теги соответственно (могут быть пустыми)
:start => '<p>',
:end => '</p>'
},
:newline => {
:tag => '<br/>', # теги перевода строки.
:insert => 1 # перевод строки: 1 — ставить; 0 — не ставить
},
:cms_new_line => 0, # Переводы строк <p> </p>
:dos_text => 0, # удаляет одинарные переводы строк и переносы: 0 — не удалять; 1 — удалять
:nowraped => {
:insert => 1, # 1 — ставить; 0 — не ставить
:nonbsp => 0, # 0 — не использовать неразрывные конструкции вместо (неразрывного пробела); 1 — наоборот
:length => 0, # не объединять в неразрывные конструкции слова, написанные через дефис, с общей длинной больше N знаков. Если 0 то не используется
:start => '<nobr>',
:end => '</nobr>'
},
:hanging_punct => 0, # висячая пунктуация: 1 — использовать; 0 — не использовать
:hanging_line => 0, # висячие строки: 1 — удалять; 0 — не удалять
:minus_sign => '–', # указывает какой символ использовать вместо знака минус: — – или −
:hyphen => {
:insert => 0,
:length => 0
},
:acronym => 1, # выделять сокращения: 1 — выделять; 0 — не выделять
:symbols => 0, # как выводить типографированный текст: 0 — буквенными символами ( ); 1 — числовыми ( )
# добавляет дополнительные атрибуты к ссылкам
:link => {
:target => '',
:class => ''
}
}
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request