Sublime Text
簡介
Sublime Text(以下簡稱 ST,後附數字作為版本區分,如無則各版本都適用)是一款輕量級的文本編輯器,支持多種語言的語法高亮及代碼補全。具有高度的可拓展性以及 Vim 模式,特別的熱啓動模式大幅減小了文件丟失的可能。
新版 NOI Linux 中支持版本為 ST3 最後一個版本 3.2.21,故這裏以 ST3 為主。目前 ST4 正式版已經發布2,現在如仍使用 ST3 會提示更新。
ST4 與 ST3 的重要差別會有額外補充,在介紹中如果提及某項在 ST3 已有翻譯則使用中文,否則為 ST4 中的英文。
安裝
ST4 的安裝方法參見 Sublime Text 4 的下載頁面。
ST3 的安裝方法參見 Sublime Text 3 的下載頁面。
提示購買
ST 是收費軟件,但有一個無限期的試用,試用並不會帶來功能上的缺失,但會不時彈出彈窗提示激活。
插件與自定義
漢化
ST 並不支持中文,如需中文需要安裝漢化插件。
安裝插件管理器
打開 ST 後鍵入Ctrl+Shift+P喚出命令框,輸入 Install 後回車(完整命令是 Install Package Control,不區分大小寫),此時應該會看到左下角有一個 = 在不停的左右移動。Package Control 安裝完成(或失敗)後會有彈窗提示,具體的加載時間取決於網絡。
如果完成的彈窗顯示安裝失敗(與網絡有關),則需要手動下載 Package Control 並將下載好的文件放到 ST 的數據目錄下的 \Installed Packages 文件夾中。稍作等待,ST 會自動識別該插件(有時需要重啓 ST)。
ST 數據目錄的路徑
Windows 下,如果在 ST 的 安裝目錄 下存在 \data 文件夾,會自動使用(或初始化)該文件夾作為數據目錄。
ST3 的路徑一般為 C:\Users\用户名\AppData\Roaming\Sublime Text 3,ST4 一般為 C:\Users\用户名\AppData\Roaming\Sublime Text,ST 會先尋找對應版本的路徑,如不存在則尋找更低版本的路徑,如都不存在則新建並初始化。
在以 NOI Linux 所使用的 Ubuntu 20.04.1 中,ST3 的數據目錄為 $HOME/.config/sublime-text-3,ST4 的數據目錄為 $HOME/.config/sublime-text,使用的具體規則同 Windows 環境。
可以使用 首選項->瀏覽插件目錄... 快速查看數據文件夾路徑下的 \Packages 文件夾。
安裝漢化插件
再次按下Ctrl+Shift+P輸入 Install 後回車(完整命令是 Package Contrl:Install Package),等待加載完成,接下來應該是這個界面:

輸入 Chinese 選擇 ChineseLocalizations 並回車,等待安裝完畢,完成後界面會自動切換為中文(如是 ST4,因為漢化插件未更新,會少一些新增的菜單項,但一般對編輯無影響)。
調整字體
進入 首選項->設置,在右邊的用户設置中的花括號中添加一行 "font_face": "字體名",,ST 的設置使用 JSON 格式儲存。修改完成後保存,如果系統安裝了對應字體會自動切換。
一般而言,如果單論對中文的顯示的話,Microsoft Yahei Consolas 和 Microsoft YaHei Mono 是比較好的選擇。
Warning
注意任何設置(包括插件設置)即使能也不要在左邊的的默認設置中修改,這是不被推薦的,如果軟件(或插件)更新,默認設置會被重置。
安裝插件與主題
安裝插件與主題的方法與安裝漢化插件一致。
輸入Ctrl+Shift+P輸入 Install 後回車,然後搜索插件/主題/配色即可。
插件推薦:
- BracketHighlighter : 對原版的括號高亮進行了增強,必備。
- C++ Snippets : ST 自帶有 C++ 代碼補全,格式為大括號不換行。如果不習慣自帶大括號換行的碼風可以安裝這個插件,同時增加了一部分補全。
- C++ 11 : 支持 C++ 11 標準高亮(ST4 中不需要)。
- SublimeAstyleFormatter : Astyle,用於格式化代碼。
- Diffy : 按Ctrl+K&Ctrl+D即可快速比較第一視窗與第二視窗打開的文件的不同,比較方式為逐行比較。
- ConvertToUTF8 : 自動識別文件編碼,並支持編碼轉換。
- SideBarEnhancements : 側邊欄增強,較為推薦。
- Transparency : 窗口透明化。
有其他需要可以嘗試搜索。
一些主題:3
1337(單配色方案)、3024(單配色方案)、Grandson-of-Obsidian(單配色方案)、Seti_UI(單主題,額外包含 git 等格式的高亮,較為推薦)、Material Theme、Predawn、Agila、Materialize。
如果要編輯自己的配色方案,可以訪問 tmTheme Editor。
如是 ST4 則可以在 Preferences->Customize Color Scheme 中調整配色方案或 Preferences->Customize Scheme 中調整主題。
開啓 Vi Mode
ST 的開發者為 Vi 使用者提供了一個可選插件 Vintage,可模擬 Vi 的大部分功能。
開啓方式
Vintage 插件默認是禁用的。可以通過 首選項->設置 在用户設置中,將 "ignored_packages" 一項中的 Vintage 刪除並保存(不要整個刪除,只刪除 Vintage),ST 的狀態欄左邊就會出現 INSERT MODE,此時 Vintage 插件已開啓。
或者按Ctrl+Shift+P,然後輸入 Enable 選擇 Package Control: Enable Package 並回車,選擇 Vintage 即可,該方法需要 Package Control。
相關配置
如果想讓上下左右鍵失效,可以在 首選項->快捷鍵設置 中添加:
1 2 3 4 | |
如要使 ST 以命令模式啓動,則可以在 首選項->設置 中添加:
1 | |
也可以通過快捷鍵設置將進入命令模式設置成任意鍵(具體詳見 設置快捷鍵)。
與 Vi 的不同
ST 的 Vintage 插件與 Vi 有一定不同,部分列於此處:
- 在插入模式下用選中不會進入可視模式,這時輸入不會被識別為命令而是直接替換文本。可視模式只有命令模式下才能進入。
r、R、zA、za、zi、z=、@與使用[、]或"鍵的命令不存在。- 使用Ctrl、Shift和Alt鍵的快捷鍵會保留為 ST 設置的快捷鍵,如Ctrl+V不會進入可視模式而是正常粘貼。
- 命令行模式只保留了
:e、:0、:$、:s。 - 使用
\與?命令會自動喚出搜索框,而不是直接在命令中鍵入單詞進行搜索。同時,數字將無法生效。 q宏錄製命令會啓動 ST 自帶的宏錄製,按Q後需要再按一個鍵啓動錄製,但錄製的宏不會與該鍵綁定,需要按Ctrl+Shift+Q才能啓動。如果需要保存,需要工具->保存宏,快捷鍵需要設置。- 無法使用
數字+.的組合。
設置
設置 ST
在 首選項->設置 中設置,這裏列舉部分較有用的選項:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | |
設置快捷鍵
在 首選項->快捷鍵設置 中設置,在左邊找到需要修改的功能,然後複製到右邊並修改按鍵即可。
例如,如果要把Ctrl+B的編譯改為F9(如果不令原有的快捷鍵失效,實際是增加一個觸發方式),則可以在 首選項->快捷鍵設置 中添加:
1 2 3 4 5 | |
設置插件
插件的設置可以在 首選項->Package Setting->插件名 中找到,做修改時請注意不要修改默認設置。
例如,這裏給出 BracketHighlighter 的一些設置,在 首選項->Package Setting->BracketHighlighter->Bracket Setting 中修改:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | |
修改與添加
有時候,插件的某些地方可能並不盡如人意,或想對插件進行漢化,這時就需要對插件做一些修改。
插件存放的位置是數據目錄下的 \Installed Packages 文件夾。
裏面的文件以 .sublime-package 為後綴,實際上為 .zip 格式,可以使用解壓縮軟件打開。
例如,如果要修改自動補全,可以打開 ST 的 安裝目錄 \Packages\C++ 插件中的 \Snippets\*.sublime-snippet 文件修改,如要 增添 自動補全,可以安裝 C++ Snippets 並在其中修改或添加文件(或新建一個插件,但不能直接添加進自帶的 C++ 插件,否則無法被識別)。保存任何修改時 必須 關閉 ST,且請提前做好備份,否則可能出現文件丟失。
當然,任何增添都可以放在數據目錄路徑下的 \Packages\User\ 下,這總是被支持的。
例如,一個文件模板的補全可以這麼寫:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | |
以下列出部分文件後綴以及其用途,具體的插件開發教程詳見 社區文檔 和 官方文檔:
| 後綴名 | 用途 |
|---|---|
| .sublime-build | 編譯系統文件 |
| .sublime-completions | 文件名補全列表(一般為頭文件) |
| .sublime-syntax | 語法高亮文件 |
| .sublime-settings | 設置文件 |
| .tmPreferences | 首選項中的列表文件 |
| .sublime-keymap | 快捷鍵設置文件 |
| .sublime-snippet | 代碼補全文件 |
| .sublime-commands | 命令定義文件 |
| .sublime-menu | ST UI 文件,包括側邊欄以及頂部菜單欄(漢化的主要對象) |
由於插件更新會直接覆蓋原文件,所以建議備份更改的文件。
編輯
設置語法
按Ctrl+Shift+P後輸入語法即可,或者按右下角的 Plain Text 然後修改為需要的語言,同時在 視圖->語法 中也可以設置。

快捷鍵
ST 有複合快捷鍵,如Ctrl+K&Ctrl+Backspace表示先按Ctrl+K再按Ctrl+Backspace。
部分快捷鍵:
| 按鍵 | 命令 |
|---|---|
| Ctrl+X | 剪切當前行 |
| Ctrl+Shift+K | 刪除行 |
| Ctrl+Enter | 在下方插入行 |
| Ctrl+Shift+Enter | 在上方插入行 |
| Ctrl+Shift+Up | 行上移 |
| Ctrl+Shift+Down | 行下移 |
| Ctrl+L | 選擇行,重複以向下選擇多行 |
| Ctrl+D | 選擇詞,重複以選擇多個相同詞,並進入多重選擇模式(用於快速批量更改) |
| Ctrl+M | 跳轉到匹配的括號 |
| Ctrl+Shift+M | 選擇括號內的內容(不包括括號),重複以包括括號 |
| Ctrl+K&Ctrl+K | 刪至行尾(複合快捷鍵,建議使用 Vim 模式代替) |
| Ctrl+K&Ctrl+Backspace | 刪至行首(複合快捷鍵,建議使用 Vim 模式代替) |
| Ctrl+] | 縮進當前(選擇的)行 |
| Ctrl+[ | 取消縮進當前(選擇的)行 |
| Ctrl+Shift+D | 複製當前行,並插入在下一行 |
| Ctrl+J | 合併下一行與當前行 |
| Ctrl+Shift+V | 粘貼並縮進(用於整段粘貼代碼) |
| Ctrl+K&Ctrl+Shift+V | 從歷史粘貼(複合快捷鍵,建議修改為Ctrl+Alt+V) |
| Ctrl+Alt+Down | 光標下移,並保留當前行光標(進入多重選擇模式) |
| Ctrl+Alt+Up | 光標上移,並保留當前行光標(進入多重選擇模式) |
| Ctrl+R | 跳至文件中的任意符號(函數或類型定義) |
| Ctrl+Shift+R | 跳至項目中的任意符號(函數或類型定義) |
| Ctrl+P | 跳至任意文件(曾經打開過或在項目中且存在的文件) |
| ~ | 轉換選擇內容的大小寫 |
自動補全
ST 有豐富的補全功能,可能的補全內容會在光標下方顯示,按Tab或Enter進行補全(ST4 中,如進行一個非 Snippet 類型的補全,接下來再按Tab可繼續選擇為以該補全為子串的補全)。
Snippet 類型的補全一般會有一些編輯塊,補全後會自動選擇為替換文本,如果是 for 等含有多個編輯塊的複雜補全,編輯完成後再次按Tab完成下一個編輯塊,此時要在編輯塊中觸發補全需要使用Enter(在 ST4 中可繼續使用Tab)。
如果沒有自動補全,請如下修復:
-
檢查是否切換了語言,ST 默認新建文件為 Plain Text。
-
進入
首選項->設置然後添上兩行:
1 2 | |
多重選擇
按住Ctrl並用鼠標單擊即可在屏幕上增加光標,Ctrl+Alt+Up或Ctrl+Alt+Down可以在相鄰兩行直接增加光標,任何編輯性質的操作會同時應用至所有光標。
查找與替換
Ctrl+F為查找,F3為查找下一個Shift+F3為查找上一個,Ctrl+H為替換。
五個查找選項分別為正則表達式匹配、大小寫敏感、全字匹配、循環查找、在選段中查找。
建議在首選項中將 "auto_find_in_selection" 設置為 true。這樣在選擇超過一個詞時使用查找會自動只在選段中查找。
演示
熱啓動
嘗試在 ST 中鍵入一些內容,並直接把整個 ST 關閉,ST 會直接關閉且沒有任何提示,再打開 ST 時只要不對電腦進行數據還原就不會丟失任何數據。
多重選擇
如果要把以下代碼中的所有 bok 改為 book,只需將光標放置在任意一個 bok 中,長按Ctrl+D即可快速選中。
1 2 3 4 | |
如果要將下列文件中的所有等號後面改成 "good",只需在將光標放置於第一行的 aaa 前,並按五次Ctrl+Alt+Down,再然後按下Ctrl+D並鍵入 good 即可。
或選中 "a 並按住Ctrl+D,然後按Right、Ctrl+D,之後鍵入即可。
1 2 3 4 5 6 | |
如要為下列所有 a + b 加上括號,只需選擇一個 a + b,按住Ctrl+D並鍵入(即可(如選擇一定區域,則任意左括號鍵入會為該區域兩邊添加匹配的括號)。
1 | |
查找與替換
如果要將下列文件中的所有等號後面改成 "good",也可以用Ctrl+H使用替換,打開正則,輸入 ".*",並替換成 "good" 即可。
1 2 3 4 5 6 | |
如要為以下代碼添加分號,只需使用選擇區域替換,打開正則,輸入 \n,並替換成 ;\n 即可。
1 | |
宏錄製
如要為以下代碼添加分號,可以按Ctrl+q啓動宏錄製接下來依次按End、;、Down再按Ctrl+q結束宏錄製(中途左下角不會全程顯示正在錄製,但確實在錄製),接下來重複Ctrl+Shift+q即可。
1 2 3 4 5 6 | |
如已開啓 Vintage 插件
執行一次Ctrl+Shift+q後,可以Esc進入命令模式,輸入 .. 即可(. 命令可以重複 ST3 命令)
關於宏的保存與綁定按鍵詳見 社區文檔。
編譯與運行
ST 的編譯環境已經配置好了,可以直接使用。
Windows 環境下需要將 g++ 所在目錄添加到環境變量中,並重啓 ST。
編譯
直接按Ctrl+B編譯,第一次使用會需要選擇編譯系統,選擇 C++ Single File(編譯)或 C++ Single File - Run(編譯並運行)。
修改編譯選項
ST 默認的編譯選項為 g++ "${file}" -o "${file_path}/${file_base_name}",如果要修改編譯選項,可以新建一個編譯系統。
進入 系統->編譯系統->新建編譯系統… 然後在大括號中間輸入:
1 2 3 4 5 6 | |
保存後按Ctrl+Shift+B切換編譯系統就可以使用了,這裏的配置是編譯並在外部 CMD 運行。
保存的文件為數據目錄路徑下的 \Packages\User\編譯系統名.sublime-build 可以反覆修改。
運行
如果編譯時選擇 C++ Single File - Run(即編譯後運行)或配置了自動運行,那麼在下方彈出的編譯信息窗口應該不會有任何顯示(除非編譯錯誤),因為 ST 的編譯信息窗口實際上是一個終端,可以直接輸入數據。
運行結束後會提示程序的運行時間,其計時為從按下Ctrl+B到全部 CMD 命令運行結束的時間,也就是説包括編譯的時間和輸入的時間,以及如果在外部 CMD 運行還包括 CMD 開啓關閉的時間。
Warning
這個窗口無法輸入F6或Ctrl+Z,如果運行讀入到文件末尾的程序請使用文件輸入,或配置在外部 CMD 運行。
調試
可以安裝插件使 ST 支持圖形化 gdb 調試,但不建議依賴插件進行 gdb 調試。
更好的做法是在配置編譯系統時加上相關命令啓動 gdb,在外部進行命令行調試。
雜項
- 把文件夾拖進 ST 中並按Ctrl+K&Ctrl+B開啓側邊欄,從而快速切換文件。
- 善用跳轉功能,尤其是Ctrl+P進行文件間跳轉與Ctrl+R進行函數跳轉。
- ST 支持 git4。
- ST 的所有配置儲存在數據目錄下,可以隨意打包,但註冊信息無法在多台電腦上使用。
外部鏈接
參考資料與註釋
本页面最近更新:,更新历史
发现错误?想一起完善? 在 GitHub 上编辑此页!
本页面贡献者:OI-wiki
本页面的全部内容在 CC BY-SA 4.0 和 SATA 协议之条款下提供,附加条款亦可能应用