本文根據 Claude Code 官方文檔《Interactive mode》《Customize keyboard shortcuts》《Configure your terminal for Claude Code》整理,核對日期 2026-10-07。快捷鍵可能因操作系統和終端不同而有差異,在空輸入框裏按?可以查看當前可用的快捷鍵。
適用於誰
- 在 Claude Code 裏按回車就把話發出去了、不知道怎麼換行的人(「claude code 命令行 換行」);
- 想用鍵盤快速中斷、回退、切換模式和模型的人;
- 想自定義快捷鍵的人。
VS Code 擴展裏的快捷鍵不同,詳見本站《Claude Code VS Code 插件使用教學:安裝、登入與常用操作》。
結論先說
- 換行不發送:
Ctrl+J或輸入\再按回車,所有終端都能用;多數終端也支持Shift+Enter,VS Code / Cursor 等終端要先運行一次/terminal-setup。 - 中斷:
Esc停止當前回覆(已完成的工作保留);Ctrl+C中斷,空輸入時連按兩次退出。 - 回退:輸入框為空時連按兩次
Esc,打開回退選單恢復代碼和對話。 - 切換權限模式:
Shift+Tab;切換模型:Alt+P(Mac 是Option+P)。 - 自定義:運行
/keybindings打開~/.claude/keybindings.json,儲存後自動生效。
一、最常用的 12 個
| 快捷鍵 | 作用 |
|---|---|
Enter | 發送 |
Ctrl+J、\ + Enter | 換行不發送(任何終端) |
Esc | 停止 Claude 當前的回覆或工具調用;有對話框時關閉對話框 |
Esc Esc | 輸入框有字:清空並存入歷史;輸入框為空:打開回退選單 |
Ctrl+C | 中斷;沒有運行中的任務時,第一次清空輸入、第二次退出 |
Ctrl+D | 退出(800 毫秒內按兩次);輸入框有字時是刪除游標後的字符 |
Shift+Tab | 循環切換權限模式(manual → accept edits → plan → …) |
Alt+P / Option+P | 切換模型,不清空當前輸入 |
Ctrl+O | 打開 / 關閉詳細記錄視圖,看工具調用細節 |
Ctrl+R | 反向搜尋歷史輸入 |
Ctrl+V(Windows / WSL 用 Alt+V) | 粘貼剪貼簿裏的圖片 |
Ctrl+G | 在預設文本編輯器裏編輯當前提示詞(寫長提示很方便) |
二、通用控制
| 快捷鍵 | 作用 |
|---|---|
Ctrl+B | 把正在運行的命令或子代理放到後台(tmux 裏按兩次) |
Ctrl+T | 顯示 / 隱藏 Claude 的待辦清單 |
Ctrl+S | 暫存當前輸入並清空;空輸入時再按一次恢復 |
Ctrl+L | 重繪螢幕(顯示亂了時用),不清除輸入和對話 |
Ctrl+Z | 掛起 Claude Code(僅 Unix),用 fg 恢復 |
Ctrl+X Ctrl+K | 停止本會話所有後台子代理(3 秒內按兩次確認) |
Ctrl+Enter / Ctrl+X Ctrl+S | 立刻發送排隊中的消息 |
Alt+T / Option+T | 開關擴展思考(Opus 5.5、Sonnet 5.5 和 Fable 始終開啟,無效) |
Alt+O / Option+O | 開關 fast 模式 |
Tab | 接受自動補全;在權限確認框裏給「是 / 否」附一句說明 |
↑ / ↓ | 在多行輸入裏移動游標,到首行 / 末行後翻歷史 |
?(空輸入時) | 顯示快捷鍵幫助面板 |
Claude 正在工作時你也可以繼續輸入並回車,消息會排隊,等當前這一輪結束再發送;想撤回排隊的消息,在輸入框首行按 ↑。
三、輸入框裏的快捷符號
| 輸入 | 作用 |
|---|---|
開頭輸入 / | 命令或技能,詳見本站《Claude Code 命令大全:斜槓命令速查與自定義命令》 |
開頭輸入 ! | Shell 模式:直接運行一條命令,輸出加入會話並讓 Claude 看到 |
@ | 文件路徑補全,引用文件 |
: | 表情短碼(如 :tada:) |
四、文本編輯
| 快捷鍵 | 作用 |
|---|---|
Ctrl+A / Ctrl+E | 移到行首 / 行尾 |
Ctrl+K | 刪除到行尾 |
Ctrl+U | 刪除到行首(Mac 上 Cmd+Backspace 通常映射到它) |
Ctrl+W | 刪除到前一個空格(一次刪掉整段路徑) |
Ctrl+Y | 粘貼剛才刪除的文字 |
Alt+B / Alt+F | 按詞後退 / 前進(Mac 需開啟 Option as Meta) |
Ctrl+_ | 撤銷上一次輸入編輯 |
官方提到,中文、日文這類沒有空格分詞的文字,按詞移動 / 刪除也會一次處理一個詞。
五、換行:Shift+Enter 不管用怎麼辦
| 終端 | Shift+Enter 換行 |
|---|---|
| Ghostty、Kitty、iTerm2、WezTerm、Warp、Apple Terminal、Windows Terminal | 直接可用 |
| VS Code、Cursor、Alacritty 0.16 以前、Zed 的終端 | 先運行一次 /terminal-setup |
| gnome-terminal、JetBrains IDE(如 PyCharm)的終端 | 不支持,用 Ctrl+J 或 \ + 回車 |
/terminal-setup 會把 Shift+Enter 寫進終端的快捷鍵配置;在 VS Code / Cursor 裏還會順帶關閉終端 GPU 加速以避免亂碼。要在宿主終端裏直接運行,不要在 tmux / screen 裏面運行;在 tmux 裏用 Shift+Enter 還需要額外的 tmux 配置(見官方 terminal-config 頁)。
Mac 上 Option 組合鍵沒反應?大多數 Mac 終端預設不把 Option 當修飾鍵發送。設定方法:
- Apple Terminal:設定 → 描述文件 → 鍵盤,勾選「將 Option 鍵用作 Meta 鍵」(首次運行時接受了 Claude Code 的終端設定提示的話已經開好);
- iTerm2:Settings → Profiles → Keys → General,把左右 Option 鍵都設為「Esc+」;
- VS Code 終端:設定裏加
"terminal.integrated.macOptionIsMeta": true。
開啟後 Option+Enter 也能換行。
六、回退與檢查點
每條你發出的提示都會創建一個檢查點。輸入框為空時連按兩次 Esc(或輸入 /rewind)打開回退選單,可以:只恢復對話、只恢復代碼、兩者都恢復,或者從某條消息開始做摘要。官方提醒:檢查點只記錄 Claude 用編輯工具做的改動,通過 shell 命令做的修改不在內,不能代替 git。
七、自定義快捷鍵
運行:
text
/keybindings
會創建或打開 ~/.claude/keybindings.json,改完儲存後自動生效,不用重啟。格式示例(官方示例改寫):
json
{
"$schema": "https://www.schemastore.org/claude-code-keybindings.json",
"bindings": [
{
"context": "Chat",
"bindings": {
"ctrl+e": "chat:externalEditor",
"ctrl+s": null
}
}
]
}
context是生效的場景,比如Chat(主輸入框);- 鍵名寫法:
ctrl、shift、alt(Mac 上即 Option,也可寫meta)、cmd;組合鍵用+連接,如ctrl+shift+c; - 和絃(連續按鍵)用空格分隔,如
ctrl+k ctrl+s,兩次按鍵間隔需在 3 秒內; - 把某個動作設為
null就是取消預設綁定。
幾個常用的動作名:chat:submit(發送,預設 Enter)、chat:newline(換行,預設 Ctrl+J)、chat:cycleMode(切換模式)、chat:modelPicker(切換模型)、chat:externalEditor(外部編輯器)。比如想反過來「回車換行、Shift+Enter 發送」,就重新映射 chat:newline 和 chat:submit。
不能改的快捷鍵:Ctrl+C(中斷)、Ctrl+D(退出)、Ctrl+M(等同回車)、Ctrl+[(等同 Esc)、Ctrl+I(等同 Tab)等。文本編輯類快捷鍵(Ctrl+W、Alt+B 等)也不在配置文件的可改範圍內。
和終端軟件衝突:Ctrl+B 是 tmux 的前綴鍵(要按兩次);Ctrl+A 是 GNU screen 的前綴鍵;Ctrl+Z 是 Unix 掛起進程。
常見問題
Q:Vim 模式怎麼開?
/config → Editor mode 切換到 Vim。Vim 模式下 Esc 是從插入模式切到普通模式,不會取消輸入。
Q:按 Esc 會不會把 Claude 做了一半的工作丟掉?
不會。Esc 只是停下當前回覆,已經完成的工作保留,你可以接着給新指示。想撤銷已做的改動,用雙擊 Esc 的回退選單。
Q:Windows 上 Shift+Tab 不能切換模式?
官方說明在沒有啟用 VT 輸入模式的舊版運行時上,預設改用 Alt+M。
Q:在 JetBrains 終端裏 Esc 打斷不了?
JetBrains 終端預設用 Esc 把焦點切回編輯器,到 Settings → Tools → Terminal 取消勾選「Move focus to the editor with Escape」,詳見本站《Claude Code JetBrains 插件怎麼用:IDEA / PyCharm 安裝與配置》。
參考資料
- Interactive mode · Keyboard shortcuts(官方):https://code.claude.com/docs/en/interactive-mode
- Customize keyboard shortcuts(官方):https://code.claude.com/docs/en/keybindings
- Configure your terminal for Claude Code(官方):https://code.claude.com/docs/en/terminal-config
- Checkpointing(官方):https://code.claude.com/docs/en/checkpointing
0 條評論
還沒有評論,來搶沙發~