【发布时间】:2013-01-04 08:41:53
【问题描述】:
我正在为一个非常具体的项目创建一个 bash 脚本,并且字符串必须是可翻译的。
我已经成功学习了以下教程:gettext support for bash scripts:
http://mywiki.wooledge.org/BashFAQ/098
但是,教程的一部分要求运行 msgfmt 命令来为每种语言生成已编译的 .mo 文件。为了使它工作,我必须以 root 身份运行命令,并且 .mo 文件保存在 /usr/share/locale/(lang)/LC_MESSAGES 下。
我希望将 .mo 文件保存在相对于 bash 脚本的子目录中,这很简单。 但是,当脚本运行时,bash 必须知道必须在适当的自定义位置查找 .mo 文件的内容。
如何做到这一点?
我想要做的是让整个项目,连同 .pot 和 .mo 文件,自包含并能够更新翻译而无需使用 sudo。
【问题讨论】:
-
你试过什么?请提供一些经过测试的代码示例和错误消息。