散列中使用多种语言的ruby语法错误

时间:2013-01-24 06:50:33

标签: ruby character-encoding syntax-error

以下哈希导致语法错误。我认为这是因为时髦的角色。

有什么方法可以解决这个问题?我正在使用macvim,以防万一。

  {
    :en => ['English',  'en_US'], 
    :es => ['español',  'es_MX'],
    :fr => ['français', 'fr_FR'],
    :de => ['Deutsch',  'de_DE'],
    :ru => ['русский',  'ru_RU'],
    :zh => ['中国的',   'zh_CN'],
    :ar => ['العربية',   'ar_AR'],
  }

2 个答案:

答案 0 :(得分:2)

如果这是Ruby 1.9,那么你可以设置魔术注释来告诉Ruby这是一个UTF8文件而不是ASCII:

How does the magic comment ( # Encoding: utf-8 ) in ruby​​ work?

答案 1 :(得分:0)

你总是可以逃避你的unicode值。

{
  :en => ['English',  'en_US'], 
  :es => ['espa\u00F1ol',  'es_MX'],
  :fr => ['fran\u00E7ais', 'fr_FR'],
  :de => ['Deutsch',  'de_DE'],
  :ru => ['\u0440\u0443\u0441\u0441\u043A\u0438\u0439',  'ru_RU'],
  :zh => ['\u4E2D\u56FD\u7684',   'zh_CN'],
  :ar => ['\u0627\u0644\u0639\u0631\u0628\u064A\u0629',   'ar_AR'],
}