卸載Notepad++!事實已證明,它更牛逼……
作者:lucida*
lucida.me/blog/sublime-text-complete-guide/
摘要(Abstract)
本文系統(tǒng)全面的介紹了 Sublime Text,旨在成為最優(yōu)秀的 Sublime Text 中文教程。
前言(Prologue)
Sublime Text 是一款跨平臺代碼編輯器(Code Editor),從最初的 Sublime Text 1.0,到現(xiàn)在的 Sublime Text 3.0,Sublime Text 從一個不知名的編輯器演變到現(xiàn)在幾乎是各平臺首選的 GUI 編輯器。而這樣優(yōu)秀的編輯器卻沒有一個靠譜的中文教程,所以我試圖通過本文彌補這個缺陷。
編輯器的選擇(Editor Choices)
從初學編程到現(xiàn)在,我用過的編輯器有 EditPlus、UltraEdit、Notepad++、Vim、TextMate 和 Sublime Text,如果讓我從中推薦,我會毫不猶豫的推薦 Vim 和 Sublime Text,原因有下面幾點:
-
跨平臺:Vim 和 Sublime Text 均為跨平臺編輯器(在 Linux、OS X 和 Windows 下均可使用)。作為一個程序員,切換系統(tǒng)是常有的事情,為了減少重復學習,使用一個跨平臺的編輯器是很有必要的。 -
可擴展:Vim 和 Sublime Text 都是可擴展的(Extensible),并包含大量實用插件,我們可以通過安裝自己領(lǐng)域的插件來成倍提高工作效率。 -
互補:Vim 和 Sublime Text 分別是命令行環(huán)境(CLI)和圖形界面環(huán)境(GUI)下的最佳選擇,同時使用兩者會大大提高工作效率。
個人背景(Personal Background)
我是一名非常典型的程序員:平時工作主要在 Linux 環(huán)境下使用 Java 和 Python,偶爾會用 HTML+CSS+JavaScript 編寫網(wǎng)頁;業(yè)余時會在 Windows 環(huán)境編寫一些 C# 程序(包括控制臺程序(Console Application)和移動應(yīng)用(Mobile App),也會玩一些非主流語言(比如 Haskell,ML 和 Ruby 等)以拓展見識。
所以這篇文章會我的個人工作內(nèi)容為主要使用場景(Scenario),盡管無法覆蓋到所有的使用場景,但我認為依然可以覆蓋到絕大部分,如果您認為我遺漏了什么內(nèi)容,請在文章下面回復,我會盡量更新。
本文風格(Writing Style)
受益于 K&R C 的寫作風格,我傾向于以實際案例來講解 Sublime Text 的功能,所以本文中的例子均源于我在實際開發(fā)時遇到的問題。
此外,把本文會使用大量動畫(GIF)演示 Sublime Text 的編輯功能,因為我發(fā)現(xiàn)圖片難以演示完整的編輯流程(Workflow),而視頻又過于重量級。本文的GIF動畫均使用 ScreenToGif 進行錄制。
編輯器(Editor) vs 集成開發(fā)環(huán)境(Integrated Development Environment,下文簡稱 IDE)
我經(jīng)??吹揭恍┏绦騿T拿編輯器和 IDE 進行比較,諸如 Vim 比 Eclipse 強大或是 Visual Studio 太慢不如 Notepad++ 好使之類的討論比比皆是,個人認為這些討論沒有意義,因為編輯器和 IDE 根本是面向兩種不同使用場景的工具:
-
編輯器面向無語義的純文本,不涉及領(lǐng)域邏輯,因此速度快體積小,適合編寫單獨的配置文件和動態(tài)語言腳本(Shell、Python 和 Ruby 等)。 -
IDE 面向有語義的代碼,會涉及到大量領(lǐng)域邏輯,因此速度偏慢體積龐大,適合編寫靜態(tài)語言項目(Java、C++ 和 C# 等)。
我認為應(yīng)當使用正確的工具去做有價值的事情,并把效率最大化,所以我會用 Eclipse 編寫 Java 項目,用 Vim 編寫Shell,用 Sublime Text 編寫 JavaScript/HTML/Python,用 Visual Studio 編寫C#。
前言到此結(jié)束,下面進入正題。
安裝(Installation)
Sublime Text 官方網(wǎng)站 提供了 Sublime Text 各系統(tǒng)各版本的下載,目前Sublime Text 的最新版本是 Sublime Text 3。這里以 Windows 版本的 Sublime Text 安裝為例。
注意在安裝時勾選 Add to explorer context menu,這樣在右鍵單擊文件時就可以直接使用 Sublime Text 打開。
右鍵打開
添加 Sublime Text 到環(huán)境變量
使用 Win + R
運行 sysdm.cpl
打開 “系統(tǒng)屬性”。
sysdm.cpl
然后在 “高級” 選項卡里選擇 “環(huán)境變量”,編輯 “Path”,增加 Sublime Text 的安裝目錄(例如 D:\Program Files\Sublime Text 3
)。
添加環(huán)境變量
接下來你就可以在命令行里面利用 subl
命令直接使用 Sublime Text 了:
subl file :: 使用 Sublime Text 打開 file 文件
subl folder :: 使用 Sublime Text 打開 folder 文件夾
subl . :: 使用 Sublime Text 當前文件夾
安裝 Package Control
前文提到 Sublime Text 支持大量插件,如何找到并管理這些插件就成了一個問題,Package Control 正是為了解決這個問題而出現(xiàn)的,利用它我們可以很方便的瀏覽、安裝和卸載 Sublime Text 中的插件。
進入 Package Control 的 官網(wǎng),里面有詳細的 安裝教程。Package Control 支持 Sublime Text 2 和 3,本文只給出 3 的安裝流程:
-
使用 `Ctrl + ``打開 Sublime Text 控制臺。 -
將下面的代碼粘貼到控制臺里:
import urllib.request,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd0'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
-
等待 Package Control 安裝完成。之后使用 Ctrl + Shift + P
打開命令板,輸入PC
應(yīng)出現(xiàn) Package Control:
Package Control 安裝成功
成功安裝 Package Control 之后,我們就可以方便的安裝使用 Sublime Text 的各種插件:
使用 Package Control 安裝插件
購買(Purchase)
Sublime Text 是一個收費閉源軟件,這在一定程度上成為了我支持 Sublime Text 的理由(我心中的軟件靠譜程度:免費開源 << 免費閉源 < 收費開源 < 收費閉源):在 https://www.sublimetext.com/buy
購買。
不過不購買 Sublime Text 也可以 “正?!?使用它,只是 Sublime Text 會時不時的彈出一個對話框提醒你購買,此外窗口處會有一個很屌絲很 low 逼的 (UNREGISTERED)。(在高頻操作下,一般 20 分鐘提示一次,個人認為算是很厚道了)
也許不少人會覺著 Sublime Text 70 刀的價格太貴,但相比它的功能和帶來的效率提升,70 刀真的不值一提。
概覽(Tour)
基本概念(Basic Concepts)
Sublime Text 的界面如下:
Sublime Text
-
標簽(Tab):無需介紹。 -
編輯區(qū)(Editing Area):無需介紹。 -
側(cè)欄(Side Bar):包含當前打開的文件以及文件夾視圖。 -
縮略圖(Minimap):如其名。 -
命令板(Command Palette):Sublime Text 的操作中心,它使得我們基本可以脫離鼠標和菜單欄進行操作。 -
控制臺(Console):使用 `Ctrl + ``調(diào)出,它既是一個標準的 Python REPL,也可以直接對 Sublime Text 進行配置。 -
狀態(tài)欄(Status Bar):顯示當前行號、當前語言和Tab格式等信息。
配置(Settings)
與其他 GUI 環(huán)境下的編輯器不同,Sublime Text 并沒有一個專門的配置界面,與之相反,Sublime Text 使用 JSON 配置文件,例如:
{
"font_size": 12,
"highlight_line": true,
}
會將默認字體大小調(diào)整為 12,并高亮當前行。
JSON 配置文件的引入簡化了 Sublime Text 的界面,但也使得配置變的復雜,一般我會到 這里 查看可用的 Sublime Text 配置。
搜索Java知音公眾號,回復“后端面試”,送你一份Java面試題寶典.pdf
編輯(Editing)
Sublime Text 的編輯十分人性化——它不像 Vim 那樣反人類(盡管我也用 Vim 但我還是要說 Vim 的快捷鍵設(shè)定絕壁連代謝產(chǎn)物都不如),少量的快捷鍵就可以完成絕大多數(shù)編輯任務(wù)。
基本編輯(Basic Editing)
↑↓←→
就是 ↑↓←→
,不是 KJHL
,(沒錯我就是在吐槽 Vim,尼瑪設(shè)成 WSAD
也比這個強啊),粘貼剪切復制均和系統(tǒng)一致。
Ctrl + Enter
在當前行下面新增一行然后跳至該行;Ctrl + Shift + Enter
在當前行上面增加一行并跳至該行。
演示新增行
Ctrl + ←/→
進行逐詞移動,相應(yīng)的,Ctrl + Shift + ←/→
進行逐詞選擇。
演示逐詞移動及選擇
Ctrl + ↑/↓
移動當前顯示區(qū)域,Ctrl + Shift + ↑/↓
移動當前行。
演示移動當前行
選擇(Selecting)
Sublime Text 的一大亮點是支持多重選擇——同時選擇多個區(qū)域,然后同時進行編輯。
Ctrl + D
選擇當前光標所在的詞并高亮該詞所有出現(xiàn)的位置,再次 Ctrl + D
選擇該詞出現(xiàn)的下一個位置,在多重選詞的過程中,使用 Ctrl + K
進行跳過,使用 Ctrl + U
進行回退,使用 Esc
退出多重編輯。
多重選詞的一大應(yīng)用場景就是重命名——從而使得代碼更加整潔。盡管 Sublime Text 無法像 IDE(例如 Eclipse)那樣進行自動重命名,但我們可以通過多重選詞+多重編輯進行直觀且便捷的重命名:
利用多重選詞進行重命名
有時我們需要對一片區(qū)域的所有行進行同時編輯,Ctrl + Shift + L
可以將當前選中區(qū)域打散,然后進行同時編輯:
利用打散為列表套上引號
有打散自然就有合并,Ctrl + J
可以把當前選中區(qū)域合并為一行:
合并選中行
查找&替換(Finding&Replacing)
Sublime Text 提供了強大的查找(和替換)功能,為了提供一個清晰的介紹,我將 Sublime Text 的查找功能分為 快速查找、標準查找 和 多文件查找 三種類型。
快速查找&替換
多數(shù)情況下,我們需要查找文中某個關(guān)鍵字出現(xiàn)的其它位置,這時并不需要重新將該關(guān)鍵字重新輸入一遍然后搜索,我們只需要使用 Shift + ←/→
或 Ctrl + D
選中關(guān)鍵字,然后 F3
跳到其下一個出現(xiàn)位置, Shift + F3
跳到其上一個出現(xiàn)位置,此外還可以用 Alt + F3
選中其出現(xiàn)的所有位置(之后可以進行多重編輯,也就是快速替換)。
使用快速替換
標準查找&替換
另一種常見的使用場景是搜索某個已知但不在當前顯示區(qū)域的關(guān)鍵字,這時可以使用 Ctrl + F
調(diào)出搜索框進行搜索:
Sublime Text的搜索框
以及使用 Ctrl + H
進行替換:
Sublime Text的替換框
關(guān)鍵字查找&替換
對于普通用戶來說,常規(guī)的關(guān)鍵字搜索就可以滿足其需求:在搜索框輸入關(guān)鍵字后 Enter
跳至關(guān)鍵字當前光標的下一個位置, Shift + Enter
跳至上一個位置, Alt + Enter
選中其出現(xiàn)的所有位置(同樣的,接下來可以進行快速替換)。
Sublime Text 的查找有不同的模式:Alt + C
切換大小寫敏感(Case-sensitive)模式, Alt + W
切換整字匹配(Whole matching)模式,除此之外Sublime Text還支持在選中范圍內(nèi)搜索(Search in selection),這個功能沒有對應(yīng)的快捷鍵,但可以通過以下配置項自動開啟。
"auto_find_in_selection": true
這樣之后在選中文本的狀態(tài)下范圍內(nèi)搜索就會自動開啟,配合這個功能,局部重命名(Local Renaming)變的非常方便:
使用范圍搜索進行局部重命名
使用 Ctrl + H
進行標準替換,輸入替換內(nèi)容后,使用 Ctrl + Shift + H
替換當前關(guān)鍵字, Ctrl + Alt + Enter
替換所有匹配關(guān)鍵字。
正則表達式查找&替換
正則表達式 是非常強大的文本查找&替換工具,Sublime Text中使用 Alt + R
切換正則匹配模式的開啟/關(guān)閉。Sublime Text的使用Boost里的Perl正則表達式風格。
出于篇幅原因,本文不會對正則表達式進行詳細介紹,Mastering Regex(中譯本:精通正則表達式)對正則表達式的原理和各語言下的使用進行了詳細介紹。此外網(wǎng)上有大量正則表達式的優(yōu)秀教程(“正則表達式30分鐘入門教程” 和 MSDN正則表達式教程),以及在線測試工具(regexpal 和 regexer)。
搜索Java知音公眾號,回復“后端面試”,送你一份Java面試題寶典.pdf
多文件搜索&替換
使用 Ctrl + Shift + F
開啟多文件搜索&替換(注意此快捷鍵和搜狗輸入法的簡繁切換快捷鍵有沖突):
多文件搜索界面
多文件搜索&替換默認在當前打開的文件和文件夾進行搜索/替換,我們也可以指定文件/文件夾進行搜索/替換。
跳轉(zhuǎn)(Jumping)
Sublime Text 提供了強大的跳轉(zhuǎn)功能使得我們可以在不同的文件/方法/函數(shù)中無縫切換。就我的使用經(jīng)驗而言,目前還沒有哪一款編輯器可以在這個方面超越Sublime Text。
跳轉(zhuǎn)到文件
Ctrl + P
會列出當前打開的文件(或者是當前文件夾的文件),輸入文件名然后 Enter
跳轉(zhuǎn)至該文件。
需要注意的是,Sublime Text使用模糊字符串匹配(Fuzzy String Matching),這也就意味著你可以通過文件名的前綴、首字母或是某部分進行匹配:例如, EIS
、 Eclip
和 Stupid
都可以匹配 EclipseIsStupid.java
。
跳轉(zhuǎn)到文件
跳轉(zhuǎn)到符號
盡管是一個文本編輯器,Sublime Text 能夠?qū)Υa符號進行一定程度的索引。Ctrl + R
會列出當前文件中的符號(例如類名和函數(shù)名,但無法深入到變量名),輸入符號名稱 Enter
即可以跳轉(zhuǎn)到該處。此外,還可以使用 F12
快速跳轉(zhuǎn)到當前光標所在符號的定義處(Jump to Definition)。
跳轉(zhuǎn)到符號
比較有意思的是,對于 Markdown, Ctrl + R
會列出其大綱,非常實用。
Markdown大綱
跳轉(zhuǎn)到某行
Ctrl + G
然后輸入行號以跳轉(zhuǎn)到指定行:
跳轉(zhuǎn)到某行
組合跳轉(zhuǎn)
在 Ctrl + P
匹配到文件后,我們可以進行后續(xù)輸入以跳轉(zhuǎn)到更精確的位置:
-
@
符號跳轉(zhuǎn):輸入@symbol
跳轉(zhuǎn)到symbol
符號所在的位置 -
#
關(guān)鍵字跳轉(zhuǎn):輸入#keyword
跳轉(zhuǎn)到keyword
所在的位置 -
:
行號跳轉(zhuǎn):輸入:12
跳轉(zhuǎn)到文件的第12行。
組合跳轉(zhuǎn)演示
所以 Sublime Text 把 Ctrl + P
稱之為 “Go To Anything”,這個功能如此好用,以至于我認為沒有其它編輯器能夠超越它。
中文輸入法的問題
從 Sublime Text 的初版(1.0)到現(xiàn)在(3.0 3065),中文輸入法(包括日文輸入法)都有一個問題:輸入框不跟隨。
輸入框不跟隨
目前官方還沒有修復這個 bug,解決方法是安裝 IMESupport
插件,之后重啟 Sublime Text 問題就解決了。
修復之后輸入框跟隨
文件夾(Folders)
Sublime Text 支持以文件夾做為單位進行編輯,這在編輯一個文件夾下的代碼時尤其有用。在 File
下 Open Folder
:
文件夾視圖
你會發(fā)現(xiàn)右邊多了一個側(cè)欄,這個側(cè)欄列出了當前打開的文件和文件夾的文件,使用 Ctrl + K, Ctrl + B
顯示或隱藏側(cè)欄,使用 Ctrl + P
快速跳轉(zhuǎn)到文件夾里的文件。
窗口&標簽(Windows & Tabs)
Sublime Text 是一個多窗口多標簽編輯器:我們既可以開多個Sublime Text窗口,也可以在一個Sublime Text窗口內(nèi)開多個標簽。
窗口(Window)
使用 Ctrl + Shift + N
創(chuàng)建一個新窗口(該快捷鍵再次和搜狗輸入法快捷鍵沖突,個人建議禁用所有搜狗輸入法快捷鍵)。
當窗口內(nèi)沒有標簽時,使用 Ctrl + W
關(guān)閉該窗口。
標簽(Tab)
使用 Ctrl + N
在當前窗口創(chuàng)建一個新標簽, Ctrl + W
關(guān)閉當前標簽, Ctrl + Shift + T
恢復剛剛關(guān)閉的標簽。
編輯代碼時我們經(jīng)常會開多個窗口,所以分屏很重要。Alt + Shift + 2
進行左右分屏, Alt + Shift + 8
進行上下分屏, Alt + Shift + 5
進行上下左右分屏(即分為四屏)。
各種分屏
分屏之后,使用 Ctrl + 數(shù)字鍵
跳轉(zhuǎn)到指定屏,使用 Ctrl + Shift + 數(shù)字鍵
將當前屏移動到指定屏。例如, Ctrl + 1
會跳轉(zhuǎn)到1屏,而 Ctrl + Shift + 2
會將當前屏移動到2屏。
全屏(Full Screen)
Sublime Text 有兩種全屏模式:普通全屏和無干擾全屏。
個人強烈建議在開啟全屏前關(guān)閉菜單欄(Toggle Menu),否則全屏效果會大打折扣。
F11
切換普通全屏:
普通全屏
Shift + F11
切換無干擾全屏:
無干擾全屏
風格(Styles)
風格對于任何軟件都很重要,對編輯器也是如此,尤其是GUI環(huán)境下的編輯器。作為一個程序員,我希望我的編輯器足夠簡潔且足夠個性。
Notepad++ 默認界面
Notepad++
Sublime Text 默認界面
Sublime Text
所以在用過 Sublime Text 之后,我立刻就卸掉了 Notepad++。
Sublime Text 自帶的風格是我喜歡的深色風格(也可以調(diào)成淺色),默認主題是Monokai Bright
,這兩者的搭配已經(jīng)很不錯了,不過我們還可以做得更好:接下來我將會展示如何通過設(shè)置偏好項和添加自定義風格/主題使得 Sublime Text 更加 Stylish。
一些設(shè)置(Miscellaneous Settings)
下面是我個人使用的設(shè)置項。
// 設(shè)置Sans-serif(無襯線)等寬字體,以便閱讀
"font_face": "YaHei Consolas Hybrid",
"font_size": 12,
// 使光標閃動更加柔和
"caret_style": "phase",
// 高亮當前行
"highlight_line": true,
// 高亮有修改的標簽
"highlight_modified_tabs": true,
設(shè)置之后的效果如下:
設(shè)置效果
主題(Themes)
Sublime Text 有大量第三方主題:[https://sublime.wbond.net/browse/labels/theme],這里我給出幾個個人感覺不錯的主題:
Soda Light
淺色版
Soda Dark
深色版
Nexus
Nexus
Flatland
Flatland
Spacegray Light
淺色版
Spacegray Dark
深色版
配色(Color)
colorsublime 包含了大量 Sublime Text 配色方案,并支持在線預(yù)覽,配色方案的安裝教程在 這里,恕不贅述。
我個人使用的是 Nexus 主題和 Flatland Dark 配色,配置如下:
"theme": "Nexus.sublime-theme",
"color_scheme": "Packages/Theme - Flatland/Flatland Dark.tmTheme",
效果如下:
Nexus+Flatland
編碼(Coding)
優(yōu)秀的編輯器使編碼變的更加容易,所以 Sublime Text 提供了一系列功能以提高開發(fā)效率。
良好實踐(Good Practices)
良好的代碼應(yīng)該是規(guī)范的,所以Google為每一門主流語言都設(shè)置了其代碼規(guī)范(Code Style Guideline)。我自己通過下面的設(shè)置使以規(guī)范化自己的代碼。
// 設(shè)置tab的大小為2
"tab_size": 2,
// 使用空格代替tab
"translate_tabs_to_spaces": true,
// 添加行寬標尺
"rulers": [80, 100],
// 顯示空白字符
"draw_white_space": "all",
// 保存時自動去除行末空白
"trim_trailing_white_space_on_save": true,
// 保存時自動增加文件末尾換行
"ensure_newline_at_eof_on_save": true,
代碼段(Code Snippets)
Sublime Text 支持代碼段(Code Snippet),輸入代碼段名稱后 Tab
即可生成代碼段。
代碼段效果
你可以通過Package Control安裝第三方代碼段,也可以自己創(chuàng)建代碼段,參考這里。
格式化(Formatting)
Sublime Text 基本的手動格式化操作包括:Ctrl + [
向左縮進, Ctrl + ]
向右縮進,此外 Ctrl + Shift + V
可以以當前縮進粘貼代碼(非常實用)。
除了手動格式化,我們也可以通過安裝插件實現(xiàn)自動縮進和智能對齊:
-
HTMLBeautify:格式化HTML。 -
AutoPEP8:格式化Python代碼。 -
Alignment:進行智能對齊。
自動完成(Auto Completion)
Sublime Text 支持一定的自動完成,按 Tab
自動補全。
自動完成
括號(Brackets)
編寫代碼時會碰到大量的括號,利用 Ctrl + M
可以快速的在起始括號和結(jié)尾括號間切換, Ctrl + Shift + M
則可以快速選擇括號間的內(nèi)容,對于縮進型語言(例如Python)則可以使用 Ctrl + Shift + J
。
括號演示
此外,我使用 BracketHighlighter 插件以高亮顯示配對括號以及當前光標所在區(qū)域,效果如下:
插件演示
命令行(Command Line)
盡管提供了 Python 控制臺,但 Sublime Text 的控制臺僅支持單行輸入,十分不方便,所以我使用 SublimeREPL 以進行一些編碼實驗(Experiments)。
SublimeREPL演示
其它(Miscellaneous)
盡管我試圖在本文包含盡可能多的 Sublime Text 實用技能,但受限于篇幅和我的個人經(jīng)驗,本文仍不免有所遺漏,歡迎在評論里指出本文的錯誤及遺漏。
下面是一些可能有用但我很少用到的功能:
-
宏(Macro):Sublime Text 支持錄制宏,但我在實際工作中并未發(fā)現(xiàn)宏有多大用處。 -
其它平臺(Other Platforms):本文只介紹了 Windows 平臺上 Sublime Text 的使用,不過 Linux 和 OS X 上Sublime Text的使用方式和Windows差別不大,只是在快捷鍵上有所差異,請參考 Windows/Linux快捷鍵 和 OS X 快捷鍵。 -
項目(Projects):Sublime Text支持簡單的 項目管理,但我一般只用到文件夾。 -
Vim模式(Vintage):Sublime Text自帶 Vim模式。 -
構(gòu)建(Build):通過配置,Sublime Text可以進行 源碼構(gòu)建。 -
調(diào)試(Debug):通過安裝 插件,Sublime Text 可以對代碼進行調(diào)試。
快捷鍵列表(Shortcuts Cheatsheet)
我把本文出現(xiàn)的Sublime Text按其類型整理在這里,以便查閱。
通用(General)
-
↑↓←→
:上下左右移動光標,注意不是不是KJHL
! -
Alt
:調(diào)出菜單 -
Ctrl + Shift + P
:調(diào)出命令板(Command Palette) -
`Ctrl + ``:調(diào)出控制臺
編輯(Editing)
-
Ctrl + Enter
:在當前行下面新增一行然后跳至該行 -
Ctrl + Shift + Enter
:在當前行上面增加一行并跳至該行 -
Ctrl + ←/→
:進行逐詞移動 -
Ctrl + Shift + ←/→
進行逐詞選擇 -
Ctrl + ↑/↓
移動當前顯示區(qū)域 -
Ctrl + Shift + ↑/↓
移動當前行
選擇(Selecting)
-
Ctrl + D
:選擇當前光標所在的詞并高亮該詞所有出現(xiàn)的位置,再次Ctrl + D
選擇該詞出現(xiàn)的下一個位置,在多重選詞的過程中,使用Ctrl + K
進行跳過,使用Ctrl + U
進行回退,使用Esc
退出多重編輯 -
Ctrl + Shift + L
:將當前選中區(qū)域打散 -
Ctrl + J
:把當前選中區(qū)域合并為一行 -
Ctrl + M
:在起始括號和結(jié)尾括號間切換 -
Ctrl + Shift + M
:快速選擇括號間的內(nèi)容 -
Ctrl + Shift + J
:快速選擇同縮進的內(nèi)容 -
Ctrl + Shift + Space
:快速選擇當前作用域(Scope)的內(nèi)容
查找&替換(Finding&Replacing)
-
F3
:跳至當前關(guān)鍵字下一個位置 -
Shift + F3
:跳到當前關(guān)鍵字上一個位置 -
Alt + F3
:選中當前關(guān)鍵字出現(xiàn)的所有位置 -
Ctrl + F/H
:進行標準查找/替換,之后: -
Alt + C
:切換大小寫敏感(Case-sensitive)模式 -
Alt + W
:切換整字匹配(Whole matching)模式 -
Alt + R
:切換正則匹配(Regex matching)模式 -
Ctrl + Shift + H
:替換當前關(guān)鍵字 -
Ctrl + Alt + Enter
:替換所有關(guān)鍵字匹配 -
Ctrl + Shift + F
:多文件搜索&替換
跳轉(zhuǎn)(Jumping)
-
Ctrl + P
:跳轉(zhuǎn)到指定文件,輸入文件名后可以: -
@
符號跳轉(zhuǎn):輸入@symbol
跳轉(zhuǎn)到symbol
符號所在的位置 -
#
關(guān)鍵字跳轉(zhuǎn):輸入#keyword
跳轉(zhuǎn)到keyword
所在的位置 -
:
行號跳轉(zhuǎn):輸入:12
跳轉(zhuǎn)到文件的第12行。 -
Ctrl + R
:跳轉(zhuǎn)到指定符號 -
Ctrl + G
:跳轉(zhuǎn)到指定行號
窗口(Window)
-
Ctrl + Shift + N
:創(chuàng)建一個新窗口 -
Ctrl + N
:在當前窗口創(chuàng)建一個新標簽 -
Ctrl + W
:關(guān)閉當前標簽,當窗口內(nèi)沒有標簽時會關(guān)閉該窗口 -
Ctrl + Shift + T
:恢復剛剛關(guān)閉的標簽
屏幕(Screen)
-
F11
:切換普通全屏 -
Shift + F11
:切換無干擾全屏 -
Alt + Shift + 2
:進行左右分屏 -
Alt + Shift + 8
:進行上下分屏 -
Alt + Shift + 5
:進行上下左右分屏 -
分屏之后,使用 Ctrl + 數(shù)字鍵
跳轉(zhuǎn)到指定屏,使用Ctrl + Shift + 數(shù)字鍵
將當前屏移動到指定屏
特別推薦一個分享架構(gòu)+算法的優(yōu)質(zhì)內(nèi)容,還沒關(guān)注的小伙伴,可以長按關(guān)注一下:
長按訂閱更多精彩▼
如有收獲,點個在看,誠摯感謝
免責聲明:本文內(nèi)容由21ic獲得授權(quán)后發(fā)布,版權(quán)歸原作者所有,本平臺僅提供信息存儲服務(wù)。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!