README.textile in yaroslav-i18n-0.1.0 vs README.textile in yaroslav-i18n-0.1.1
- old
+ new
@@ -87,11 +87,11 @@
* пререгрузку обработки сообщений валидации для ActiveRecord (если Rails загружен)
При инициализации:
* заменяется бэкэнд I18n со стандартного на собственный бекэнд Russian (@I18n::Backend::Advanced@)
-* _NB:_ локаль русского языка (@ru-RU@) становится локалью по умолчанию
+* _NB:_ локаль русского языка (@:'ru'@) становится локалью по умолчанию
* загружаются все файлы переводов, в том числе переводы для Rails.
После этого можно использовать все стандартные функции библиотеки I18n, пользоваться измененным функционалом для лучшей поддержки русского языка, или использовать хелперы модуля Russian для еще более простой работы с русским языком.
h2. Отличия от стандартной библиотеки I18n
@@ -123,11 +123,11 @@
<pre><code>
Russian.locale
Russian::LOCALE
</code></pre>
--- возвращает локаль русского языка (@:'ru-RU'@).
+-- возвращает локаль русского языка (@:'ru'@).
<pre><code>
Russian::i18n_backend_class
</code></pre>
@@ -180,10 +180,23 @@
=> "вещи"
</code></pre>
-- упрощенная (без использования хешей I18n) плюрализация для русского языка
+<pre><code>
+Russian::transliterate
+Russian::translit
+
+Russian.translit("рубин")
+=> "rubin"
+Russian.translit("Hallo Юлику Тарханову")
+=> "Hallo Yuliku Tarhanovu"
+</code></pre>
+
+-- транслитерация русских букв в строке.
+
+
h2. Ruby on Rails
h3. Переводы
При использовании с Ruby on Rails загружаются все стандартные переводы, и русский язык становится годным к использованию для локализации. В поставку включены все нужные переводы для ActionView, ActiveRecord, ActiveSupport, которые можно переопределять по необходимости стандартными средствами I18n.
@@ -195,11 +208,11 @@
В Russian включен плагин i18n_label, который подставляет в форм-хелпер @label@ перевод атрибута из таблицы переводов I18n. Например:
* в файле переводов:
<pre><code>
-ru-RU:
+ru:
activerecord:
attributes:
user:
name: "Имя"
</code></pre>
@@ -216,11 +229,10 @@
<pre><code>
<label for="user_name">Имя</label>
</code></pre>
-
h3. Валидация
Обработка ошибок в ActiveRecord перегружается -- в Russian включен популярный плагин custom_error_message, с помощью которого можно переопределять стандартное отображение сообщений об ошибках. Так, например,
@validates_acceptance_of :accepted_terms, :message => 'нужно принять соглашение'@
@@ -243,10 +255,34 @@
@Нужно принять соглашение@
_NB:_ в сообщениях валидации можно использовать такие макросы как @{{attribute}}@, @{{value}}@ -- подробнее см. документацию по I18n.
+h3. Параметризация строк
+
+Перегружается метод @parameterize@ инфлектора ActiveSupport (он же -- @String#parameterize@), теперь в нем идет транслитерация букв русского алфавита.
+
+Пример:
+
+<pre><code>
+class Person
+ def to_param
+ "#{id}-#{name.parameterize}"
+ end
+end
+
+@person = Person.find(1)
+# => #<Person id: 1, name: "Дональд Кнут">
+
+<%= link_to(@person.name, person_path %>
+# => <a href="/person/1-donald-knut">Дональд Кнут</a>
+</code></pre>
+
h1. Автор
Для сообщений об ошибках, обнаруженных неточностях и предложений:
Ярослав Маркин ("yaroslav@markin.net":mailto:yaroslav@markin.net)
+
+Огромное спасибо:
+
+Юлику Тарханову (me@julik.nl) за "rutils":http://rutils.rubyforge.org/