示例
開始翻譯的示例
以法語為例:
git pull cd webwml mkdir french cd french cp ../english/.wmlrc ../english/Make.* . echo 'include $(subst webwml/french,webwml/english,$(CURDIR))/Makefile' > Makefile mkdir po git add Make* .wmlrc cp Makefile po make -C po init-po git add po/Makefile po/*.fr.po
編輯 .wmlrc 文件並修改:
- 將 '-D CUR_LANG=English' 改為 '-D CUR_LANG=French'
- 將 '-D CUR_ISO_LANG=en' 改為 '-D CUR_ISO_LANG=fr'
- 將 '-D CUR_LOCALE=en_US' 改為 '-D CUR_LOCALE=fr_FR'
- 將 '-D CHARSET=iso-8859-1' 改為適當的值。
法語正好與英語使用相同的字符編碼,所以不需要修改,但是新語言很可能需要調整這個設置。
編輯 Make.lang 並將 'LANGUAGE := en' 改為 'LANGUAGE := fr'。如果您要翻譯的語言使用多字節字符集,您可能需要修改該文件中的其他一些變量,更多信息請閱讀 ../Makefile.common 以及其他工作示例(如中文翻譯)。
進入 french/po 目錄並翻譯 PO 文件中的條目。這應該是相當簡單的。
務必確保將 Makefile 複製到您翻譯的每個目錄中。這是必要的,因為程序 make 用於將 .wml 文件轉換為 HTML,而 make 需要使用 Makefile。
當您完成添加和編輯頁面時,在 webwml 目錄中執行:
git commit -m "Add your commit message here" git push現在您可以開始翻譯頁面了。
翻譯頁面的示例
以翻譯社會契約的法語版本為例:
cd webwml ./copypage.pl english/social_contract.wml cd french
這將自動添加 translation-check 標頭,指向被複制的原始文件的版本。如果缺失,它還會創建目標目錄和 Makefile。
編輯 social_contract.wml 並翻譯文本。不要嘗試翻譯任何鏈接或以任何方式修改它們 - 如果您想修改任何內容,請在 debian-www 列表中提出請求。完成後,輸入:
git add social_contract.wml git commit -m "Translated social contract to french" git push
添加新目錄的示例
此示例顯示法語翻譯添加 intro/ 目錄:
cd webwml/french mkdir intro cd intro cp ../Makefile . git add Makefile git commit -m "added the intro dir to git" git push確保新目錄有 Makefile 並且它已提交到 git。否則,運行 make 會給其他試圖使用的人帶來錯誤。
衝突的示例
此示例顯示了一個無法工作的提交,因為自您上次執行 git pull 以來,倉庫中的副本已被修改。
您對文件 foo.wml 進行了一些修改。然後:
git add foo.wml
git commit -m "fixed a broken link"
git push
將輸出:
To salsa.debian.org:webmaster-team/webwml.git ! [rejected] master -> master (fetch first) error: failed to push some refs to 'git@salsa.debian.org:webmaster-team/webwml.git'
或者類似的內容 :)
這意味著由於衝突,您的更改尚未推送到 git 倉庫。
您需要檢查出了什麼問題,解決衝突,然後再次嘗試提交/推送。
