玩轉(zhuǎn)VS Code

~工欲善其事? 必先利其器~

(以下快捷鍵操作針對(duì) windows,括號(hào)里是針對(duì) macOS)

學(xué)習(xí)新的編輯器方法:

第一步:了解編輯器的快捷鍵和語(yǔ)言支持,快捷鍵值得多花時(shí)間;

第二步:開(kāi)始挑剔編輯器的其他組件,但凡是跟自己的工作習(xí)慣或者工作流不匹配的,就會(huì)想辦法換掉它,這是個(gè)做減法的過(guò)程;

第三步:最后一步,就是自己學(xué)習(xí)寫(xiě)插件了,編輯器本身的功能和社區(qū)不能夠完全滿足自己的需求,本著“麻煩別人不如磨煉自己”的精神,我開(kāi)始自己動(dòng)手。?

這個(gè)過(guò)程可以作為一個(gè)通用的學(xué)習(xí)新工具的方法。下面是我整理的日常工作中用到的快捷鍵和一些插件(一些常用插件就沒(méi)有整理)。

code 命令行

code --help ------------------------打印命令行所支持的所有參數(shù)。

code 命令后加上文件或文件夾的地址-----------vscode 會(huì)在一個(gè)新窗口打開(kāi)這個(gè)文件或文件夾

code 命令后添加參數(shù)-r ----------可以進(jìn)行窗口的復(fù)用。

code -r -g 文件名:行數(shù) ---------打開(kāi)某個(gè)文件并自動(dòng)跳到某一行。

code -r -d 文件 1 文件 2 ---------比較兩個(gè)文件的內(nèi)容

ls | code -r -? ? ?---------------------在編輯器里顯示當(dāng)前項(xiàng)目目錄下所有的文件名

基本鍵盤(pán)操作

Ctrl(Option) 鍵搭配方向鍵,home,end -----------主要是針對(duì)光標(biāo)的移動(dòng);

shift 鍵搭配方向鍵,home,end ---------------------主要是針對(duì)文本的選擇;

快捷鍵進(jìn)階

ctrl+shift+k (Cmd+shift+k) ----------------------------刪除當(dāng)前代碼行;

ctrl+x/c/v (Cmd+x/c/v) ---------------------------------剪切/復(fù)制/粘貼當(dāng)前代碼行;

ctrl+enter/ctrl+shift+enter(Cmd+enter/Cmd+shift+enter) -------------------------------在當(dāng)前行的下面或者上面開(kāi)始一段新的代碼;

Alt+上下方向鍵(Option+上下方向鍵) -----------------上下移動(dòng)當(dāng)前行。如果同時(shí)按住 shift,則是上下復(fù)制當(dāng)前行;

Alt+shift+f(Option+shift+f) ---------------------------對(duì)整個(gè)文檔進(jìn)行格式化(插件也可以);

ctrl+shift+p —— 轉(zhuǎn)置游標(biāo)處的字符(ctrl+t) 調(diào)換字符位置;

ctrl+shift+p —— 轉(zhuǎn)換為大寫(xiě)/小寫(xiě) 調(diào)整字符大小寫(xiě);

ctrl+shift+p —— 合并行(ctrl+j) 合并代碼行;

ctrl+shift+p —— 按升/降序排列行;

ctrl+u(cmd+u)撤銷(xiāo)光標(biāo)的移動(dòng)和選擇;

小技巧:

? ? ?(1).批量重命名:選中變量/方法名,按 f2,編輯新名字。所有相關(guān)的實(shí)例名字都會(huì)被修改。

!多光標(biāo)

按住 alt (option)點(diǎn)擊,可以創(chuàng)建多個(gè)光標(biāo)。?

選中第一個(gè)后,按 ctrl+D(cmd+D) 處理多次出現(xiàn)的相同內(nèi)容。

文件,符號(hào),代碼之間跳轉(zhuǎn)

ctrl+tab -----------文件跳轉(zhuǎn)

ctrl+p(cmd+p) ---------最近打開(kāi)文件的列表,支持搜索

ctrl+g 行跳轉(zhuǎn)-----------直接輸入行數(shù)即可。

ctrl+p(cmd+p) --------某個(gè)文件某一行跳轉(zhuǎn)。eg:main.js:99

符號(hào):類(lèi)定義,函數(shù)定義等等

ctrl+shift+o(cmd+shift+o)當(dāng)前文件里所有符號(hào)。在@后輸入:會(huì)將所有符號(hào)進(jìn)行分類(lèi)。

ctrl+t(cmd+t) 在所有打開(kāi)的文件中搜索符號(hào)。

ctrl/F12 跳轉(zhuǎn)到函數(shù)定義的位置

shift+f12 打開(kāi)函數(shù)引用預(yù)覽

書(shū)寫(xiě) code snippet(代碼片段)

代碼片段:將一段常用代碼抽象成模板。直接調(diào)用即可。

1. ctrl+shift+p 打開(kāi)命令面板,搜索“配置用戶代碼片段”回車(chē)打開(kāi)。在列表選擇語(yǔ)言;eg:JavaScript

2. 這時(shí)打開(kāi)一個(gè)下圖的 JSON 文件,我們把 7-14 行取消注釋。?


代碼片段

?必須要有“prefix”前綴和“body”內(nèi)容這兩個(gè)屬性.“description”不是必須的。

3. Tab Stop -------$1,$2。意思是當(dāng)我們按下 Tab 鍵之后,光標(biāo)移動(dòng)到的位置。默認(rèn)移到$1。shift+tab 移到上一個(gè) tab stop 的位置。


Tab Stop

4. 占位符。${1:label},在這個(gè)格式下,$1 的位置處會(huì)預(yù)先填入 label 這個(gè)值,并且選中。?


占位符

5. 多光標(biāo)。在代碼片段的多個(gè)位置使用同樣的 tab stop。使用代碼片段是就會(huì)出現(xiàn)多個(gè)光標(biāo)。?


多光標(biāo)

6. 預(yù)設(shè)變量。eg:在某個(gè)位置使用剪切板的內(nèi)容,那個(gè)位置寫(xiě)上$CLIPBOARD就可以了。放在tab stop中 語(yǔ)法是 ${1:$CLIPBOARD}。

代碼折疊,小地圖,面包屑

1. 代碼折疊不用說(shuō)了,就是通過(guò)控制每段代碼塊前面的+/-,來(lái)實(shí)現(xiàn)代碼的折疊。說(shuō)一下它的快捷鍵。

折疊:ctrl+shift+左方括號(hào)(cmd+option+左方括號(hào)),當(dāng)前光標(biāo)所處的最內(nèi)層,可以被折疊的代碼就會(huì)被折疊起來(lái);ctrl+k,ctrl+0(cmd+k,cmd+0),當(dāng)前文件里所有可以被折疊的代碼一次性全部折疊起來(lái)。

展開(kāi):ctrl+shift+右方括號(hào)(cmd+option+右方括號(hào)),展開(kāi)最內(nèi)層,可以被展開(kāi)的代碼塊;ctrl+k,ctrl+j(cmd+k,cmd+j),當(dāng)前文件里所有可以被展開(kāi)的代碼一次性全部展開(kāi)。

基于語(yǔ)言定義代碼折疊:(通過(guò)下圖的方式包裹要折疊的代碼塊)?


2. 小地圖和面包屑

工作區(qū)常用快捷鍵


Markdown

如今 Markdown 已經(jīng)成為主流的文檔書(shū)寫(xiě)語(yǔ)言。在 VS Code 中書(shū)寫(xiě) Markdown 時(shí),VS Code 提供了語(yǔ)法高亮和側(cè)邊預(yù)覽的效果。

前面介紹過(guò)如何在符號(hào)中快速跳轉(zhuǎn),這個(gè)功能在 Markdown 中更加方便??梢酝ㄟ^(guò)符號(hào),快速的在不同的章節(jié)直接進(jìn)行跳轉(zhuǎn)。?

?當(dāng)然如果你打開(kāi)了面包屑功能的話,你也可以通過(guò)面包屑工具欄跳轉(zhuǎn)。

插件整理

1. Auto Close Tag ----------------自動(dòng)閉合html標(biāo)簽。

2. Auto Rename Tag ------------修改html標(biāo)簽時(shí),自動(dòng)修改匹配的標(biāo)簽。

3. Code Spell Checker ----------單詞拼寫(xiě)檢查。

4. Copy Relative Path -----------獲取文件相對(duì)路徑。

5. Bracket Pair Colorizer --------使用顏色標(biāo)識(shí)匹配的括號(hào)。當(dāng)你擁有深層嵌套的對(duì)象或函數(shù)時(shí),這個(gè)插件非常有用。

6. GitLens ---------------------------單擊代碼行就可以看到編輯它的人,時(shí)間,提交的內(nèi)容。

7. Code Runner -------------------代碼片段運(yùn)行調(diào)試,支持多種語(yǔ)言。

8. Remove Comments -----------一鍵刪除當(dāng)前文件的注釋?zhuān)С?0多種語(yǔ)言。

9. Image preview ------------------實(shí)現(xiàn)圖片預(yù)覽功能。

10.?Reactjs code snippets? -------React代碼片段。


11. cssrem-------------------------- css值轉(zhuǎn)rem。

12. SC Copy---------------------- 復(fù)制粘貼管理器,可通過(guò)ctrl +1,ctrl +2,ctrl +3...以此類(lèi)推,復(fù)制多個(gè),粘貼則是Alt+1,Alt+2,Alt+3...一一對(duì)應(yīng)粘貼的內(nèi)容。

結(jié)語(yǔ)

歡迎各位指正和補(bǔ)充,謝謝。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容