Project

i81n

0.0
No commit activity in last 3 years
No release in over 3 years
I81n aims that make I18n easy to use.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

Runtime

>= 0
 Project Readme

i81n

I81n is 'Internationalizaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaation'.

I18n の YAML ファイルを編集するのって面倒ですよね! I81n を使うと(とりあえずは) YAML ファイルに翻訳テキストを書かなくても良くなります!

インストール

次のようにして gem コマンドでインストールすることができます。

gem install i81n

Rails をお使いの際は Gemfile に以下を追記して bundle install を実行してください。

gem 'i81n'

I18n.backend を以下のように設定してください(Rails では config/initializers/i81n.rb 等に書いておくとよいでしょう)。

I18n.backend = I18n::Backend::I81n.new(
  :ignore => /^(helpers\.|activerecord\.|attributes\.|errors\.)/
)

使い方

Rails のビューにメッセージを埋め込む場合、こんな感じで書けます。

<%= t('こんにちは!') %>

サービスを英語対応させたくなった時に翻訳ファイル(en.yml)を書けばいいのです。 その際、翻訳ファイルは以下のようになるでしょう。

en:
  "こんにちは!": "Hello!"

もうちょっと詳しく

以下のような YAML ファイル(ja.yml)があった場合、

---
ja:
  foo: フー

このような出力になります。

require 'i81n'
I18n.backend = I18n::Backend::I81n.new
I18n.config.locale = :ja
I18n.t('foo') #=> 'フー'
I18n.t('バー') #=> 'バー'
I18n.t('%{n}個', :n => 10) #=> '10個'

詳細

I18n は I18n::Backend::Simple を拡張することによって上記の機能を実現しています。

コピーライト

Copyright (c) 2011 jugyo. See LICENSE.txt for further details.