GitHub Copilot 在 VS Code 中的速查表
Visual Studio Code 中的 GitHub Copilot 提供 AI 驅動的功能,協助您更快速且更輕鬆地編寫程式碼。本速查表快速概觀 Visual Studio Code 中 GitHub Copilot 的功能。
您可以透過聊天檢視、直接在編輯器中、從整合式終端機,以及透過 VS Code 使用者介面中 AI 驅動的增強功能,存取 VS Code 中的 GitHub Copilot。
如果您還沒有 Copilot 訂閱,您可以註冊 Copilot 免費方案,並取得每月完成次數和聊天互動的限制,即可免費使用 Copilot。
團隊持續致力於改進 VS Code 中的 Copilot 並新增功能。某些功能仍為實驗性。請試用這些功能,並在我們的問題追蹤中分享您的意見反應。
與 GitHub Copilot 聊天
使用自然語言與 GitHub Copilot 聊天,並取得程式碼撰寫工作的協助。例如,要求 Copilot 解釋程式碼區塊或程式設計概念。取得關於使用 Copilot 聊天的更多資訊。
動作 | 描述 |
---|---|
⌃⌘I (Windows、Linux Ctrl+Alt+I) | 開啟聊天檢視,並使用自然語言開始與 Copilot 的聊天對話。 |
⇧⌘I (Windows Ctrl+Shift+I、Linux Ctrl+Shift+Alt+I) | 開啟 Copilot 編輯檢視,並跨多個檔案開始程式碼編輯工作階段。 |
⇧⌥⌘L (Windows、Linux Ctrl+Shift+Alt+L) | 開啟快速聊天,並向 Copilot 提出快速問題。 |
⌘I (Windows、Linux Ctrl+I) | 啟動內嵌聊天,以直接從編輯器向 Copilot 發送聊天請求。使用自然語言或使用 / 命令向 Copilot 發出指示。 |
在聊天中輸入 @ 或選取 以檢視聊天參與者清單,這些參與者是在特定領域可以協助您的領域專家。擴充功能也可以貢獻其他參與者。範例: @workspace 驗證是如何實作的? |
|
參與者偵測(實驗性) | Copilot 聊天也可以自動將您的問題路由至適當的參與者。取得更多資訊。 |
/ |
叫用斜線命令以提示常用動作,例如解釋程式碼區塊、產生測試或文件。 |
/explain |
要求 Copilot 解釋程式碼區塊或程式設計概念。 |
選取聊天檢視中的此圖示以存取您的聊天工作階段歷程記錄。 | |
使用語音(語音聊天)輸入聊天提示。聊天回應會大聲朗讀出來。 |
提示
- 使用
/
命令和@
參與者以取得更精確且相關的回應。- 具體說明、保持簡單,並提出後續問題以獲得最佳結果。
- 透過將檔案、符號或選取項目附加到您的聊天提示來提供上下文。
程式碼編輯工作階段
使用 Copilot 編輯來啟動程式碼編輯工作階段,您可以在其中快速迭代 AI 產生的程式碼編輯,這些編輯會直接套用至工作區中的多個檔案。
動作 | 描述 |
---|---|
⇧⌘I (Windows Ctrl+Shift+I、Linux Ctrl+Shift+Alt+I) | 開啟 Copilot 編輯檢視,並跨多個檔案開始程式碼編輯工作階段。 |
啟動新的編輯工作階段。 | |
接受 |
接受所有目前的編輯。 |
捨棄 |
捨棄所有目前的編輯。 |
在多檔案差異編輯器中檢視所有編輯。 | |
還原上次編輯。 | |
重做上次編輯。 | |
新增檔案... |
將檔案附加到工作集。 |
提示
- 將您想要取得編輯的所有檔案新增至工作集。
- 針對您希望 Copilot 編輯進行的變更,請具體且精確地說明。
- 如果您有較大的工作,請將其分解為較小的工作並經常迭代。
從聊天產生程式碼
Copilot 可以產生程式碼區塊以回應您的聊天提示。在您的專案中快速套用產生的程式碼,或將其插入新檔案。例如,要求 Copilot 優化您程式碼中的演算法。
動作 | 描述 |
---|---|
在作用中編輯器中智慧套用產生的程式碼區塊。 | |
將產生的程式碼區塊插入游標處。 | |
將產生的程式碼區塊複製到剪貼簿。 | |
將產生的程式碼區塊作為 shell 命令插入終端機。 | |
插入到新檔案 |
將產生的程式碼區塊插入新檔案。 |
提示
- 提供關於要使用的架構或程式庫的詳細資訊。
- 考慮建立自訂程式碼產生指示。
將上下文附加到您的提示
當您向 Copilot 發送聊天提示時,您可以附加上下文以協助 Copilot 更好地理解您的問題。例如,將目前的編輯器選取項目、檔案或符號新增至您的聊天提示。取得關於使用 Copilot 的最佳實務的更多資訊。
動作 | 描述 |
---|---|
附加 (⌘/ (Windows、Linux Ctrl+/)) | 開啟快速選取,以選取與您的聊天提示相關的上下文。從工作區檔案、符號、目前的編輯器選取項目或可見內容、終端機選取項目或上次執行的命令,或 VS Code API 中選擇。 |
啟用/停用自動附加開啟的編輯器作為上下文。 | |
提示... (實驗性) |
將可重複使用的提示指示新增至您的請求。取得關於提示檔案的更多資訊。 |
#changes |
上下文變數:原始碼控制變更的清單。 |
#codebase |
上下文變數:將相關的工作區內容新增為提示的上下文。 |
#editor |
上下文變數:將作用中編輯器的可見內容新增為提示的上下文。 |
#selection |
上下文變數:將目前的編輯器選取項目新增為提示的上下文。 |
#terminalSelection |
上下文變數:將目前的終端機選取項目新增為聊天提示的上下文。 |
#terminalLastCommand |
上下文變數:將上次執行的終端機命令新增為聊天提示的上下文。 |
#VSCodeAPI |
上下文變數:將 VS Code API 新增為提示的上下文,以詢問與 VS Code 擴充功能開發相關的問題。 |
#file |
開啟快速選取以從您的工作區選取檔案,並將其新增為提示的上下文。 |
#<filename> |
輸入 # ,後接檔案名稱,以取得工作區檔案的檔案名稱建議並附加為上下文。 |
#sym |
開啟快速選取以從您的工作區選取符號,並將其新增為提示的上下文。 |
#<symbol> |
輸入 # ,後接符號名稱,以取得工作區檔案的符號建議並附加為上下文。 |
拖放檔案 | 將檔案或編輯器拖放到聊天視窗以附加檔案作為上下文。 |
最近的檔案(實驗性) | 自動將最近開啟和編輯的檔案包含在您的聊天提示中。取得更多資訊。 |
提示
- 在快速選取中使用向右箭頭鍵快速新增多個檔案作為上下文
- 透過選取程式碼或提及聊天變數,明確包含相關上下文
- 檢閱聊天回應中使用的參考,以確保上下文相關
編輯器中的 Copilot
當您在編輯器中編寫程式碼時,您可以使用 Copilot 在您輸入時產生程式碼完成項目。叫用內嵌聊天以詢問問題並從 Copilot 取得協助,同時保持程式碼撰寫流程。例如,要求 Copilot 為函式或方法產生單元測試。取得關於程式碼完成項目和內嵌聊天的更多資訊。
動作 | 描述 |
---|---|
程式碼完成項目 | 開始在編輯器中輸入,Copilot 會提供與您的程式碼撰寫風格相符並考量您現有程式碼的程式碼建議。 |
下一個編輯建議(預覽) | 使用 Copilot 下一個編輯建議預測您的下一個程式碼編輯。使用 github.copilot.nextEditSuggestions.enabled 設定啟用 Copilot NES。瞭解如何開始使用Copilot NES。 |
程式碼註解 | 透過在程式碼註解中撰寫指示,向 Copilot 提供程式碼完成提示。 範例: # 撰寫一個計算機類別,其中包含加法、減法和乘法的方法。使用靜態方法。 |
⌘I (Windows、Linux Ctrl+I) | 啟動內嵌聊天,以直接從編輯器向 Copilot 發送聊天請求。使用自然語言或使用 / 命令向 Copilot 發出指示。 |
從編輯器提示(實驗性) | 直接在程式碼中開始輸入自然語言,Copilot 會偵測到您不是在撰寫程式碼而是在提示,並將自動為您的提示啟動內嵌聊天。 |
F2 | 在重新命名程式碼中的符號時取得 AI 驅動的建議。 |
提示
- 使用有意義的方法或函式名稱,以更快地取得更好的程式碼完成項目。
- 選取程式碼區塊以限定您的內嵌聊天提示的範圍,或透過附加檔案或符號來附加相關上下文。
- 使用編輯器上下文選單選項,直接從編輯器存取常用的 Copilot 動作。
自訂 AI 程式碼產生
定義自訂指示,以協助 Copilot 產生或檢閱符合您團隊或專案的程式碼撰寫風格、工具和開發人員工作流程的程式碼。
使用可重複使用的提示檔案,您可以在 Markdown 檔案 (*.prompt.md
) 中指定常用的提示指示和相關內容,然後可以在您的聊天提示中重複使用。
動作 | 描述 |
---|---|
基於檔案的指示(預覽) | 在您工作區的 .gitHub/copilot-instructions.md 檔案中定義程式碼產生的共用指示。這些常用指示補充您自己的個人程式碼產生指示。 |
程式碼檢閱指示(預覽) | 定義使用 Copilot 檢閱編輯器選取項目的指示,可在設定中定義或從檔案匯入。您可以定義語言特定的指示。 |
程式碼產生指示(實驗性) | 定義使用 GitHub Copilot 產生程式碼的指示,可在設定中定義或從檔案匯入。您可以定義語言特定的指示。 |
測試產生指示(實驗性) | 定義使用 GitHub Copilot 產生測試的指示,可在設定中定義或從檔案匯入。您可以定義語言特定的指示。 |
提交訊息產生指示(實驗性) | 定義使用 GitHub Copilot 產生提交訊息的指示,可在設定中定義或從檔案匯入。您可以定義語言特定的指示。 |
可重複使用的提示檔案(預覽) | 在 Markdown 檔案中定義具有其他上下文的可重複使用提示指示,並將其用於您的聊天提示。瞭解如何建立可重複使用的提示檔案。 |
提示
- 定義語言特定的指示,以針對每種語言取得更精確產生的程式碼。
- 將您的指示儲存在檔案中,以便輕鬆地與您的團隊和跨專案共用。
檢閱程式碼 (實驗性)
Copilot 可以快速檢閱程式碼區塊,或對您工作區中未提交的變更執行檢閱。檢閱意見反應會顯示為編輯器中的註解,您可以在其中套用建議。
動作 | 描述 |
---|---|
檢閱並註解(預覽) | 選取程式碼區塊,然後從編輯器上下文選單中選取 Copilot > 檢閱並註解 以進行快速檢閱。 |
Copilot 程式碼檢閱 | 在原始碼控制檢視中選取 Copilot 程式碼檢閱 按鈕,以更深入地檢閱所有未提交的變更。加入等候清單。 |
產生測試
Copilot 可以為您程式碼庫中的函式和方法產生測試。取得關於聊天中的斜線命令的更多資訊。
動作 | 描述 |
---|---|
/tests |
為編輯器中的所有方法和函式或僅選取的方法和函式產生測試。產生的測試會附加到現有的測試檔案中,或建立新的測試檔案。 |
/setupTests |
取得關於設定程式碼測試架構的協助。取得相關測試架構的建議、設定和組態步驟,以及 VS Code 測試擴充功能的建議。 |
/fixTestFailure |
詢問 Copilot 關於如何修正失敗測試的建議。 |
測試涵蓋率(實驗性) | 為尚未被測試涵蓋的函式和方法產生測試。取得更多資訊。 |
提示
- 提供關於要使用的測試架構或程式庫的詳細資訊。
產生文件
為您程式碼庫中的函式和方法產生程式碼文件。取得關於聊天中的斜線命令的更多資訊。
動作 | 描述 |
---|---|
/docs |
為編輯器中的所有方法和函式或僅選取的方法和函式產生文件註解。 |
偵錯並修正問題
使用 Copilot 協助修正程式碼撰寫問題,並取得關於在 VS Code 中設定和啟動偵錯工作階段的協助。
動作 | 描述 |
---|---|
/fix |
詢問 Copilot 關於如何修正程式碼區塊或如何解決您程式碼中的任何編譯器或 Linting 錯誤的建議。例如,協助修正未解析的 Node.js 套件名稱。 |
/fixTestFailure |
詢問 Copilot 關於如何修正失敗測試的建議。 |
/startDebugging (實驗性) |
產生 launch.json 偵錯組態檔案,並從聊天檢視啟動偵錯工作階段。取得更多資訊。 |
copilot-debug 命令 |
終端機命令,可協助您偵錯您的程式。為執行命令加上前綴以啟動其偵錯工作階段(例如,copilot-debug python foo.py )。取得更多資訊。 |
提示
- 提供關於您需要的修正類型的其他資訊,例如優化記憶體消耗或效能。
- 注意編輯器中指示修正程式碼中問題的 Copilot 程式碼動作。
建立新專案的骨架
Copilot 可以透過產生專案結構的骨架,或根據您的需求產生 Notebook,來協助您建立新專案。
動作 | 描述 |
---|---|
/new |
在聊天檢視中使用 /new 命令來建立新專案或新檔案的骨架。使用自然語言描述您需要的專案/檔案類型,並在建立之前預覽骨架內容。範例: /new 使用 typescript 和 svelte 的 Express 應用程式 |
/newNotebook |
在聊天檢視中使用 /newNotebook 命令,根據您的需求產生新的 Jupyter Notebook。使用自然語言描述 Notebook 應包含的內容。範例: /newNotebook 取得人口普查資料並使用 Seaborn 預覽主要見解 。 |
原始碼控制和問題
Copilot 可以分析您的提交和提取請求中的變更,並提供提交訊息和提取請求描述的建議。
動作 | 描述 |
---|---|
提交 | 為原始碼控制提交中的目前變更產生提交訊息。 |
提取請求 | 產生與您的提取請求中的變更相對應的提取請求標題和描述。 |
@github |
在聊天中使用 @github 參與者,以詢問關於您存放庫中的問題、提取請求等。取得關於可用的 GitHub 技能的更多資訊。範例: @github 指派給我的所有開啟的 PR 是什麼? 、@github 顯示來自 @dancing-mona 的最近合併的 PR |
搜尋
使用 Copilot 在搜尋檢視中取得更相關的搜尋結果。
動作 | 描述 |
---|---|
語意搜尋 | 在搜尋檢視中包含來自 Copilot 的語意相關搜尋結果。 |
終端機
取得關於 shell 命令以及如何在終端機中執行命令時解決錯誤的協助。
動作 | 描述 |
---|---|
⌘I (Windows、Linux Ctrl+I) | 在終端機內啟動內嵌聊天,以使用自然語言快速取得並執行 shell 命令。 範例: 這部機器上有多少個核心? |
使用 Copilot 修正 |
選取失敗的 shell 命令上的 圖示,並取得關於如何解決錯誤的建議。 |
使用 Copilot 解釋 |
選取失敗的 shell 命令上的 圖示,並取得關於命令失敗原因的解釋。 |
@terminal |
在聊天檢視中使用 @terminal 參與者,以詢問關於整合式終端機或 shell 命令的問題。範例: @terminal 列出此工作區中 5 個最大的檔案 |
@terminal /explain |
在聊天檢視中使用 /explain 命令來解釋終端機中的某些內容。範例: @terminal /explain top shell 命令 |
Python 和 Notebook 支援
您可以使用 Copilot 聊天來協助您在原生 Python REPL 和 Jupyter Notebook 中處理 Python 程式設計工作。
動作 | 描述 |
---|---|
產生 ⌘I (Windows、Linux Ctrl+I) |
在 Notebook 中啟動內嵌聊天以產生程式碼區塊或 Markdown 區塊。 |
# |
在您的聊天提示中附加來自 Jupyter Kernel 的變數,以取得更相關的回應。 |
原生 REPL + ⌘I (Windows、Linux Ctrl+I) | 在原生 Python REPL 中啟動內嵌聊天並執行產生的命令。 |
VS Code 命令和 API
您可以使用 Copilot 取得關於 VS Code 功能、設定和 VS Code 擴充功能 API 的協助。取得關於聊天參與者的更多資訊。
動作 | 描述 |
---|---|
@vscode |
使用 @vscode 聊天參與者以自然語言詢問關於 VS Code 的問題。範例: @vscode 如何啟用自動換行? |
@vscode /runCommand |
將 /runCommand 與 @vscode 聊天參與者搭配使用以執行 VS Code 命令。@vscode /runCommand 啟用開發人員模式 |
@vscode /search |
將 /search 與 @vscode 聊天參與者搭配使用以產生 VS Code 搜尋。範例: @vscode /search 沒有匯入的 python 檔案 |
提示
- 如果您要詢問關於 VS Code 擴充功能 API 的問題,請使用
#vscodeAPI
聊天變數。