SlideShare a Scribd company logo
1 of 7
Download to read offline
Translation of The FreeBSD Documentation
FreeBSD 文件翻譯計劃
Ruey-Cherng Yu
raycherng@gmail.com
2016.7.30
摘要 Abstract
自己的文件自己翻!
FreeBSD 的一個特色就是擁有許多高品質的技術文件,還有一個嚴謹有組織的文件團隊,但是這些文件
的最新版都是英文版的,大部分現有的正體中文翻譯已經是八年前的資料,甚少參考利用的價值,以致
於這些高品質文件在台灣的使用者間曝光度有限,非常可惜。
去年八月,FreeBSD 文件計畫改用 GNU gettext 翻譯系統,使得翻譯文件的流程更加便利。本次講題
將簡介 FreeBSD 文件計畫,翻譯流程,以及正體中文翻譯計畫的現況,希望能喚起大家的熱情,參與
正體中文翻譯計畫,讓更多的台灣使用者受益。
FreeBSD 文件計畫
FreeBSD 的一個特色就是擁有許多高品質的技術文件。這些文件分成三大類:
1.書籍和文章 (books and articles)
2.網站
3.manual pages
書籍和文章是用 Docbook 標記語言所寫,書籍部份,內容最多,最知名重要的就是 FreeBSD 手冊
( FreeBSD Handbook ),已經被翻譯成超過 20 種語言。其他還有 Porter 手冊,文件計劃入門書,開發
者手冊,FAQ 等。
Manual pages 的格式是 mdoc,除了英文以外,目前只有日文翻譯。
網站大部份是 XSLT,有些網頁是 CGI 產生的,還有部份網頁是直接以 HTML 寫成。從官方網站首頁
右上方,有八種語言的網頁連結,目前沒有繁體中文。
本文主要是說明書籍和文章類的繁體中文翻譯。
為什麼要有繁體中文翻譯?
中文翻譯的 FreeBSD 文件可以降低大家接觸和進入 FreeBSD 的門檻,讓更多不同程度的使用者都能
接觸到這個優秀的作業系統,這樣對有興趣的使用者有利,也對 FreeBSD 計劃有利,能創造雙贏。
現在愈來愈多人可以讀得懂簡體中文,為何不從簡體中文版文件,直接簡轉繁呢?因為簡體中文的用詞
還是有許多和台灣慣用語有很大的差異,例如:
高端 智能 優化 高清 編程 創客
以上的詞彙是用繁體中文寫的,您看得懂嗎?您可能愈來愈看得懂了,甚至覺得理所當然,因為我們自
己的用詞已經漸漸被取代了。
以下是台灣的用詞:
高階 智慧型 最佳化 高解析度 程式設計 自造者
語言本來就會常常受到不同面向的影響而改變,只是如果台灣本來就有自己的用語,甚至某些辭彙的中
文翻譯最早就是由台灣所翻譯的,那只要我們能夠積極地將文件翻譯成繁體中文,並且使用台灣的辭彙,
就能夠繼續保有我們本土的特色與文化。香港有一群不會電腦的大叔們甚至努力學會使用造字軟體,希
望保有香港本土的特有字體呢!
FreeBSD 文件也有簡體中文的版本,可能會有人建議像維基百科的翻譯作法一樣,用共同的中文翻譯,
再把中國和台灣不同的用詞用台灣的辭彙替換掉。但是簡體中文版也是和英文版的文件的進度有許多落
差,所以除了用詞問題,簡體轉繁體仍然有不可行之處。如果您願意的話,參考簡體中文文件,並對照
英文版最新的原文,將他翻譯成繁體中文版,那倒是個可行的辦法。
再舉個例子,”FreeBSD 操作系統與服務器優化”,您看的習慣嗎? 不習慣的話,加入我們吧!
FreeBSD 文件翻譯的工具書
FreeBSD 文件計劃入門書:
http://www.freebsd.org/doc/zh_TW/books/fdp-primer/
對於整個 FDP 的說明非常詳盡,不懂的就去那裡查詢吧。
文件翻譯工具鏈
使用 port 安裝 textproc/docproj/ 和 devel/gettext-tools/或是安裝套件:
# pkg install docproj gettext-tools
取得 doc/tree
% svn checkout https://svn.FreeBSD.org/doc/head ~/doc
將 FreeBSD 文件抓到家目錄下的 doc 目錄,可以看到 doc 目錄的內容如下:
每個目錄的命名方式是依照 『語言代碼_國碼.編碼』,因此繁體中文的文件是位於 zh_TW.UTF-8。
~/doc/zh_TW.UTF-8 目錄內有:
articles
books
htdocs
Makefile
Makefile.inc
share
articles 和 books 底下又有子目錄,每個子目錄都是不同的文章和書籍。
FreeBSD 文件的翻譯方法
原先的 FreeBSD 文件 (書籍與文章) 翻譯方法是直接打開英文版的 xml 檔案,把英文的文件內容直接翻
譯成中文,然後要注意中英文版本號的對應,並且要小心檔案中的 xml tag ,不要不小心修改或是翻譯
了這些 tag,作法如圖。這樣的作法會造成翻譯者的困擾,沒辦法專心在翻譯文件內容本身。
舊方法除了麻煩和容易出錯外,最大的問題是無法和英文版的進度同步,要檢查英文版是否已經再度修
訂過,是否中文翻譯要重新翻譯,要花很多心力比對。
還好 2015 年 8 月,在 FreeBSD 文件計劃工程團隊的努力下,改用 GNU gettext 翻譯系統,原文內容
會被摘取到一個 PO 檔,翻譯者只要用 PO 檔編輯器,打開 PO 檔,就可以專心翻譯了,不用直接處理
xml 檔。
現在的翻譯流程是:
1.找出您要翻譯的書或是文章,位於 doc/head/zh_TW.UTF-8/,books 子目錄是書籍,articles 子目錄
是文章。htdocs 是網站內容,不在本文討論範圍。翻譯前,請先問問看是否有其他人正在翻譯您想翻譯
的部份,以免重複打造輪子,讓您做了白工。
2. 建立新目錄,修改 Makefile:
看他有沒有 PO 檔,檔名會是 zh_TW.po。如果沒有 PO 檔,表示該文章目前還是使用舊翻譯方法,
那就需要先修改 Makefile,然後產生 PO 檔。
以翻譯 leap-second 文章為例,要在繁體中文的目錄建立 leap-second 子目錄,然後把英文版的
Makefile 複製過來。
% cd ~/doc/zh_TW.UTF-8/articles/
% svn mkdir leap-seconds
% svn cp ~/doc/en_US.ISO8859-1/articles/leap-seconds/Makefile ~/doc/zh_TW.UTF-8/articles/leap-
seconds/
因為 articles 的檔案結構比較單純,不需要修改 Makefile。如果是 books 類,就要修改 Makefile,將其
中的 SRCS 修改成只產生一個 book.xml:
SRCS= book.xml。
3. make po :
如果已經有 PO 檔的話,您可以執行 make po 指令,讓 PO 檔更新與英文版同步,接著就用 PO
檔編輯器,打開 PO 檔,開始翻譯!
4. make tran:
翻譯完成後,執行 make tran,產生 article.xml。可以再執行 make FORMATS=html,產生
html 檔,用瀏覽器來檢視翻譯成果。
5. Submit:
• 將 Makefile、article.xml、zh_TW.po 加入版本控制系統:
% svn add Makefile article.xml zh_TW.po
A         Makefile
A         article.xml
A         zh_TW.po
• 設定 svn:keywords property FreeBSD=%H,讓 $FreeBSD$ 可以被版本控制系統展開替換。
% svn propset svn:keywords FreeBSD=%H Makefile article.xml zh_TW.po
property 'svn:keywords' set on 'Makefile'
property 'svn:keywords' set on 'article.xml'
property 'svn:keywords' set on 'zh_TW.po'
• 設定 MIME type、UTF-8 character set 和 fbsd:notbinary,才不會讓版本控制系統將檔案誤認為二
進位檔。
% svn propset svn:mime-type 'text/x-gettext-translation; charset=UTF-8' zh_TW.po
property 'svn:mime­type' set on 'zh_TW.po'
% svn propset fbsd:notbinary yes zh_TW.po
property 'fbsd:notbinary' set on 'zh_TW.po'
% svn propset svn:mime-type 'text/xml; charset=UTF-8' article.xml
property 'svn:mime­type' set on 'article.xml'
% svn propset fbsd:notbinary yes article.xml
property 'fbsd:notbinary' set on 'article.xml'
• 建立 diff 檔
% cd ~/doc
% svn diff zh_TW.UTF-8/articles/leap-seconds > /tmp/leap-seconds.diff
提交您翻譯好的 PO 檔。目前官方尚未有一個翻譯伺服器可以讓貢獻者提交或是翻譯協作 PO 檔,doc 工
程團隊有這樣的想法和計劃,但是還在討論中。所以提交的管道目前有:
a. 官方的 Bugzilla bug report 系統。
b. https://reviews.freebsd.org/ 網站,請註冊一個帳號來提交,不過目前台灣沒有 active doc
committer ,所以 reviewer 只能 tag 台灣的 src/port committer。
c. Email 給我,我幫您提交也可以。
因為 FreeBSD 文件計劃才剛開始用 GNU gettext 系統,目前各語言的翻譯幾乎都尚未轉換成 PO 檔翻
譯,書籍部份目前只有西班牙文的 FAQ 和繁體中文的 Porter 手冊已轉換使用 PO 檔翻譯,所以尚未使
用 PO 翻譯的文件,需要經過一個轉換的步驟。
PO 檔編輯軟體
1.Poedit
非常廣泛使用的 PO 檔編輯軟體,用 wxWidget 寫的,因此可以跨平台,橫跨所有 Windows 平
台,XP/vista/7/8/10 都可以用,好吧,不開玩笑了,Mac OS X,Linux 和 FreeBSD 也都可以用。
2.Lokalize
KDE 計劃旗下的 PO 檔編輯軟體,在 FreeBSD 和 Ubuntu 使用沒有問題,不過他是 Qt 的程式,
如果你是使用 gcin 或是 HIME 中文輸入,在 Ubuntu 16.10 以後,Qt 5 的程式完全無法用 gcin 做中文
輸入,短時間內也沒有解決跡象。如果你用別的輸入法框架,可能就不會有這個問題。可以自定義快捷
鍵
3.gTranslator
GNOME 計劃旗下的 PO 檔編輯軟體,在 FreeBSD 和 Ubuntu 使用沒有問題,但是他的將原訊
息複製到翻譯內容這個功能的快捷鍵是 Crtl-space,和 gcin 切換中英文輸入法的快捷鍵衝突,而且他無
法自訂快捷鍵,這是一大缺點。
4.gted
http://www.gted.org/
他是 Eclipse 的 plugin,如果有用 Eclipse 的人,可以試看看,沒用 Eclipse 的話,為了編輯 PO 檔而安
裝,就有點太龐大了。
5.Virtaal
也是一個跨平台的 PO 檔編輯軟體,python 寫的,Windows,Mac OS X 和 Linux 都可以執行。
6.Vi/Vim ( po.vim )
直接在 Vi/Vim 編輯 PO 檔也是可以的,如果你就是用 Vi/Vim 編輯 PO 檔,有個受到 Emacs
PO mode 啟發的 plugin 叫 po.vim,也可以試用看看。
7.GNU Emacs ( PO mode )
什麼都可以做的 GNU Emacs 當然有支援編輯自家的 GNU gettext PO 檔囉,有個 PO mode 專
門讓你編輯 PO 檔更順手。
以上提到的 PO 檔編輯器遇到的問題,很有可能隨著版本的演進已經有人將 bug 修好了,所以
您可以嘗試使用看看,不一定會遇到我寫本文章時所遇到的問題。
許多 open source project 有用 translation server 來進行線上的 PO 檔翻譯協作,FreeBSD doc
team 尚在討論架設 translation server 的問題,所以現階段是沒有 translation server 可以使用,因此多
人協作翻譯同一個 PO 檔還需要協調一下每個人要翻譯的部份。
目前台灣的 FreeBSD 文件翻譯進度:
books 類:
1. Handbook 正在轉換到 PO 檔翻譯,感謝 cwlin 兄完成這浩大的工程。
2. Porter's handbook,已經轉換到 PO 檔翻譯,已翻譯內容,應該符合英文版這半年來的進度,但未翻
譯的部份還很多,需要您的協助。
3. FDP primer,已經轉換到 PO 檔翻譯,已翻譯內容,應該符合英文版這半年來的進度,但未翻譯的部
份還很多,需要您的協助。
4.FreeBSD Developers' Handbook 尚未轉換到 PO 檔翻譯,內容為 2007 年以前的舊資料,全部都待
翻譯。
5. FAQ 尚未轉換到 PO 檔翻譯,因內容年久失修,連結已經被拿掉了,待整理與翻譯。
article 類:
1. 只有 leap-second 使用 PO 檔翻譯,這是當初翻譯系統轉換到 PO 檔翻譯的練習範例。
翻譯注意事項
• 保留 XML tag 不要翻譯,例如這個 NTP 請不要翻譯:
If <acronym>NTP</acronym> is not being used
• 保留字串前後的空白
• 有 PGP key 的文章不要翻譯,這些 PGP key 是 script 產生的,不是手動輸入的,doc team 還在研究
如何處理這些文章的翻譯問題。
• $FreeBSD$ 字串要特別處理,要將金錢符號替換為&dollar,以免這個字串會被版本控制系統展開
替換:
&dollar;FreeBSD&dollar;
每個單字的字義都要翻譯到嗎?:
不需要逐字翻譯,只要中文能表達使用方法及步驟即可,刪去一些英文字或改變順序沒關係。因為中英
文語法不同,如果每個字都翻譯會變很怪。
謝文珊,實踐大學應用英語系助理教授
每個單字的字義都要翻譯到嗎?:
通常對具體事務、概念、或學理的翻譯,原文就好像油畫,譯者要把這油畫畫成水彩畫,然後讀者還看
得出來原作者要說些甚麼。
從具體物,變成油畫,再轉成水彩,一定有誤差,但重點是讀者是否能從水彩想回去原物。
整個原作要全部熟讀完之後,再來翻譯的工作嗎?:
我一般是一章大略讀一次,然後一段一段譯。當然,技術上是一句一句譯。不過一整段的內容要先有個
頭緒再下筆比較能用詞準確。
遇到真的不懂的怎麼辦?:
google、或是詢問原作者。
碰到無處可問的時候,只好打安全牌,弄個比較不會錯的譯法,然後附上原文。
林茂昌,知名財經、翻譯作家
參考資料
• https://theinitium.com/article/20160410-changemaker-font/
• FreeBSD 文件計劃入門書
• http://wonkity.com/~wblock/translation/,wblock
• FreeBSD 中文文件計劃,chinsan, COSCUP 2007

More Related Content

Viewers also liked (8)

ROSALYN VISMONTE CV
ROSALYN VISMONTE CVROSALYN VISMONTE CV
ROSALYN VISMONTE CV
 
Pers argenton oude_13-08-16
Pers argenton oude_13-08-16Pers argenton oude_13-08-16
Pers argenton oude_13-08-16
 
La familia milena alcivar argandoña
La familia milena alcivar argandoñaLa familia milena alcivar argandoña
La familia milena alcivar argandoña
 
1er & 2ème National Agen 2016
1er & 2ème National Agen 20161er & 2ème National Agen 2016
1er & 2ème National Agen 2016
 
Amy Ayres 20150815
Amy Ayres 20150815Amy Ayres 20150815
Amy Ayres 20150815
 
Three littlepigs
Three littlepigsThree littlepigs
Three littlepigs
 
All About Myself
All About MyselfAll About Myself
All About Myself
 
APRENDIZAJE AUTONOMO Y SIGNIFICATIVO
APRENDIZAJE AUTONOMO Y SIGNIFICATIVOAPRENDIZAJE AUTONOMO Y SIGNIFICATIVO
APRENDIZAJE AUTONOMO Y SIGNIFICATIVO
 

Similar to FreeBSD documentation translation (7)

Build Your Own Android Toolchain from scratch
Build Your Own Android Toolchain from scratchBuild Your Own Android Toolchain from scratch
Build Your Own Android Toolchain from scratch
 
Uboot starts analysis
Uboot starts analysisUboot starts analysis
Uboot starts analysis
 
Subversion
SubversionSubversion
Subversion
 
Git介绍
Git介绍Git介绍
Git介绍
 
Translation Process for SUMO New Website (zh_TW) 2012/05
Translation Process for SUMO New Website (zh_TW) 2012/05Translation Process for SUMO New Website (zh_TW) 2012/05
Translation Process for SUMO New Website (zh_TW) 2012/05
 
Sitcon 2016 我的自由軟體之路
Sitcon 2016 我的自由軟體之路Sitcon 2016 我的自由軟體之路
Sitcon 2016 我的自由軟體之路
 
Python summary
Python summaryPython summary
Python summary
 

Recently uploaded

chat gpt账号购买👉top233.com👈chat gpt账号批发购买
chat gpt账号购买👉top233.com👈chat gpt账号批发购买chat gpt账号购买👉top233.com👈chat gpt账号批发购买
chat gpt账号购买👉top233.com👈chat gpt账号批发购买
larondahannae1n
 
谷歌留痕技术教程【推广网址☆seotg8.com】谷歌留痕教学
谷歌留痕技术教程【推广网址☆seotg8.com】谷歌留痕教学谷歌留痕技术教程【推广网址☆seotg8.com】谷歌留痕教学
谷歌留痕技术教程【推广网址☆seotg8.com】谷歌留痕教学
pingbizh
 

Recently uploaded (20)

chat gpt账号购买👉top233.com👈chat gpt账号批发购买
chat gpt账号购买👉top233.com👈chat gpt账号批发购买chat gpt账号购买👉top233.com👈chat gpt账号批发购买
chat gpt账号购买👉top233.com👈chat gpt账号批发购买
 
如何买卖迷药价格【网址☆THC88.com】如何买迷药
如何买卖迷药价格【网址☆THC88.com】如何买迷药如何买卖迷药价格【网址☆THC88.com】如何买迷药
如何买卖迷药价格【网址☆THC88.com】如何买迷药
 
迷奸药制作方法【网址☆THC88.com】迷奸药制作方法是什么
迷奸药制作方法【网址☆THC88.com】迷奸药制作方法是什么迷奸药制作方法【网址☆THC88.com】迷奸药制作方法是什么
迷奸药制作方法【网址☆THC88.com】迷奸药制作方法是什么
 
黑桃A资源【破解版下载:K782.com】☆☆☆官网下载☆☆☆韩漫破解版app最新下载地址
黑桃A资源【破解版下载:K782.com】☆☆☆官网下载☆☆☆韩漫破解版app最新下载地址黑桃A资源【破解版下载:K782.com】☆☆☆官网下载☆☆☆韩漫破解版app最新下载地址
黑桃A资源【破解版下载:K782.com】☆☆☆官网下载☆☆☆韩漫破解版app最新下载地址
 
国产真实幼女迷奸视频【破解版下载:K782.com】☆☆☆官网下载☆☆☆小马视频破解版app最新下载地址
国产真实幼女迷奸视频【破解版下载:K782.com】☆☆☆官网下载☆☆☆小马视频破解版app最新下载地址国产真实幼女迷奸视频【破解版下载:K782.com】☆☆☆官网下载☆☆☆小马视频破解版app最新下载地址
国产真实幼女迷奸视频【破解版下载:K782.com】☆☆☆官网下载☆☆☆小马视频破解版app最新下载地址
 
谷歌留痕技术教程【推广网址☆seotg8.com】谷歌留痕教学
谷歌留痕技术教程【推广网址☆seotg8.com】谷歌留痕教学谷歌留痕技术教程【推广网址☆seotg8.com】谷歌留痕教学
谷歌留痕技术教程【推广网址☆seotg8.com】谷歌留痕教学
 
做爱药购买【购买网站: ghb3.com☆】 药 王 网上 药物 商城,迷药,春药,乖乖水,ghb购买
做爱药购买【购买网站:  ghb3.com☆】 药 王 网上 药物 商城,迷药,春药,乖乖水,ghb购买做爱药购买【购买网站:  ghb3.com☆】 药 王 网上 药物 商城,迷药,春药,乖乖水,ghb购买
做爱药购买【购买网站: ghb3.com☆】 药 王 网上 药物 商城,迷药,春药,乖乖水,ghb购买
 
uu短视频【破解版下载:K782.com】☆☆☆官网下载☆☆☆抖音网红资源破解版app最新下载地址
uu短视频【破解版下载:K782.com】☆☆☆官网下载☆☆☆抖音网红资源破解版app最新下载地址uu短视频【破解版下载:K782.com】☆☆☆官网下载☆☆☆抖音网红资源破解版app最新下载地址
uu短视频【破解版下载:K782.com】☆☆☆官网下载☆☆☆抖音网红资源破解版app最新下载地址
 
媚药哪里能买到【网址☆THC88.com】媚药如何购买
媚药哪里能买到【网址☆THC88.com】媚药如何购买媚药哪里能买到【网址☆THC88.com】媚药如何购买
媚药哪里能买到【网址☆THC88.com】媚药如何购买
 
上海同城上门品茶【选妞网址☆qmm123.com】上海同城上门特殊服务
上海同城上门品茶【选妞网址☆qmm123.com】上海同城上门特殊服务上海同城上门品茶【选妞网址☆qmm123.com】上海同城上门特殊服务
上海同城上门品茶【选妞网址☆qmm123.com】上海同城上门特殊服务
 
杏用社【破解版下载:K782.com】☆☆☆官网下载☆☆☆小妲己直播破解版app最新下载地址
杏用社【破解版下载:K782.com】☆☆☆官网下载☆☆☆小妲己直播破解版app最新下载地址杏用社【破解版下载:K782.com】☆☆☆官网下载☆☆☆小妲己直播破解版app最新下载地址
杏用社【破解版下载:K782.com】☆☆☆官网下载☆☆☆小妲己直播破解版app最新下载地址
 
深圳明星【选妞网址☆qmm123.com】深圳高端小妹伴游
深圳明星【选妞网址☆qmm123.com】深圳高端小妹伴游深圳明星【选妞网址☆qmm123.com】深圳高端小妹伴游
深圳明星【选妞网址☆qmm123.com】深圳高端小妹伴游
 
如何能买到迷药【网址☆THC88.com】如何网购喷迷药
如何能买到迷药【网址☆THC88.com】如何网购喷迷药如何能买到迷药【网址☆THC88.com】如何网购喷迷药
如何能买到迷药【网址☆THC88.com】如何网购喷迷药
 
查询开房同住人信息【下单查询网站:KF367.com】酒店同住人信息在线查询,查开房记录,开房信息查询,查询酒店入住记录信息
查询开房同住人信息【下单查询网站:KF367.com】酒店同住人信息在线查询,查开房记录,开房信息查询,查询酒店入住记录信息查询开房同住人信息【下单查询网站:KF367.com】酒店同住人信息在线查询,查开房记录,开房信息查询,查询酒店入住记录信息
查询开房同住人信息【下单查询网站:KF367.com】酒店同住人信息在线查询,查开房记录,开房信息查询,查询酒店入住记录信息
 
直播盒子【破解版下载:K782.com】☆☆☆官网下载☆☆☆爱微奶破解版app最新下载地址
直播盒子【破解版下载:K782.com】☆☆☆官网下载☆☆☆爱微奶破解版app最新下载地址直播盒子【破解版下载:K782.com】☆☆☆官网下载☆☆☆爱微奶破解版app最新下载地址
直播盒子【破解版下载:K782.com】☆☆☆官网下载☆☆☆爱微奶破解版app最新下载地址
 
三唑仑购买方式【网址☆THC88.com】三唑仑购买渠道
三唑仑购买方式【网址☆THC88.com】三唑仑购买渠道三唑仑购买方式【网址☆THC88.com】三唑仑购买渠道
三唑仑购买方式【网址☆THC88.com】三唑仑购买渠道
 
91滴滴【破解版下载:K782.com】☆☆☆官网下载☆☆☆快手成人版破解版app最新下载地址
91滴滴【破解版下载:K782.com】☆☆☆官网下载☆☆☆快手成人版破解版app最新下载地址91滴滴【破解版下载:K782.com】☆☆☆官网下载☆☆☆快手成人版破解版app最新下载地址
91滴滴【破解版下载:K782.com】☆☆☆官网下载☆☆☆快手成人版破解版app最新下载地址
 
汤头条【破解版下载:K782.com】☆☆☆官网下载☆☆☆成人资源破解版app最新下载地址
汤头条【破解版下载:K782.com】☆☆☆官网下载☆☆☆成人资源破解版app最新下载地址汤头条【破解版下载:K782.com】☆☆☆官网下载☆☆☆成人资源破解版app最新下载地址
汤头条【破解版下载:K782.com】☆☆☆官网下载☆☆☆成人资源破解版app最新下载地址
 
怎么用手机号码查机主姓名【下单查询网站:KF367.com】专业查询服务,查询个人信息通过手机号码查询身份证信息
怎么用手机号码查机主姓名【下单查询网站:KF367.com】专业查询服务,查询个人信息通过手机号码查询身份证信息怎么用手机号码查机主姓名【下单查询网站:KF367.com】专业查询服务,查询个人信息通过手机号码查询身份证信息
怎么用手机号码查机主姓名【下单查询网站:KF367.com】专业查询服务,查询个人信息通过手机号码查询身份证信息
 
春药购买虾皮shopee【网址☆THC88.com】春药买卖
春药购买虾皮shopee【网址☆THC88.com】春药买卖春药购买虾皮shopee【网址☆THC88.com】春药买卖
春药购买虾皮shopee【网址☆THC88.com】春药买卖
 

FreeBSD documentation translation

  • 1. Translation of The FreeBSD Documentation FreeBSD 文件翻譯計劃 Ruey-Cherng Yu raycherng@gmail.com 2016.7.30 摘要 Abstract 自己的文件自己翻! FreeBSD 的一個特色就是擁有許多高品質的技術文件,還有一個嚴謹有組織的文件團隊,但是這些文件 的最新版都是英文版的,大部分現有的正體中文翻譯已經是八年前的資料,甚少參考利用的價值,以致 於這些高品質文件在台灣的使用者間曝光度有限,非常可惜。 去年八月,FreeBSD 文件計畫改用 GNU gettext 翻譯系統,使得翻譯文件的流程更加便利。本次講題 將簡介 FreeBSD 文件計畫,翻譯流程,以及正體中文翻譯計畫的現況,希望能喚起大家的熱情,參與 正體中文翻譯計畫,讓更多的台灣使用者受益。 FreeBSD 文件計畫 FreeBSD 的一個特色就是擁有許多高品質的技術文件。這些文件分成三大類: 1.書籍和文章 (books and articles) 2.網站 3.manual pages 書籍和文章是用 Docbook 標記語言所寫,書籍部份,內容最多,最知名重要的就是 FreeBSD 手冊 ( FreeBSD Handbook ),已經被翻譯成超過 20 種語言。其他還有 Porter 手冊,文件計劃入門書,開發 者手冊,FAQ 等。 Manual pages 的格式是 mdoc,除了英文以外,目前只有日文翻譯。 網站大部份是 XSLT,有些網頁是 CGI 產生的,還有部份網頁是直接以 HTML 寫成。從官方網站首頁 右上方,有八種語言的網頁連結,目前沒有繁體中文。 本文主要是說明書籍和文章類的繁體中文翻譯。 為什麼要有繁體中文翻譯? 中文翻譯的 FreeBSD 文件可以降低大家接觸和進入 FreeBSD 的門檻,讓更多不同程度的使用者都能 接觸到這個優秀的作業系統,這樣對有興趣的使用者有利,也對 FreeBSD 計劃有利,能創造雙贏。 現在愈來愈多人可以讀得懂簡體中文,為何不從簡體中文版文件,直接簡轉繁呢?因為簡體中文的用詞 還是有許多和台灣慣用語有很大的差異,例如: 高端 智能 優化 高清 編程 創客 以上的詞彙是用繁體中文寫的,您看得懂嗎?您可能愈來愈看得懂了,甚至覺得理所當然,因為我們自 己的用詞已經漸漸被取代了。 以下是台灣的用詞:
  • 2. 高階 智慧型 最佳化 高解析度 程式設計 自造者 語言本來就會常常受到不同面向的影響而改變,只是如果台灣本來就有自己的用語,甚至某些辭彙的中 文翻譯最早就是由台灣所翻譯的,那只要我們能夠積極地將文件翻譯成繁體中文,並且使用台灣的辭彙, 就能夠繼續保有我們本土的特色與文化。香港有一群不會電腦的大叔們甚至努力學會使用造字軟體,希 望保有香港本土的特有字體呢! FreeBSD 文件也有簡體中文的版本,可能會有人建議像維基百科的翻譯作法一樣,用共同的中文翻譯, 再把中國和台灣不同的用詞用台灣的辭彙替換掉。但是簡體中文版也是和英文版的文件的進度有許多落 差,所以除了用詞問題,簡體轉繁體仍然有不可行之處。如果您願意的話,參考簡體中文文件,並對照 英文版最新的原文,將他翻譯成繁體中文版,那倒是個可行的辦法。 再舉個例子,”FreeBSD 操作系統與服務器優化”,您看的習慣嗎? 不習慣的話,加入我們吧! FreeBSD 文件翻譯的工具書 FreeBSD 文件計劃入門書: http://www.freebsd.org/doc/zh_TW/books/fdp-primer/ 對於整個 FDP 的說明非常詳盡,不懂的就去那裡查詢吧。 文件翻譯工具鏈 使用 port 安裝 textproc/docproj/ 和 devel/gettext-tools/或是安裝套件: # pkg install docproj gettext-tools 取得 doc/tree % svn checkout https://svn.FreeBSD.org/doc/head ~/doc 將 FreeBSD 文件抓到家目錄下的 doc 目錄,可以看到 doc 目錄的內容如下: 每個目錄的命名方式是依照 『語言代碼_國碼.編碼』,因此繁體中文的文件是位於 zh_TW.UTF-8。 ~/doc/zh_TW.UTF-8 目錄內有: articles books htdocs Makefile Makefile.inc share articles 和 books 底下又有子目錄,每個子目錄都是不同的文章和書籍。
  • 3. FreeBSD 文件的翻譯方法 原先的 FreeBSD 文件 (書籍與文章) 翻譯方法是直接打開英文版的 xml 檔案,把英文的文件內容直接翻 譯成中文,然後要注意中英文版本號的對應,並且要小心檔案中的 xml tag ,不要不小心修改或是翻譯 了這些 tag,作法如圖。這樣的作法會造成翻譯者的困擾,沒辦法專心在翻譯文件內容本身。 舊方法除了麻煩和容易出錯外,最大的問題是無法和英文版的進度同步,要檢查英文版是否已經再度修 訂過,是否中文翻譯要重新翻譯,要花很多心力比對。 還好 2015 年 8 月,在 FreeBSD 文件計劃工程團隊的努力下,改用 GNU gettext 翻譯系統,原文內容 會被摘取到一個 PO 檔,翻譯者只要用 PO 檔編輯器,打開 PO 檔,就可以專心翻譯了,不用直接處理 xml 檔。 現在的翻譯流程是: 1.找出您要翻譯的書或是文章,位於 doc/head/zh_TW.UTF-8/,books 子目錄是書籍,articles 子目錄 是文章。htdocs 是網站內容,不在本文討論範圍。翻譯前,請先問問看是否有其他人正在翻譯您想翻譯 的部份,以免重複打造輪子,讓您做了白工。 2. 建立新目錄,修改 Makefile: 看他有沒有 PO 檔,檔名會是 zh_TW.po。如果沒有 PO 檔,表示該文章目前還是使用舊翻譯方法, 那就需要先修改 Makefile,然後產生 PO 檔。 以翻譯 leap-second 文章為例,要在繁體中文的目錄建立 leap-second 子目錄,然後把英文版的 Makefile 複製過來。 % cd ~/doc/zh_TW.UTF-8/articles/ % svn mkdir leap-seconds % svn cp ~/doc/en_US.ISO8859-1/articles/leap-seconds/Makefile ~/doc/zh_TW.UTF-8/articles/leap- seconds/ 因為 articles 的檔案結構比較單純,不需要修改 Makefile。如果是 books 類,就要修改 Makefile,將其
  • 4. 中的 SRCS 修改成只產生一個 book.xml: SRCS= book.xml。 3. make po : 如果已經有 PO 檔的話,您可以執行 make po 指令,讓 PO 檔更新與英文版同步,接著就用 PO 檔編輯器,打開 PO 檔,開始翻譯! 4. make tran: 翻譯完成後,執行 make tran,產生 article.xml。可以再執行 make FORMATS=html,產生 html 檔,用瀏覽器來檢視翻譯成果。 5. Submit: • 將 Makefile、article.xml、zh_TW.po 加入版本控制系統: % svn add Makefile article.xml zh_TW.po A         Makefile A         article.xml A         zh_TW.po • 設定 svn:keywords property FreeBSD=%H,讓 $FreeBSD$ 可以被版本控制系統展開替換。 % svn propset svn:keywords FreeBSD=%H Makefile article.xml zh_TW.po property 'svn:keywords' set on 'Makefile' property 'svn:keywords' set on 'article.xml' property 'svn:keywords' set on 'zh_TW.po' • 設定 MIME type、UTF-8 character set 和 fbsd:notbinary,才不會讓版本控制系統將檔案誤認為二 進位檔。 % svn propset svn:mime-type 'text/x-gettext-translation; charset=UTF-8' zh_TW.po property 'svn:mime­type' set on 'zh_TW.po' % svn propset fbsd:notbinary yes zh_TW.po property 'fbsd:notbinary' set on 'zh_TW.po' % svn propset svn:mime-type 'text/xml; charset=UTF-8' article.xml property 'svn:mime­type' set on 'article.xml' % svn propset fbsd:notbinary yes article.xml property 'fbsd:notbinary' set on 'article.xml' • 建立 diff 檔 % cd ~/doc % svn diff zh_TW.UTF-8/articles/leap-seconds > /tmp/leap-seconds.diff 提交您翻譯好的 PO 檔。目前官方尚未有一個翻譯伺服器可以讓貢獻者提交或是翻譯協作 PO 檔,doc 工 程團隊有這樣的想法和計劃,但是還在討論中。所以提交的管道目前有: a. 官方的 Bugzilla bug report 系統。 b. https://reviews.freebsd.org/ 網站,請註冊一個帳號來提交,不過目前台灣沒有 active doc committer ,所以 reviewer 只能 tag 台灣的 src/port committer。 c. Email 給我,我幫您提交也可以。 因為 FreeBSD 文件計劃才剛開始用 GNU gettext 系統,目前各語言的翻譯幾乎都尚未轉換成 PO 檔翻
  • 5. 譯,書籍部份目前只有西班牙文的 FAQ 和繁體中文的 Porter 手冊已轉換使用 PO 檔翻譯,所以尚未使 用 PO 翻譯的文件,需要經過一個轉換的步驟。 PO 檔編輯軟體 1.Poedit 非常廣泛使用的 PO 檔編輯軟體,用 wxWidget 寫的,因此可以跨平台,橫跨所有 Windows 平 台,XP/vista/7/8/10 都可以用,好吧,不開玩笑了,Mac OS X,Linux 和 FreeBSD 也都可以用。 2.Lokalize KDE 計劃旗下的 PO 檔編輯軟體,在 FreeBSD 和 Ubuntu 使用沒有問題,不過他是 Qt 的程式, 如果你是使用 gcin 或是 HIME 中文輸入,在 Ubuntu 16.10 以後,Qt 5 的程式完全無法用 gcin 做中文 輸入,短時間內也沒有解決跡象。如果你用別的輸入法框架,可能就不會有這個問題。可以自定義快捷 鍵 3.gTranslator GNOME 計劃旗下的 PO 檔編輯軟體,在 FreeBSD 和 Ubuntu 使用沒有問題,但是他的將原訊 息複製到翻譯內容這個功能的快捷鍵是 Crtl-space,和 gcin 切換中英文輸入法的快捷鍵衝突,而且他無 法自訂快捷鍵,這是一大缺點。 4.gted http://www.gted.org/ 他是 Eclipse 的 plugin,如果有用 Eclipse 的人,可以試看看,沒用 Eclipse 的話,為了編輯 PO 檔而安 裝,就有點太龐大了。 5.Virtaal 也是一個跨平台的 PO 檔編輯軟體,python 寫的,Windows,Mac OS X 和 Linux 都可以執行。 6.Vi/Vim ( po.vim ) 直接在 Vi/Vim 編輯 PO 檔也是可以的,如果你就是用 Vi/Vim 編輯 PO 檔,有個受到 Emacs PO mode 啟發的 plugin 叫 po.vim,也可以試用看看。 7.GNU Emacs ( PO mode ) 什麼都可以做的 GNU Emacs 當然有支援編輯自家的 GNU gettext PO 檔囉,有個 PO mode 專 門讓你編輯 PO 檔更順手。 以上提到的 PO 檔編輯器遇到的問題,很有可能隨著版本的演進已經有人將 bug 修好了,所以 您可以嘗試使用看看,不一定會遇到我寫本文章時所遇到的問題。 許多 open source project 有用 translation server 來進行線上的 PO 檔翻譯協作,FreeBSD doc team 尚在討論架設 translation server 的問題,所以現階段是沒有 translation server 可以使用,因此多 人協作翻譯同一個 PO 檔還需要協調一下每個人要翻譯的部份。 目前台灣的 FreeBSD 文件翻譯進度: books 類: 1. Handbook 正在轉換到 PO 檔翻譯,感謝 cwlin 兄完成這浩大的工程。 2. Porter's handbook,已經轉換到 PO 檔翻譯,已翻譯內容,應該符合英文版這半年來的進度,但未翻 譯的部份還很多,需要您的協助。 3. FDP primer,已經轉換到 PO 檔翻譯,已翻譯內容,應該符合英文版這半年來的進度,但未翻譯的部
  • 6. 份還很多,需要您的協助。 4.FreeBSD Developers' Handbook 尚未轉換到 PO 檔翻譯,內容為 2007 年以前的舊資料,全部都待 翻譯。 5. FAQ 尚未轉換到 PO 檔翻譯,因內容年久失修,連結已經被拿掉了,待整理與翻譯。 article 類: 1. 只有 leap-second 使用 PO 檔翻譯,這是當初翻譯系統轉換到 PO 檔翻譯的練習範例。 翻譯注意事項 • 保留 XML tag 不要翻譯,例如這個 NTP 請不要翻譯: If <acronym>NTP</acronym> is not being used • 保留字串前後的空白 • 有 PGP key 的文章不要翻譯,這些 PGP key 是 script 產生的,不是手動輸入的,doc team 還在研究 如何處理這些文章的翻譯問題。 • $FreeBSD$ 字串要特別處理,要將金錢符號替換為&dollar,以免這個字串會被版本控制系統展開 替換: &dollar;FreeBSD&dollar; 每個單字的字義都要翻譯到嗎?: 不需要逐字翻譯,只要中文能表達使用方法及步驟即可,刪去一些英文字或改變順序沒關係。因為中英 文語法不同,如果每個字都翻譯會變很怪。 謝文珊,實踐大學應用英語系助理教授 每個單字的字義都要翻譯到嗎?: 通常對具體事務、概念、或學理的翻譯,原文就好像油畫,譯者要把這油畫畫成水彩畫,然後讀者還看 得出來原作者要說些甚麼。 從具體物,變成油畫,再轉成水彩,一定有誤差,但重點是讀者是否能從水彩想回去原物。 整個原作要全部熟讀完之後,再來翻譯的工作嗎?: 我一般是一章大略讀一次,然後一段一段譯。當然,技術上是一句一句譯。不過一整段的內容要先有個 頭緒再下筆比較能用詞準確。 遇到真的不懂的怎麼辦?: google、或是詢問原作者。 碰到無處可問的時候,只好打安全牌,弄個比較不會錯的譯法,然後附上原文。 林茂昌,知名財經、翻譯作家 參考資料 • https://theinitium.com/article/20160410-changemaker-font/ • FreeBSD 文件計劃入門書 • http://wonkity.com/~wblock/translation/,wblock