2013-01-04 61 views
3

我正在爲一個非常具體的項目創建一個bash腳本,並且這些字符串必須是可翻譯的。如何告訴bash從自定義位置獲取gettext .mo文件?

我已經成功地遵循下面的教程:gettext的支持的bash腳本:
http://mywiki.wooledge.org/BashFAQ/098

然而,本教程的一部分,要求運行的msgfmt命令來生成每個語言編譯的.mo文件。爲了使它工作,我必須以root身份運行該命令,並將.mo文件保存在/ usr/share/locale /(lang)/ LC_MESSAGES下。

我想將.mo文件保存在相對於bash腳本的子目錄中,這很容易。 但是,當腳本運行時,bash必須知道必須在適當的自定義位置中查找.mo文件的內容。

如何實現這一目標?

我想要做的是讓整個項目與.pot和.mo文件一起自包含,並且能夠更新翻譯而不必使用sudo。

+0

看看在http:/ /stackoverflow.com/questions/14027030/bash-localization-wont-work-with-multilines-strings-with-strong-syntax-or-thro –

+0

Wh你有沒有試過?請過一些經過測試的代碼樣本和錯誤消息。 –

回答

1

你與環境變量發揮TEXTDOMAINDIR

也許你可以找到info頁的詳細信息比man頁:

info gettext 

info gettext 'Variable Index' 
+0

謝謝。這可能是。我會調查並報告。 – augustin

相關問題