Package 和 Plugin

Package

Package 放在 Packages/ 目錄下,主要用來組織同類型功能的檔案,通常一個典型的 package 裡面會包含以下這些檔案:

  • 建構系統(Build System):.sublime-build
  • 快捷鍵設定:.sublime-keymap
  • 巨集:.sublime-macro
  • 選單欄:.sublime-menu
  • 外掛程式:.py
  • preferences:.tmPreferences
  • 選項設定:.sublime-settings
  • 語法定義:.tmLanguage
  • 語法片段:.sublime-snippet
  • 佈景主題:.sublime-theme

有些 package 可能只是存放一些檔案,提供資料給其他外掛或 Sublime Text 的核心功能,例如拼音檢查就是使用 PackagesLanguage - English 這個 package 目錄。

Plugin

Sublime Text 2 的外掛可以用 Python 語言開發,如果你擅長使用 Python 便可以自行開發擴充 Sublime Text 的功能,讓它變得更好用!外掛可以使用已經存在的指令,或是建立自己的指令。

你可以將別人寫好的外掛,或是自己寫的外掛腳本,放在以下這幾個位置,都可以被 Sublime Text 讀取到:

  • Packages
  • Packages/<pkgname>/_

因此如果將外掛放在非以上這些目錄,或是更深入的目錄內,就會無法被讀取到,我建議都放在 User/ 目錄下比較好備份管理。

更多外掛的參考資料:Plugins

什麼是 Package Control

sublime-package-control

Package Control 不是內建功能,事實上它只是 Sublime Text 2 的一個 package,由 Will Bond 所開發。因為實在是太方便了所以幾乎與 Sublime Text 2 緊密結合在一起,成為安裝 Sublime Text 2 時第一個必裝的 package。

Package Control 是功能相當完整的 package manager,讓搜尋、安裝跟移除 Sublime Text package 變得相當方便,協助自動更新外掛,也因此幾乎所有的外掛開發者,都會將自己的作品提交到 Package Control 上。

這個概念就像是用 Google Chrome 的 Chrome Web Store 安裝擴充套件吧!

安裝 Package Control

還記得先前介紹過的 Python 控制台嗎?快捷鍵 Ctrl + `,或是從選單欄選擇 View >> Show Console 打開它,將以下程式碼複製貼上到控制台中,然後按下輸入:

import urllib2,os; pf='Package Control.sublime-package'; ipp=sublime.installed_packages_path(); os.makedirs(ipp) if not os.path.exists(ipp) else None; urllib2.install_opener(urllib2.build_opener(urllib2.ProxyHandler())); open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read()); print('Please restart Sublime Text to finish installation')

Package Control 將會開始安裝,完成時可能需要重新啟動 Sublime Text 2。

安裝 Package

install-package

用快捷鍵 Command + Shift + P 打開指令面板,輸入「install package」找到正確指令後按下輸入,便會列出 Package Control 上所有可安裝的 packages,搜尋要安裝的 package 按下輸入即開始安裝。

移除 Package

安裝 Package 方法相同,打開指令面板後輸入「remove package」,會列出所有已安裝的 packages,從這裡選擇需要刪除的 package。

注意一點,如果有相關的設定檔放在 Package/User/ 目錄下,並不會自動被刪除,這部份需要自己手動移除。