vscode 鍵盤操作

2022-08-08 15:01 更新

VSCode 鍵盤操作,做到雙手不離鍵盤,今天先來談一談核心的鍵盤操作:光標的移動、文本的選擇、文本的刪除,以及如何為編輯器命令綁定快捷鍵。

光標移動

移動光標最常用的就是方向鍵,但是方向鍵每次只能把光標移動一個位置,可以說是一種相對低效的方式。試想你打算把光標移動到當前行的行末,在沒有鼠標的情況下,你可能需要按下右方向鍵幾秒甚至十幾秒鐘。

不過,不用擔心。雖然 VS Code 是基于 Web 技術(shù)開發(fā)的非原生應(yīng)用,但是它支持針對單詞、行、代碼塊、整個文檔等多種光標移動方式。

今天,我會借助一段非常簡單的 5 行 JavaScript 代碼來講解這些操作。

function foo() {
  bar();
}

foo();

JavaScript

首先是針對單詞的光標移動。這個你應(yīng)該比較熟悉,絕大多數(shù)原生的編輯應(yīng)用和文本框都支持。這也是我自己最常用的一組快捷鍵。

下面這張圖顯示,第一行代碼中的第一個單詞是 function,一共8個字符,光標的位置在第五個字符 t 的后面。當你想把光標直接移動到整個單詞,也就是 function 的前面,你只需按下 Option(Windows 上是 Ctrl 鍵)和左方向鍵。相反,如果要把光標移動到單詞的末尾,只需要按下 Option 和右方向鍵就好了。

我們都知道,一直按著方向鍵,光標就可以不停地,一個字符一個字符地在文檔中移動。但如果你同時按住 Option 和方向鍵,那么光標移動的顆粒度就變成了單詞,你就可以在文檔中以單詞為單位不停地移動光標了。

第二種方式是把光標移動到行首或者行末。比如第一行代碼是 function foo() {,你只需按住 Cmd + 左方向鍵(Windows 上是 Home 鍵),就可以把光標移動到了這行的第一列;而如果你按住 Cmd 和右方向鍵(Windows 上是 End 鍵),光標就會被移動到 { 的后面。

接下來一種是對于代碼塊的光標移動。很多編程語言都使用花括號將代碼塊包裹起來,比如 if、for 語句等,你很可能會希望通過一個快捷鍵,就能實現(xiàn)在代碼塊的始末快速跳轉(zhuǎn)。比如在這5行代碼示例中,第一行到第三行代碼是函數(shù) foo 的定義,由一對花括號包裹起來,當你把光標放在花括號上時,只需按下 Cmd + Shift + (Windows 上是 Ctrl + Shift + ),就可以在這對花括號之間跳轉(zhuǎn)。

最后一種基礎(chǔ)的光標操作就是移動到文檔的第一行或者最后一行,你只需按下 Cmd 和上下方向鍵即可(Windows 上是 Ctrl + Home/End 鍵)。

文本選擇

掌握了上面的快捷鍵之后,你還可以非常輕松地掌握文本選擇的操作。因為對于基于單詞、行和整個文檔的光標操作,你只需要多按一個 Shift 鍵,就可以在移動光標的同時選中其中的文本。

比如說,你把光標放在第一行代碼第四個字符 c 的后面,按下 Option 加左方向鍵,你就可以把光標跳轉(zhuǎn)到 function 這個單詞的開頭,這個在前面我有講過。如果你同時按下 Option + 左方向鍵+ Shift 鍵,那么你就能把光標到 function 單詞開頭之間的所有字符全部選中,也就是選中 func 這四個字符。

同理,假設(shè)說光標放在第二行,然后你按下 Cmd、Shift 和上下方向鍵,就能把第二行光標到第一行,或者最后一行之間的字符選中。是不是很簡單呢?

對于代碼塊的文本選擇, VS Code 默認沒有綁定快捷鍵。那么,是不是就沒辦法了呢?

當然不是。你可以先使用命令面板找到命令 “選擇括號所有內(nèi)容” 并運行。后面我還會講述如何為一些未綁定快捷鍵的命令綁定自己熟悉的快捷鍵,請稍安勿躁。

刪除操作

了解了光標移動和文本選擇,再來看刪除操作,就變得相對簡單了。

比如你想把當前行中光標之前的文本全部刪除,就可以先選中這段文本(Windows/Linux: Home + Shift,macOS: Cmd + Left + Shift ),然后再按刪除鍵。不過對于頻繁使用的刪除操作,你肯定希望單次操作就可以完成任務(wù),而不是重復(fù)地選擇文本然后刪除,那么你需要記住下面幾個命令。

(1)假設(shè)你把光標放在第二行代碼的中間位置,然后按下 Cmd 和 Backspace(MacOS上就是“fn + delete”的組合,Windows 上未綁定快捷鍵,可以打開命令面板運行“刪除右側(cè)所有內(nèi)容”),就能夠把第二行代碼光標后(右側(cè))的字符全部刪掉。

(2)按下 Cmd 和 Delete 鍵則是刪除當前行中光標前(左側(cè))的所有內(nèi)容(Windows 上未綁定快捷鍵,可以打開命令面板運行“刪除左側(cè)所有內(nèi)容”)。

(3)刪除單詞內(nèi)的字符與此類似。假設(shè)把光標放在第一行第四個字符 c 的后面。Option 加左方向鍵把光標移動到 function 這個單詞的開頭,Option加左方向鍵再加 Shift 即可選中 func 這四個字符,而Option 加 Delete 則會刪除 func 這四個字符。這里你可能看出來了,這些快捷鍵共同的是 Option 鍵,然后通過按下 Shift 或者 Delete 鍵,來達到不同的效果。

(4)相反地,Option 加 Backspace(MacOS上就是“fn + delete”的組合) 則會刪除 function 的后四個字符 tion。

自定義快捷鍵

前面我們提到,VS Code 內(nèi)置了很多的命令,但是并沒有為每個命令都提供一個快捷鍵,畢竟快捷鍵的組合總是有限的。不過 VS Code 提供了快捷鍵的修改和自定義功能,這樣你就可以根據(jù)自己的使用習慣,給自己常用的命令指定順手的快捷鍵。

首先你可以打開命令面板(你還記得它的快捷鍵不?),搜索“打開鍵盤快捷方式”然后執(zhí)行,這時你將看到相對應(yīng)的界面。


然后通過搜索找到你希望修改快捷鍵的命令,雙擊,接下來你只要按下你期望的快捷鍵,最后按下回車鍵就可以了。


比如,你可以搜索“選擇括號內(nèi)所有內(nèi)容”,雙擊,按下”Cmd + Shift + ]”,然后按下回車,這個快捷鍵就綁定上了。

有了這個快捷鍵,你就不需要打開命令面板找到這個命令再執(zhí)行了??吹竭@里你可能會問,“如果我按下某個快捷鍵所綁定的命令不是我想要的,但是我又不知道這個命令的名字怎么辦?”

VS Code 的快捷鍵修改界面已經(jīng)考慮到了這一點,你可以在搜索框內(nèi)搜索你使用的快捷鍵,然后就可以看到這個快捷鍵當前對應(yīng)的命令是哪個。

比如,在上面的示例里,你通過搜索 “cmd+backspace”這組快捷鍵,發(fā)現(xiàn)它對應(yīng)的命令是“刪除左側(cè)所有內(nèi)容”,但你不希望使用這個命令,那你就可以通過右鍵選擇刪除該快捷鍵的綁定。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號