opencode/packages/web/src/content/docs/zh-tw/keybinds.mdx
opencode-agent[bot] d578f80f00 chore: generate
2026-02-09 17:35:30 +00:00

192 lines
5.9 KiB
Text
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: 按鍵綁定
description: 自定義您的按鍵綁定。
---
OpenCode 有一個按鍵綁定列表,您可以通過 OpenCode 配置進行自定義。
```json title="opencode.json"
{
"$schema": "https://opencode.ai/config.json",
"keybinds": {
"leader": "ctrl+x",
"app_exit": "ctrl+c,ctrl+d,<leader>q",
"editor_open": "<leader>e",
"theme_list": "<leader>t",
"sidebar_toggle": "<leader>b",
"scrollbar_toggle": "none",
"username_toggle": "none",
"status_view": "<leader>s",
"tool_details": "none",
"session_export": "<leader>x",
"session_new": "<leader>n",
"session_list": "<leader>l",
"session_timeline": "<leader>g",
"session_fork": "none",
"session_rename": "none",
"session_share": "none",
"session_unshare": "none",
"session_interrupt": "escape",
"session_compact": "<leader>c",
"session_child_cycle": "<leader>right",
"session_child_cycle_reverse": "<leader>left",
"session_parent": "<leader>up",
"messages_page_up": "pageup,ctrl+alt+b",
"messages_page_down": "pagedown,ctrl+alt+f",
"messages_line_up": "ctrl+alt+y",
"messages_line_down": "ctrl+alt+e",
"messages_half_page_up": "ctrl+alt+u",
"messages_half_page_down": "ctrl+alt+d",
"messages_first": "ctrl+g,home",
"messages_last": "ctrl+alt+g,end",
"messages_next": "none",
"messages_previous": "none",
"messages_copy": "<leader>y",
"messages_undo": "<leader>u",
"messages_redo": "<leader>r",
"messages_last_user": "none",
"messages_toggle_conceal": "<leader>h",
"model_list": "<leader>m",
"model_cycle_recent": "f2",
"model_cycle_recent_reverse": "shift+f2",
"model_cycle_favorite": "none",
"model_cycle_favorite_reverse": "none",
"variant_cycle": "ctrl+t",
"command_list": "ctrl+p",
"agent_list": "<leader>a",
"agent_cycle": "tab",
"agent_cycle_reverse": "shift+tab",
"input_clear": "ctrl+c",
"input_paste": "ctrl+v",
"input_submit": "return",
"input_newline": "shift+return,ctrl+return,alt+return,ctrl+j",
"input_move_left": "left,ctrl+b",
"input_move_right": "right,ctrl+f",
"input_move_up": "up",
"input_move_down": "down",
"input_select_left": "shift+left",
"input_select_right": "shift+right",
"input_select_up": "shift+up",
"input_select_down": "shift+down",
"input_line_home": "ctrl+a",
"input_line_end": "ctrl+e",
"input_select_line_home": "ctrl+shift+a",
"input_select_line_end": "ctrl+shift+e",
"input_visual_line_home": "alt+a",
"input_visual_line_end": "alt+e",
"input_select_visual_line_home": "alt+shift+a",
"input_select_visual_line_end": "alt+shift+e",
"input_buffer_home": "home",
"input_buffer_end": "end",
"input_select_buffer_home": "shift+home",
"input_select_buffer_end": "shift+end",
"input_delete_line": "ctrl+shift+d",
"input_delete_to_line_end": "ctrl+k",
"input_delete_to_line_start": "ctrl+u",
"input_backspace": "backspace,shift+backspace",
"input_delete": "ctrl+d,delete,shift+delete",
"input_undo": "ctrl+-,super+z",
"input_redo": "ctrl+.,super+shift+z",
"input_word_forward": "alt+f,alt+right,ctrl+right",
"input_word_backward": "alt+b,alt+left,ctrl+left",
"input_select_word_forward": "alt+shift+f,alt+shift+right",
"input_select_word_backward": "alt+shift+b,alt+shift+left",
"input_delete_word_forward": "alt+d,alt+delete,ctrl+delete",
"input_delete_word_backward": "ctrl+w,ctrl+backspace,alt+backspace",
"history_previous": "up",
"history_next": "down",
"terminal_suspend": "ctrl+z",
"terminal_title_toggle": "none",
"tips_toggle": "<leader>h",
"display_thinking": "none"
}
}
```
---
## 領袖鑰匙
OpenCode 對大多數按鍵綁定使用 `leader` 鍵。這可以避免終端中的衝突。
默認情況下,`ctrl+x` 是主鍵,大多數操作要求您先按主鍵,然後再按快捷鍵。例如,要開始新會話,請先按`ctrl+x`,然後按`n`。
您不需要為鍵綁定使用主鍵,但我們建議您這樣做。
---
## 禁用按鍵綁定
您可以通過將鍵添加到您的配置中並使用值“none”來禁用鍵綁定。
```json title="opencode.json"
{
"$schema": "https://opencode.ai/config.json",
"keybinds": {
"session_compact": "none"
}
}
```
---
## 桌面提示快捷方式
OpenCode 桌面應用程序提示輸入支持常見的 Readline/Emacs 風格的文本編輯快捷方式。這些是內置的,目前無法通過`opencode.json`進行配置。
| 快捷方式 | 行動 |
| -------- | ------------------------- |
| `ctrl+a` | 移至當前行開頭 |
| `ctrl+e` | 移至當前行尾 |
| `ctrl+b` | 將光標向後移動一個字符 |
| `ctrl+f` | 將光標向前移動一個字符 |
| `alt+b` | 將光標向後移動一個字 |
| `alt+f` | 將光標向前移動一個字 |
| `ctrl+d` | 刪除光標下的字符 |
| `ctrl+k` | 殺到行尾 |
| `ctrl+u` | 殺至行首 |
| `ctrl+w` | 刪除前一個單詞 |
| `alt+d` | 殺死下一個詞 |
| `ctrl+t` | 轉置字符 |
| `ctrl+g` | 取消彈出窗口/中止運行響應 |
---
## Shift+Enter
默認情況下,某些終端不發送帶有 Enter 的修飾鍵。您可能需要將終端配置為發送 `Shift+Enter` 作為轉義序列。
### Windows 終端
打開您的`settings.json`
```
%LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json
```
將其添加到根級 `actions` 數組:
```json
"actions": [
{
"command": {
"action": "sendInput",
"input": "\u001b[13;2u"
},
"id": "User.sendInput.ShiftEnterCustom"
}
]
```
將其添加到根級 `keybindings` 數組:
```json
"keybindings": [
{
"keys": "shift+enter",
"id": "User.sendInput.ShiftEnterCustom"
}
]
```
保存文件並重新啟動 Windows 終端或打開新選項卡。