README
上传用户:netsea168
上传日期:2022-07-22
资源大小:4652k
文件大小:2k
- = Localization Plugin for Rails
- This plugin provides a simple, gettext-like method to
- provide localizations.
- == Features
- * Any number of languages or locales
- * Simple method to defines singluar/plural translations
- * Can use lambdas to provide Ruby-code based dynamic translations
- * Customizable for different instances of the application
- == Usage
- If the localization plugin is installed, it is used automatically.
- You need to create a /lang dir in your RAILS_ROOT.
- The recommended way to use it is to create files that are named
- like the languages you define in them (but you can put everything in
- one big file too.)
- For instance-customizable strings, add overrides in files you
- put in /lang/custom.
- === Simple example:
- Create a file /lang/translations.rb:
-
- Localization.define('de') do |l|
- l.store 'yes', 'Ja'
- l.store 'no', 'Nein'
- end
-
- Localization.define('fr') do |l|
- l.store 'yes', 'oui'
- l.store 'no', 'non'
- end
-
- In your controller or application.rb:
- Localization.lang = 'de' # or 'fr'
-
- In your view:
- <%=_ 'yes' %>
- <%=_ 'no' %>
-
- Because the _ method is simply an extension to Object, you
- can use it anywhere (models/controllers/views/libs).
-
- === Extended example:
- Create a file /lang/default.rb with following contents:
-
- Localization.define do |l|
- l.store '(time)', lambda { |t| t.strftime('%I:%M%p') }
- end
- Create a file /lang/de_DE.rb with following contents:
-
- Localization.define('de_DE') do |l|
- l.store '%d entries', ['Ein Eintrag', '%d Einträge']
- l.store '(time)', lambda { |t| t.strftime('%H:%M') }
- end
-
- In your controller or application.rb:
-
- Localization.lang = 'de_DE'
- In your view:
- <%=_ '%d entries', 1 %> # singular variant is chosen
- <%=_ '%d entries', 4 %> # plural variant is chosen
- <%=_ '(time)', Time.now %> # call the block with a parameter
-
- == Translation file guesstimation
- You can generate a guesstimation of all strings needed to be
- translated in your views by first adding the _('blah') syntax
- everywhere and then calling:
- puts Localization.generate_l10n_file
-
- in the Rails console.