怎樣在VSCode中設置鍵盤快捷鍵?提高編碼效率的技巧

自定義vscode鍵盤快捷鍵的兩種主要方式是通過用戶界面(ui)操作和直接編輯 keybindings.json 文件。通過ui操作:打開vscode,點擊左下角齒輪圖標,選擇“鍵盤快捷方式”或使用 ctrl+k ctrl+s,搜索命令后點擊加號設置快捷鍵組合,或雙擊已有的快捷鍵進行修改。直接編輯 keybindings.json 文件:在鍵盤快捷方式界面右上角點擊“打開鍵盤快捷方式(json)”圖標,進入文件后以json格式添加或修改快捷鍵,包括 key、command 和 when 條件,例如 { “key”: “ctrl+alt+f”, “command”: “editor.action.formatdocument”, “when”: “editortextfocus” }。找到命令id的方法包括在ui界面懸停查看、使用命令面板(ctrl+shift+p)查看括號內的id,或查閱擴展文檔。設置時需注意避免快捷鍵沖突,可通過覆蓋或使用 when 子句精確控制生效條件。最佳實踐包括從常用功能開始設置、避免過度配置、保持一致性、定期備份配置,并根據工作流變化持續優化調整。

怎樣在VSCode中設置鍵盤快捷鍵?提高編碼效率的技巧

在VSCode中設置鍵盤快捷鍵,核心就是通過修改 keybindings.json 文件,或者直接在圖形界面里操作。這就像給你的編碼工具箱裝上了一套專屬的變速箱,能讓你的手指始終保持在鍵盤上,大幅減少鼠標操作,從而顯著提升編碼效率。

怎樣在VSCode中設置鍵盤快捷鍵?提高編碼效率的技巧

解決方案

要自定義VSCode的鍵盤快捷鍵,你有兩種主要方式:

怎樣在VSCode中設置鍵盤快捷鍵?提高編碼效率的技巧

  1. 通過用戶界面(UI)操作:

    • 打開VSCode,點擊左下角的齒輪圖標(管理),選擇“鍵盤快捷方式”(或者直接使用快捷鍵 Ctrl+K Ctrl+S)。
    • 你會看到一個搜索框,在這里可以搜索你想要設置快捷鍵的命令,比如“格式化文檔”或“切換終端”。
    • 找到對應的命令后,將鼠標懸停在其上,點擊左側的加號圖標。
    • 此時會彈出一個小窗口,讓你按下想要的快捷鍵組合。輸入后按回車確認即可。
    • 如果你想修改已有的快捷鍵,也可以在列表中找到它,雙擊或右鍵點擊進行編輯。
  2. 直接編輯 keybindings.json 文件:

    怎樣在VSCode中設置鍵盤快捷鍵?提高編碼效率的技巧

    • 同樣通過 Ctrl+K Ctrl+S 打開鍵盤快捷方式界面。
    • 在界面的右上角,你會看到一個“打開鍵盤快捷方式(JSON)”的圖標,點擊它就會打開 keybindings.json 文件。
    • 這個文件是一個json數組,每個對象代表一個快捷鍵設置。一個典型的設置包括 key(快捷鍵組合)、command(要執行的命令ID)和可選的 when(上下文條件)。
    • 示例:
      [     {         "key": "ctrl+alt+f",         "command": "editor.action.formatDocument",         "when": "editorTextFocus"     },     {         "key": "ctrl+shift+t",         "command": "workbench.action.terminal.toggleTerminal",         "when": "editorFocus || terminalFocus"     } ]

      上面這個例子,第一個是設置 Ctrl+Alt+F 為格式化文檔,并且只有當編輯器有焦點時才生效。第二個是 Ctrl+Shift+T 用于切換終端,無論編輯器還是終端有焦點都可以。直接在這里添加或修改,保存文件后就會立即生效。我個人更傾向于直接編輯JSON文件,因為這樣可以更精確地控制 when 條件,而且復制粘貼也方便。

為什么自定義快捷鍵是提升編碼效率的“秘密武器”?

說實話,很多人可能覺得鼠標點點也挺快的,或者記住那么多快捷鍵太麻煩了。但我覺得,自定義快捷鍵遠不止“快那么一點點”這么簡單。它更像是一種思維模式的轉變,把你的手從鼠標上解放出來,讓你的大腦和手指形成一種流暢的協作。想象一下,你的思緒正隨著代碼飛舞,突然要格式化一下,或者切換個文件,如果每次都要去摸鼠標、找菜單,那種心流(flow)瞬間就被打斷了。而一個自定義的快捷鍵,就像你身體的延伸,一個指令下去,動作就完成了,你的思維可以持續在代碼邏輯上。

我個人就有很多常用的快捷鍵,比如快速注釋、快速復制一行、甚至是一些特定插件的命令。一開始確實需要一點時間去適應和記憶,甚至會犯一些“肌肉記憶”的錯誤。但一旦形成習慣,那種效率提升是肉眼可見的。你不再需要思考“這個功能在哪兒”,而是直接“按下去”,這種無縫的感覺,能讓你更專注于解決問題本身,而不是工具的使用。它真正做到了讓工具“隱形”,只留下你的創造力。

如何找到并利用VSCode的“隱藏”命令ID?

要設置快捷鍵,你得知道你想執行的命令對應的“ID”是什么,就像你知道一個人的名字才能叫他一樣。這些命令ID有時候確實有點“隱藏”,但找到它們并不難。

最直接的方法是在“鍵盤快捷方式”的UI界面里找。你搜索一個功能,比如“切換側邊欄”,當鼠標懸停在對應的命令上時,它的命令ID通常會顯示出來,比如 workbench.action.toggleSidebarVisibility。

另一個非常實用的技巧是使用命令面板(Ctrl+Shift+P)。當你打開命令面板并輸入你想要執行的操作時,比如“格式化文檔”,命令面板會列出相關的命令。很多時候,命令后面括號里就會直接顯示它的ID,比如 Format Document (editor.action.formatDocument)。這是一個我經常用的方法,因為它既能找到命令,又能直接看到ID,一舉兩得。

此外,如果你安裝了某個擴展,想為其設置快捷鍵,通常這些擴展的官方文檔或gitHub頁面上會列出它們提供的命令ID。開發者通常會把這些信息放在“貢獻點”(contributions)或“命令”(commands)部分。有時候,你需要自己去探索一下,比如試著在命令面板里輸入擴展名,看看它會列出哪些命令。

設置快捷鍵時有哪些“坑”和最佳實踐?

設置快捷鍵的過程中,確實會遇到一些小麻煩,但也有很多方法可以避免它們,讓你的配置更順手。

最大的“坑”就是快捷鍵沖突。你設置了一個快捷鍵,結果發現它和VSCode內置的某個功能沖突了,或者和你安裝的某個擴展的快捷鍵沖突了。這時候,你按下去可能不是你想要的結果,或者兩個功能都想響應,導致行為不確定。解決沖突的方法,在UI界面里,VSCode會明確告訴你哪個快捷鍵沖突了,你可以選擇覆蓋。而在 keybindings.json 里,你需要利用 when 子句來精確控制快捷鍵的生效條件。

關于 when 子句,這絕對是 keybindings.json 里最強大也最容易被忽視的部分。它決定了你的快捷鍵在什么上下文(context)下才有效。比如:

  • “when”: “editorTextFocus”:只在文本編輯器有焦點時生效。
  • “when”: “terminalFocus”:只在終端有焦點時生效。
  • “when”: “explorerViewletFocus”:只在文件管理器有焦點時生效。
  • “when”: “editorTextFocus && !findWidgetVisible”:在編輯器有焦點,并且查找/替換框不可見時生效。
  • “when”: “debugState == ‘running'”:只在調試器運行時生效。 靈活運用 when 子句,可以讓你為同一個快捷鍵設置不同的行為,比如 Ctrl+D 在編輯器里可能是選中下一個相同單詞,但在終端里可能就是刪除光標后的內容。

最佳實踐方面,我建議:

  1. 從常用功能開始: 不要一開始就想著把所有功能都設置快捷鍵。先從你每天都會用幾十次的功能開始,比如保存、格式化、切換文件、打開終端、運行調試等等。這些是投入回報率最高的。
  2. 避免過度: 并不是所有操作都需要快捷鍵。有些功能可能一星期才用一次,為它專門設置一個快捷鍵并記憶,反而會增加你的認知負擔。鼠標點一下可能更快。
  3. 保持一致性: 盡量讓你的快捷鍵設置保持一定的邏輯和一致性。比如,所有與“打開”相關的操作都用 Ctrl+O 開頭,所有與“切換”相關的都用 Ctrl+Tab 或 Ctrl+Shift+T 變體。
  4. 備份你的配置: keybindings.json 是你的個性化配置,建議定期備份,或者使用VSCode的設置同步功能,這樣換電腦或重裝系統時,你的“效率利器”也能快速恢復。
  5. 多嘗試,多調整: 你的工作流會隨著時間變化,你的快捷鍵設置也應該隨之調整。不要害怕嘗試新的組合,或者刪除那些你不再使用的。這是一個持續優化的過程。

? 版權聲明
THE END
喜歡就支持一下吧
點贊7 分享