我需要在没有安装任何 rubygems 的情况下检测 Ruby 中的语言。Python 和 Perl 都将语言环境实用程序作为核心 API 的一部分。我想要类似的东西
# LC_ALL=cs_CZ ruby test.rb
Your language is: cs_CZ
Your currency is: CZK
谢谢
我需要在没有安装任何 rubygems 的情况下检测 Ruby 中的语言。Python 和 Perl 都将语言环境实用程序作为核心 API 的一部分。我想要类似的东西
# LC_ALL=cs_CZ ruby test.rb
Your language is: cs_CZ
Your currency is: CZK
谢谢
Rails 国际化 http://guides.rubyonrails.org/i18n.html
I18n.locale
此外,如果您想像这样设置默认值,请检查您的 application.rb 文件:
I18n.default_locale = [:en]
I18n.available_locales = [:en, :fr]
如果您无法访问任何 gem,包括 Rails,请查看 svenfuchs 是如何实现它的:https ://github.com/svenfuchs/i18n
快速提问:您知道您可以出售宝石并在不访问 rubygems 的情况下使用它们,对吗?
Does ENV["LANG"]
work for you?
由于这个问题是关于 Ruby 而不是关于 Ruby on Rails,所以我也需要,这是 Rails 之外的一些东西:
安装 rubygem 'locale'(在此处记录):
$ gem install locale
使用它:
require 'rubygems'
require 'locale'
Locale.current = 'whateverlocaleyouwant'
核心 Ruby 中似乎没有这样的功能。