xyzjr 发表于 2015-4-13 07:53:33

openstack dashboard的汉化

  openstack的dashboard在语言设置栏里有多种语言可选,虽然有简体中文选项,但是它的汉化基本没有完成。openstack的dashboard采用的是django架构。
  
  django 国际化的本质就是开发者对需要翻译的字符串进行标记,并对字符串进行相应的翻译。具体操作是:
  1、创建locale目录,
  2、然后django-admin.py makemessages -l zh_CN,生成locale/zh_CN/LC_MESSAGES/django.po 文件。在这个po文件里对英文进行翻译。
  
  不过对于openstack的dashboard,它已经有po文件了,我们只需直接编辑po文件就行了。
  我是用apt-get方式安装的,直接编辑/usr/share/pyshared/horizon/locale/zh_CN/LC_MESSAGES/django.po文件。
  



view plaincopy

[*]#: settings.py:136
[*]msgid "English"
[*]msgstr "英语"
[*]
[*]#: settings.py:137
[*]msgid "Italiano"
[*]msgstr ""
  
  
  po文件内容如上,msgid是源文件中出现的翻译字符串。msgstr 是相应语言的翻译结果。注意语句前后都有引号。 刚创建时 msgstr 是空字符串,需要翻译人员翻译。
  翻译好后,编译po文件,
  



viewplaincopy

[*]msgfmt --statistics --verbose -o django.mo django.po
  
  在po文件的目录下会生成一个同名的mo文件。然后在 /usr/lib/python2.7/dist-packages/horizon/locale/zh_CN/LC_MESSAGES下创建mo文件的软链接:
  



viewplaincopy

[*]cd /usr/lib/python2.7/dist-packages/horizon/locale/zh_CN/LC_MESSAGES   
[*]
[*]ln -s /usr/share/pyshared/horizon/locale/zh_CN/LC_MESSAGES/django.mo django.mo
  
重启apche2服务。就可以了。
页: [1]
查看完整版本: openstack dashboard的汉化