2012-03-20 135 views
0

我正在爲大型PHP項目使用gettext。我已經成功設置了一切,輸入了幾種翻譯(用兩種語言)來測試翻譯是否正常工作並開始編碼。我不時甚至用poEdit更新了翻譯。poedit失敗,並顯示「更新目錄失敗」

現在,沒有明顯的原因,我得到的poEdit的這個錯誤,當我嘗試從源更新目錄:

Updating the catalog failed. Click on 'More>>' for details. 

當我點擊Details >>,我獲得詳細信息:

08:52:19: Entries in the catalog are probably incorrect. 
08:52:19: Updating the catalog failed. Click on 'More>>' for details. 

以下關於互聯網的建議我嘗試改變路徑(基本路徑和項目路徑),但無濟於事(沒有任何改變)。請注意,它沒有說任何關於找不到來源的信息 - 只是它失敗了。我也驗證了兩個.po文件:

msgfmt -o /dev/null -v -c messages.po 

我正在運行poEdit 1.4.2-5(在Debian上)。

任何想法,我可以得到一個詳細的錯誤信息? (或擺脫問題;?)

回答

4

我終於通過運行解決了這一問題:

find /path/to/project/ -name '*.php' -exec xgettext --from-code=UTF-8 -o messages.pot '{}' ';' 

然後我固定的錯誤信息(拒絕讀取子目錄),一切再次工作。希望它能幫助別人。

+0

面對完全相同的問題,但以上沒有幫助。 – 2016-04-02 10:18:31

+0

當然 - 這個答案並不能解決所有可能的問題,但它確實解決了我的問題。確保在解決問題時添加答案......;) – johndodo 2016-04-04 06:54:42

0

得到相同的錯誤後,我檢出了我的git repo的.pot文件的先前版本,並在更新目錄時使用它。

+0

反對票的原因是什麼? – AlanP 2017-12-06 11:30:20

0

我在Mac上使用PoEdit,並有同樣的問題。只是通過排除所有JS文件來修復它。在我的情況下,一些縮小的js文件導致錯誤。只是排除在外,這裏我們去..它的工作。也許它會有所幫助。