配置

鍵盤快速鍵

使用鍵盤快速鍵簡化您的工作流程並減少對滑鼠互動的依賴。

可用的鍵盤命令

Bob 提供鍵盤命令來增強您的工作流程。本頁面重點介紹 Bob.acceptInput 命令,但這裡是關鍵鍵盤命令的快速參考:

命令說明預設快速鍵
Bob.acceptInput提交文字或接受主要建議無(可配置)
Bob.focus聚焦 Bob 輸入框無(可配置)
Inline Chat直接在編輯器中編輯程式碼Cmd + K (Mac) / Ctrl + K (Windows/Linux)
移至聊天將選定的程式碼發送到聊天介面Cmd + L (Mac) / Ctrl + L (Windows/Linux)
文學編程模式切換文學編程模式Cmd + I (Mac) / Ctrl + I (Windows/Linux)
開啟 Bob 聊天面板顯示或聚焦 Bob 聊天面板Option + Cmd + B (Mac) / Ctrl + Alt + B (Windows/Linux)
模式切換在可用模式之間循環Cmd + . (Mac) / Ctrl + . (Windows/Linux)

要獲取所有可用鍵盤快速鍵的完整清單並配置自訂綁定,請開啟 Bob 設定,在一般設定下導覽到鍵盤快速鍵選項,您可以在其中檢視和修改所有快速鍵。

鍵盤命令的主要優勢

  • 鍵盤驅動介面:無需滑鼠互動即可提交文字或選擇主要建議按鈕
  • 改善無障礙性:對於行動能力受限或使用滑鼠感到不適的使用者至關重要
  • Vim/Neovim 相容性:支援來自以鍵盤為中心的環境的開發人員無縫轉換
  • 工作流程效率:減少開發任務期間鍵盤和滑鼠之間的上下文切換

Bob.acceptInput 命令

Bob.acceptInput 命令讓您使用鍵盤快速鍵提交文字或接受建議,而不是點擊按鈕或在輸入區域中按 Enter。

命令的運作方式

Bob.acceptInput 命令是一個通用的輸入提交命令。觸發時,它會:

  • 在文字輸入區域時提交您目前的文字或圖片輸入(相當於按 Enter)
  • 當操作按鈕可見時點擊主要(第一個)按鈕(例如確認/取消按鈕或任何其他操作按鈕)

詳細設定指南

方法 1:使用 UI

  1. 開啟命令選擇區(Ctrl+Shift+P 或 Mac 上的 Cmd+Shift+P
  2. 輸入「Preferences: Open Keyboard Shortcuts」
  3. 在搜尋框中,輸入「Bob.acceptInput」
  4. 在結果中找到「Bob: Accept Input/Suggestion」
  5. 點擊命令左側的 + 圖示
  6. 按下您想要的按鍵組合(例如,Ctrl+EnterAlt+Enter
  7. 按 Enter 確認

方法 2:直接編輯 keybindings.json

  1. 開啟命令選擇區(Ctrl+Shift+P 或 Mac 上的 Cmd+Shift+P
  2. 輸入「Preferences: Open Keyboard Shortcuts (JSON)」
  3. 將以下條目添加到 JSON 陣列:
{
  "key": "ctrl+enter",  // 或您偏好的按鍵組合
  "command": "Bob.acceptInput",
  "when": "BobViewFocused"  // 這是一個上下文條件,確保命令僅在 Bob 聚焦時有效
}

您也可以使用更具體的條件:

{
  "key": "ctrl+enter",
  "command": "Bob.acceptInput",
  "when": "webviewViewFocus && webviewViewId == 'Bob-cline.SidebarProvider'"
}

建議的按鍵組合

選擇不與現有 IBM Bob 快速鍵衝突的按鍵組合:

  • Alt+Enter - 打字時容易按
  • Ctrl+Space - 對於使用自動補全的人來說很熟悉
  • Ctrl+Enter - 執行命令的直覺方式
  • Alt+A - 「Accept」的助記符

實際使用案例

快速開發工作流程

  • 文字提交:向 Bob 發送訊息而無需將手從鍵盤上移開
  • 操作確認:接受儲存檔案、執行命令或應用差異等操作
  • 多步驟流程:快速完成需要確認或輸入的步驟
  • 連續任務:以最少的中斷將多個任務串連在一起

以鍵盤為中心的開發

  • Vim/Neovim 工作流程:如果您來自 Vim/Neovim 背景,請維持您以鍵盤為中心的工作流程
  • IDE 整合:與其他 IBM Bob 鍵盤快速鍵一起使用以獲得無縫體驗
  • 程式碼審查:使用 Bob 審查程式碼時快速接受建議
  • 文件撰寫:生成文件時提交文字並接受格式建議

無障礙使用案例

  • 手部行動能力限制:對於使用滑鼠有困難的使用者至關重要
  • 預防重複性勞損:減少滑鼠使用以預防或管理重複性勞損
  • 螢幕閱讀器整合:與視障使用者的螢幕閱讀器配合良好
  • 語音控制相容性:使用語音控制軟體時可透過語音命令觸發

無障礙優勢

Bob.acceptInput 命令在設計時考慮了無障礙性:

  • 減少滑鼠依賴:無需觸碰滑鼠即可完成整個工作流程
  • 減少身體負擔:幫助因使用滑鼠而感到不適或疼痛的使用者
  • 替代輸入方法:支援依賴鍵盤導覽的行動障礙使用者
  • 工作流程優化:對於來自以鍵盤為中心的環境(如 Vim/Neovim)的使用者特別有價值

以鍵盤為中心的工作流程

以下是一些完整的工作流程範例,展示如何有效地使用 Bob 的鍵盤快速鍵:

開發工作流程範例

  1. 開啟 IBM Bob 並導覽到您的專案
  2. 開啟 Bob 聊天面板
  3. 輸入您的請求:「為使用者註冊建立 REST API 端點」
  4. 當 Bob 詢問框架偏好時,使用您的 Bob.acceptInput 快速鍵選擇第一個建議
  5. 繼續使用快速鍵接受程式碼生成建議
  6. 當 Bob 提議儲存檔案時,再次使用快速鍵確認
  7. 使用 IBM Bob 的內建快速鍵導覽建立的檔案

程式碼審查工作流程

  1. 選擇您想要審查的程式碼並使用 IBM Bob 的「複製」命令
  2. 要求 Bob 審查它:「審查此程式碼的安全問題」
  3. 當 Bob 詢問有關程式碼上下文的澄清問題時,使用您的快速鍵接受建議
  4. 當 Bob 提供改進建議時,再次使用快速鍵接受實作建議

疑難排解

問題解決方案
快速鍵無效確保 Bob 已聚焦(先點擊 Bob 面板)
選擇了錯誤的建議命令始終選擇第一個(主要)按鈕;如果需要不同的選項,請使用滑鼠
與現有快速鍵衝突在 IBM Bob 鍵盤設定中嘗試不同的按鍵組合
使用時沒有視覺回饋這是正常的 - 命令會靜默啟動功能而不會有視覺確認
快速鍵運作不一致確保 keybindings.json 中的 when 子句配置正確(BobViewFocused 或 webview 特定條件)

技術實作

Bob.acceptInput 命令的實作如下:

  • 命令註冊為 Bob.acceptInput,在命令選擇區中顯示標題為「Bob: Accept Input/Suggestion」
  • 觸發時,它會向活動的 Bob webview 發送「acceptInput」訊息
  • webview 根據目前的 UI 狀態確定適當的操作:
    • 如果操作按鈕可見且已啟用,則點擊主要操作按鈕
    • 如果文字區域已啟用且包含文字/圖片,則發送訊息
  • 沒有預設按鍵綁定 - 使用者分配他們偏好的快速鍵

限制

  • 僅在 Bob 介面處於活動狀態時有效
  • 如果目前沒有可用的輸入或建議,則無效
  • 當顯示多個選項時,優先選擇主要(第一個)按鈕
這個主題如何?