(轉載須註明本文原始地址http://write.blog.csdn.net/postedit/8962727和作者“碧海情天 趙亮”及部落格地址http://blog.csdn.net/theforever)
目錄:
手工漢化 http://blog.csdn.net/theforever/article/details/8962727
外掛程式開發 http://blog.csdn.net/theforever/article/details/8963194
外掛程式發布 http://blog.csdn.net/theforever/article/details/8967507
Sublime Text(以下簡稱ST)是一個近年推出的編輯文本和程式碼的優秀工具。只要一開啟,你就會意識到它和以往的編輯工具的不同,感覺到它在介面安排上的先進性,更美觀也更貼心。如果再通過它的中英文介紹材料簡單瞭解一下它的特性,你就會發現,這是一個在以往的文字和代碼編輯器基礎上,收集了眾多使用者最迫切需要的一些實際需求並加以實現的讓你驚喜的編輯器。功能貼心,介面時尚,這就是它首先能抓住你的特色,接下來你還會發現它有很多非常有用的外掛程式,包括針對各種程式設計語言的文法補充和提示、zencode、格式化,以及通用的一些功能外掛程式,而所有這些外掛程式都是開放代碼的,可查閱學習,也可根據需要進行修改。而且雖然功能強大,ST本身的安裝檔案體積還不到十M,在低端機上運行也很流暢。所以這絕對是值得你擁有的編輯工具。
關於使用方法和熱鍵介紹,以及外掛程式安裝,都有專門的文章,可以搜尋閱讀。
在漢化方面,大多文章都只介紹使用現成的漢化包。這固然方便,但解決不了所有問題。先不提版本更新和漢化封裝更新的時間差,單說你所安裝的一些外掛程式,由於它們常常要額外添加英文功能表項目,所以就會導致漢化不完全的現象,不僅是它們添加的菜單自身,還包括ST的頂級菜單都常常會重新覆蓋顯示為英文。因為漢化包只包括基本的ST功能菜單,它既不知道你還會安裝哪些外掛程式,也不可能預先把那些外掛程式產生的功能表項目漢化進去,因為那會產生大量沒有實際實現的無用菜單。
所以瞭解外掛程式包的機制,學會手工對外掛程式甚至ST漢化,會讓你掌握主動,不需等待靠人,就能解決問題。
首先從漢化ST說起:
1、在ST的安裝資料夾下有個 Packages 檔案夾,進入這個檔案夾,你可以看到裡面檔案都是以 sublime-package 為副檔名的,這表示的就是ST外掛程式包。其中很多檔案以程式設計語言名稱作為檔案名稱,這些是文法檔案,是文法高亮和自動補全的參考。但這個檔案夾並非只有這些,還包括預設的主題方案(theme)以及更重要的 Default.sublime-package檔案,我們要漢化的菜單檔案就包含在裡面。
2、接下來你自然需要知道怎麼把菜單檔案弄出來進行翻譯然後讓它生效了。sublime-package這個副檔名並非一種專門的物理檔案格式,而是一種邏輯上的檔案分類表示,它的實際檔案格式其實是ZIP(如果你的軟體經驗夠多,會在不少軟體中看到類似的用法),所以只要你把這個副檔名改成ZIP,就可以用任何支援ZIP的解壓軟體解壓成一個檔案夾,內含擴充包中所有檔案。
3、在這些檔案中找到副檔名為sublime-menu的幾個檔案,用文字編輯器開啟,可以看到所有功能表項目都在裡面。其中 "caption": "XXXX" 就代表菜單顯示的名稱。除了 { "caption": "-" } (表示菜單分組間隔線)不要動之外,其餘的caption後面的英文用漢語替換即可。
注意:帶有"mnemonic": "某字母"的,表示該菜單的鍵盤訪問鍵,所以在翻譯成漢語時,應該把這個字母用括弧括起來,加在漢語的前面或後面。
4、儲存,並且要注意,必須選擇編碼為UTF8(可以選擇不加UTF頭BOM),而不能是GBK或GB2312。因為ST想用UTF8統一全球各種字元集,拋棄了對GBK等字元集的自動識別,所以如果存成GBK,ST就不能正確識別漢字部分,會無法顯示或顯示不正常。
說到這個地方,順便說說ST3的菜單中有一項Reopen,其中又含有30來項子功能表,除了UTF16和HEX外,其餘一大堆都是歐美的字元集,在系統註冊表HKLM\SOFTWARE\Classes\MIME\Database\Codepage下面字碼頁字元集中都可以找到,但又有些變化。有興趣的朋友可以嘗試一下,看能否把亞洲常見的字元集加進去——但願ST沒有種族歧視到這程度。
5、應用。要想生效,需要把解壓檔案夾再壓縮回ZIP(注意,要在檔案夾裡選擇所有檔案壓縮,而不是在檔案夾外選擇檔案夾壓縮,那樣就會因為目錄層級不對而無法生效),然後改回原來的副檔名,並移到原檔案夾中。
建議採用下面的另外一種局部修改方法,更簡便且安全:
1、同上。
2、在壓縮包中只選擇副檔名為sublime-menu的幾個檔案解壓出來,放在一個名為Default的檔案夾中。
3、編輯檔案並儲存,注意事項同上。
4、剪下 Default檔案夾。
5、在ST中選擇“Preferences/偏好”主菜單(右數第二個)->“Browse Packages/瀏覽擴充包”,系統會開啟一個檔案夾,按CTRL+V把之前剪下的 Default檔案夾粘貼在這裡。
這種方法不需要重新打包並改名,而且可以隨時更改,最主要的是會保留原始的 Default.sublime-package檔案,以防萬一改壞不能複原導致只能重新安裝軟體。同時這種方法還會在儲存檔案時立即反映出改變。在下一教程“外掛程式開發”中,可以利用這個方法調試外掛程式。
以上是ST主體的漢化。通過對擴充包 Default.sublime-package檔案裡的 sublime-menu 檔案進行修改。
對其它外掛程式進行漢化的方法類似。
首先要找到外掛程式的檔案,ST外掛程式有三個存放位置,一個是ST安裝資料夾下面的 Packages 檔案夾,一個是在上面第5步找到的 Packages 檔案夾,還有一個是和第二個 Packages檔案夾同級的Installed Packages檔案夾(“Browse Packages/瀏覽擴充包”之後向上一級就可以看到)。
外掛程式名稱和 sublime-package檔案的檔案名稱是對應的,因此很好找到對應的擴充包。找到之後,使用上面兩種方法之一進行修改即可。
漢化的方法至此結束。教程第二部分將會講解“開發ST外掛程式”的步驟,結合我自己寫的一個執行個體進行示範。