GitHub Copilot 快捷鍵速查:VS Code 中的所有 Copilot 指令

完整收錄 GitHub Copilot 在 VS Code 中的所有快捷鍵,包含程式碼補全接受、建議面板、Inline Chat、Copilot Chat 側欄,macOS 和 Windows 對照表一次看清楚。

資料來源: GitHub Copilot 官方文件

為什麼要記住 Copilot 快捷鍵?

GitHub Copilot 的功能入口分散在三個地方:行內補全提示、Inline Chat 和側欄 Copilot Chat。熟悉對應的快捷鍵,可以在不中斷打字節奏的情況下快速切換 AI 輔助模式。

本文以 VS Code 為主,JetBrains 快捷鍵另附說明。


程式碼補全快捷鍵(VS Code)

動作 macOS Windows / Linux
接受完整建議 Tab Tab
拒絕建議 Esc Esc
接受下一個詞 Opt+Right(→) Alt+Right(→)
手動觸發建議 Opt+\ Alt+\
開啟建議面板(多選項) Ctrl+Enter Ctrl+Enter
查看下一個建議 Opt+] Alt+]
查看上一個建議 Opt+[ Alt+[

補全技巧

部分接受(Partial Accept):按 Opt/Alt+Right 可以一次只接受建議的一個詞,而不是整行。這在你想要 AI 的建議,但只需要其中一部分時很有用。

建議面板:按 Ctrl+Enter 可以在側欄看到 Copilot 為當前位置準備的多個不同建議,適合在你不滿意第一個建議時使用。


Inline Chat 快捷鍵

動作 macOS Windows / Linux
開啟 Inline Chat Cmd+I Ctrl+I
送出指令 Enter Enter
接受 AI 修改 Cmd+Enter Ctrl+Enter
拒絕 AI 修改 Esc Esc
重新生成 點擊重新整理按鈕 點擊重新整理按鈕

Inline Chat 的 / 指令

在 Inline Chat 中輸入 / 可以快速呼叫特定動作:

指令 功能
/explain 解釋選取的程式碼
/fix 修復選取程式碼中的問題
/tests 為選取的函式生成測試
/doc 生成 JSDoc 或文件註解

Copilot Chat 側欄快捷鍵

動作 macOS Windows / Linux
開啟 Copilot Chat Cmd+Shift+I Ctrl+Shift+I
送出訊息 Enter Enter
換行(不送出) Shift+Enter Shift+Enter
清除對話 垃圾桶圖示 垃圾桶圖示

Copilot Chat 的 / 指令

指令 功能
/explain 解釋選取或整個工作區的程式碼
/fix 找出並修復問題
/tests 生成單元測試
/doc 生成文件
/clear 清除對話歷史
/help 查看所有可用指令

Chat 中的 @mentions

在 Copilot Chat 中使用 @ 指定上下文範圍:

指令 說明
@workspace 詢問關於整個工作區的問題
@vscode 詢問 VS Code 設定和功能
@terminal 詢問終端機指令相關問題

例如:「@workspace 這個專案的認證邏輯在哪裡?」


JetBrains IDE 快捷鍵

動作 macOS Windows / Linux
接受建議 Tab Tab
拒絕建議 Esc Esc
接受下一個詞 Opt+Right Alt+Right
手動觸發建議 Opt+\ Alt+\
開啟 Copilot Chat 工具列圖示 工具列圖示

JetBrains 版本的 Copilot 功能和 VS Code 版本相似,但介面整合在 JetBrains 的工具視窗中。


自訂快捷鍵

在 VS Code 中可以修改所有 Copilot 快捷鍵:

  1. 開啟命令面板(Cmd/Ctrl+Shift+P)
  2. 搜尋「Open Keyboard Shortcuts」
  3. 搜尋「Copilot」找到所有相關指令
  4. 點擊旁邊的鉛筆圖示修改

常見問題

Q:按 Tab 接受建議後,如果不滿意可以撤銷嗎? A:可以,接受建議後立刻按 Cmd/Ctrl+Z 就可以撤銷。這和一般的撤銷操作相同,Copilot 的建議被視為一般的文字輸入。

Q:為什麼有時候 Copilot 的補全建議不出現? A:常見原因有幾個:一、右下角 Copilot 圖示顯示停用(點擊可重新啟用);二、目前游標位置的上下文不足讓 AI 產生建議;三、已達到免費方案的月度限制。可以試試手動按 Opt/Alt+\ 觸發建議。

Q:Inline Chat(Ctrl+I)和 Chat 側欄(Ctrl+Shift+I)的差別是什麼? A:Inline Chat 在程式碼編輯器中原地顯示,適合針對特定程式碼的小範圍修改,修改結果可以直接預覽和接受。Chat 側欄是獨立的對話視窗,適合問題詢問、解釋和需要較長回應的任務。