translatewiki.net 語言
支援的語言
translatewiki.net 是由軟體開發者與翻譯人員組成的社群。在此支援的語言皆啟用本地化,並且各語言入口網頁至少有註冊一名翻譯人員。支援語言清單另外在其入口網頁上列出自願翻譯該語言的翻譯人員。您可以透過語系來查看受支援語言的分布圖。目前沒有列出翻譯人員的語言,可以在「還沒有翻譯人員的語言」這個分類裡找出。
語言變體
可在以下情況啟用語言變體:
啟用翻譯成某語言的方針
目前我們在 translatewiki.net 上接受進行新語言本地化的方針是:
- 該語言需列在國際標準化組織發布的最新標準中(ISO 639-3)。
- 該語言可以使用 Unicode 編寫。
- 至少有一名具備母語或是熟練程度的人願意將內容翻譯成該語言。
- 是仍被使用且通用的語言。
舊語言與代碼
在採用新語言的接受方針之前,translatewiki.net(以及維基百科)上已經啟用了多種語言。其中一些語言在現行方針之下雖不被接受,但仍維持啟用狀態並可繼續本地化。很少會有禁用某些語言的情況,除非像是《星艦迷航記》的克林貢語,在這種特例下,特殊頁面就不適用於該語言並視為無效。
然而,即使是已支援的語言也不一定內容全面:翻譯需要匯出,並由目標專案啟用。例如,只有已翻譯核心介面的大部分內容時,語言才會匯出到 MediaWiki。此外,某些語言在等待問題修正之前,或是不再被認為是有用的語言,就不再匯出。例如托斯克方言與阿勒曼尼語維基百科剛好使用同一語言代碼「als」,與阿勒曼尼語實際的代碼「gsw」衝突。
translatewiki.net 被發起用來支援 MediaWiki 的本地化。不過目前情況是大多數在 translatewiki.net 上啟用的語言,在維基媒體上也有專案。
如果在 ISO 639-3 標準中列為 3 個字母代碼的語言,在 ISO 639-1 清單裡是 2 個字母代碼,那麼在此是將 2 個字母代碼作為首選代碼。有時在 ISO 639-3 代碼清單做出的變動,代表著需要更改此處的代碼,然後將舊的代碼停用。過去對於 translatewiki.net 和 ISO 代碼的更改,還出現過一些異常代碼。
在 translatewiki.net 上啟用新語言的本地化
假設您想為代碼是 zxx 的語言啟動一個新的在地化專案,請您在支援頁面上請求。您需要提供以下資訊:
- 來自 ISO 639-3 或是 Ethnologue 網站的語言代碼(例如 [de] 代表德語)
- 請注意:Ethnologue 網站目前僅允許有限的免費查看內容,需要訂閱才能獲得更詳細的資訊。
- 另外一個不錯的參考網站是透過 ISO 639 連結的 Glottolog.org,這允許搜尋語言,以及取得關於方言、分類、語言使用者估計數量、按國家區分的位置資訊,還可列出各種語言中已知的眾多同義詞或近似名稱。另外請注意 Glottolog 涵蓋的語言比 ISO 639 更多,因此一些語言是使用本地代碼而非 ISO 639 代碼:出自於這些語言仍然不是 ISO 639 的一部分,因為缺乏相關學術研究來證明其語言在 ISO 639 標準化(雖有相關的資訊來源,但可能有已過時、包含歷史錯誤、作者之間相互矛盾的觀點)。Glottolog 網站內容是基於著名「語言學家名單」的研究和報告,並定期更新。網站還包含舊語言代碼的簿記紀錄,這些紀錄已被近期搜尋或是 ISO 639 中較新且較明確的編碼給棄用。
- 該語言在英語及其母語的名稱(例如德語是「German – Deutsch」)
- 該語言是從右到左還是從左到右書寫?
- 如果該語言通常以多種書寫方式來編寫,請說明應在何種書寫中啟用該語言。當其他變體有翻譯者自願時,可以啟用該變體。
- 對 MediaWiki 來說,該語言是否應改採用英語以外的另一種備援語言?如果有的話是哪個?
您可以透過建立語言入口頁面來輸入此語言資訊:
- 發起語言代碼為 [zxx] 的頁面 Portal:zxx。
- 然後輸入具有您的語言所需參數的模板
{{Portal}}
,請參閱以下範例:芬蘭文(fi)和贛語(gan)。
如果您也希望翻譯該語言:
- 在translatewiki.net建立帳號。
- 在Support申請翻譯權限。
- 在編輯您的使用者偏好設定時,設定所要查看特定訊息翻譯內容的輔助語言。
- 在該語言入口頁面的翻譯人員段落裡,輸入您的使用者名稱。
如果您沒打算自己翻譯,請說明要如何獲得支援,或是計劃如何招募翻譯人員。一般的情況是,至少要有一名使用者在該語言入口頁面底端的翻譯人員段落裡填寫好名稱後,才能開始進行該語言的翻譯。
開發人員
開發人員必須更改以下檔案才能在 translatewiki.net 提供可翻譯的語言:
- 在jquery.uls GitHub版本庫裡的檔案「data/langdb.yaml」必須包含該語言。您需要了解該語言的書寫文字、本語名稱,以及使用該語言的各大洲。
- 該檔案改好後,請執行「ulsdata2json.php」來產生資料庫檔案,接著提交上傳請求到 Github 上。可參考澳洲的努加語提交範例。
- 當合併好上傳到 GitHub 請求後,透過執行「scripts/update-jquery-uls.sh」來更新 MediaWiki 的通用語言選擇器(UniversalLanguageSelector)擴充功能,並向 Gerrit 提交修補內容。請參閱包含努加語的範例。
- 更新在 translatewiki.net Gerrit 存儲庫裡的檔案「LanguageSettings.php」。 請參閱添加努加語的範例。
合併上述所有修補內容後,具有 shell 存取權限的管理人員必須在 translatewiki.net 正式環境伺服器上更新伺服器組態,以及通用語言選擇器擴充功能。
本地化translatewiki.net尚未啟用的語言
如果您想要本地化一種不符合 translatewiki.net 資格的語言,那麼您可以選擇架設一個新的 wiki,將該語言的代碼設定成主要語言。
匯出閾值
每個專案都有設定自己的匯出閾值,這是匯出到該專案之前,需完成本地化程度的最低標準。匯出閾值的備註位於個別專案頁面。
語言名稱
語言本語名稱(語言以自己語言的命名)與本地化語言名稱通常不會在 translatewiki.net 上設定。取代的是,通常是從通用當地資料儲存庫(Common Locale Data Repository,簡稱 CLDR)裡的語言名稱資料庫中取出的。這些資料會透過 MediaWiki 的 CLDR 擴充功能匯入,會在 CLDR 釋出新內容時更新。Translatewiki.net 與維基媒體網站等都有使用 CLDR 擴充。
如果語言名稱尚未在 CLDR 上翻譯成您的語言,則 CLDR 資料檔案會包含在 CLDR 中使用在您語言的後備語言其名稱,請參閱這篇關於索布語的討論串。
如果 CLDR 還沒有您的語言的在地化設定,那麼您可以在 CLDR 上請求,以讓其他網站與程式可以提供您的語言介面。然而,如果您無法取得添加到 CLDR 的在地化設定,或是 CLDR 不支援您想要翻譯的語言名稱,您可以在 translatewiki.net 上的Support頁面,請求對 translatewiki.net 和 MediaWiki 的語言名稱支援。
另外如果語言本語名稱有錯誤,請在Support頁面上報告此問題,以便在 MediaWiki CLDR 擴充功能資料庫中輸入正確名稱,來覆蓋由 CLDR 提供的名稱。如果翻譯的語言名稱(包括英文名稱)有任何遺漏或是錯誤,請向 CLDR 提交正確的資訊。
在 translatewiki.net 上其他本地化專案不一定需要使用 CLDR 擴充功能中的資料庫,您可能需要直接接觸該專案來本地化那裡的語言名稱。
備援語言(MediaWiki)
- 參閱常見問題中的「何謂備援語言?」。
在編輯特定訊息時,translatewiki.net 一律顯示訊息的英文來源內容。您可以藉由在您的使用者偏好設定裡列出輔助語言,讓您在編輯時能用別的語言來查看訊息。
後備語言使用在其他 wiki 上的 MediaWiki 介面。當 wiki 主要(站台)語言的翻譯不存在 Special:Translations 頁面時,該訊息會以後備語言顯示。
建立後備語言鏈能讓後備語言也可以有自己的後備語言。所有語言都會採用英語作為預設後備語言。如果某個訊息尚未翻譯成站台的主要語言、或是第一優先後備語言時,就會採用下一種後備語言顯示。依此步驟類推,最後會顯示成英語。
沒有英文版本的 MediaWiki 訊息極為少見。通常這會指向成未檢測到的程式錯誤,最常見情況是訊息名稱裡有錯誤的輸入內容。不存在的訊息顯示時會將訊息名稱列在尖括號之間,例如:⧼message_name⧽。
後備語言是在 translatewiki.net 上請求並提交給 MediaWiki,通常作為語言初始化啟用的一部分,如有需要也可以事後再請求。如果您想更改後備語言定義,請在 Wikimedia Phabricator 提出請求。此表格列出 MediaWiki 上的後備語言。
當有另一種語言對於目標語言的使用者來說,是比英語更熟悉的語言時,後備語言就很有用。尤其在後備語言和目標語言是共用相同的非拉丁字母或領域時特別有用。
若有可替代的後備語言(例如:有某種較少使用到的語言遍布於多個國家裡),可以提出來讓 translatewiki.net 維護人員依據自己的判斷,來指定提供為最有可能是該語言潛在 wiki 讀者群的後備語言。如果可行的話,能讓後備語言與目標語言使用相同字母。
截至 2011 年,所有後備語言都會在代碼裡明確列出,而不是藉由後備語言自己的後備來做隱含定義。因此即使語言 B 不會跳到後備語言 C,在技術上也可以有一條後備語言鏈可以讓 A → B → C。
在 Wikimedia Phabricator 上有一份很棒的提議,是讓已登入使用者可以根據自己的偏好來設定後備語言。
本地化translatewiki.net
目前,translatewiki.net 的來源訊息只有一種語言,也就是英語。用其他語言編寫的軟體,需要先翻譯成英語才能在此處進行本地化。或者是使用 translatewiki.net 軟體來在不同站台進行本地化,前提是站台語言需要與原始軟體語言相同。
專案和說明頁面的一些內容,也可以使用翻譯擴充功能來進行翻譯。