终端设置
配置终端,获得最佳的 Cursor 命令行界面使用体验。本指南涵盖多行输入快捷键绑定、Vim 模式和主题同步。
快速开始
如果在终端中按 Shift+Enter 无法换行,请运行 /setup-terminal,了解如何配置替代方案:
/setup-terminal此命令会检测你的终端,并说明如何将 Option+EnterAlt+Enter 配置为另一���插入换行的方式。
通用选项
以下方法适用于所有终端,包括 tmux、screen 和 SSH 会话:
| 方法 | 描述 |
|---|---|
| \+Enter | 输入反斜杠后按 Enter,即可插入换行符 |
| Ctrl+J | 换行的标准控制字符 (ASCII 换行) |
如果你正在使用 tmux,或其他快捷键绑定不起作用,Ctrl+J 是最可靠的选项。
终端支持
原生支持 Shift+Enter
以下终端原生支持使用 Shift+Enter 输入换行:
- iTerm2 (macOS)
- Ghostty
- Kitty
- Warp
- Zed (集成终端)
需运行 /setup-terminal
这些终端需要运行 /setup-terminal,才能将 Option+EnterAlt+Enter 配置为输入换行:
- Apple Terminal (macOS)
- Alacritty
- VS Code (集成终端)
终端多路复用器
tmux 和 screen 会在 Shift+Enter 传递给应用前将其拦截。请改用通用选项:
- Ctrl+J — 在所有终端多路复用器会话中都能稳定使用
- \+Enter — 同样在所有环境中可用
你可以将外层终端 (如 iTerm2) 配置为使用 Shift+Enter,但该快捷键无法透过 tmux 传递。为获得最一致的体验,请使用通用选项。
Vim 模式
在 CLI 输入区域启用 Vim 快捷键绑定,以便导航和编辑。
通过斜杠命令切换
/vim这会在当前会话中启用或关闭 Vim 模式,并保存该偏好设置。
在设置中配置
将以下内容添加到 ~/.cursor/cli-config.json:
{ "version": 1, "editor": { "vimMode": true }, "permissions": { "allow": [], "deny": [] }}模式
Vim 模式采用模态编辑:
- 普通模式 — 用于导航和执行命令 (启用 Vim 模式时的默认模式)
- 插入模式 — 正常输入文本
在插入模式下按 Esc 可返回普通模式。
导航
| 按键 | 描述 |
|---|---|
| h, l | 左移 / 右移 |
| j, k | 下移 / 上移 |
| w, b | 下一个 / 上一个单词 |
| e | 移至单词末尾 |
| W, B, E | 与上述相同,但用于 WORD (非空白字符序列) |
| 0, $ | 行首 / 行尾 |
编辑
| 按键 | 描述 |
|---|---|
| x | 删除光标所在位置的字符 |
| X | 删除光标前的字符 |
| d + motion | 删除指定范围 (例如,dw 删除一个单词) |
| dd | 删除整行 |
| D | 删除至行尾 |
| s | 替换字符 (删除后进入插入模式) |
| S, cc | 修改整行 |
| C | 修改至行尾 |
进入插入模式
| 按键 | 描述 |
|---|---|
| i | 在光标处插入 |
| a | 在光标后插入 |
| I | 在行首插入 |
| A | 在行尾插入 |
| o | 在下方新建一行 |
| O | 在上方新建一行 |
计数
在命令前加上数字可重复执行命令。例如,3w 向前移动 3 个单词,2dd 删除 2 行。
Vim 模式仅影响输入区域。浏览 chat 历史记录和其他 UI 元素时,使用标准快捷键绑定。
终端主题
Cursor 命令行界面会自动检测终端的配色方案,并适配其外观。
自动检测
CLI 会使用标准转义序列查询终端的背景颜色。大多数现代终端都支持此功能:
- 深色终端 → CLI 使用深色主题
- 浅色终端 → CLI 使用浅色主题
支持自动检测的终端
以下终端能正确报告其配色方案:
- iTerm2
- Ghostty
- Kitty
- Alacritty
- Apple Terminal
- Windows Terminal
- VS Code 集成终端
强制指定主题
如果自动检测无效,您可以通过环境变量手动指定:
# 强制使用深色主题export COLORFGBG="15;0"# 强制使用浅色主题export COLORFGBG="0;15"将此内容添加到 shell 配置文件 (.bashrc、.zshrc 等) 中,使其永久生效。
主题问题疑难排查
颜色显示不正常:
- 确保终端支持 256 色或真彩色
- 检查
TERM是否设置正确 (例如xterm-256color) - 尝试显式设置
COLORFGBG
tmux 用户:
- 在
.tmux.conf中添加以下内容,以正确检测颜色:set -g default-terminal "tmux-256color" set -ag terminal-overrides ",xterm-256color:RGB" - 更改后重新启动 tmux
手动配置
如果 /setup-terminal 无法适用于您的终端,您可以手动配置快捷键绑定。
使用 Option+Enter 换行
Option+EnterAlt+Enter 会发送一个特殊的转义序列,Cursor 命令行界面 会将其识别为换行。请将终端配置为在按下 Option+EnterAlt+Enter 时发送 \x1b\r (Escape 后接回车) 。
iTerm2:
- 打开 偏好设置 → 配置文件 → 按键 → 按键映射
- 点击 + 添加新映射
- 将 键盘快捷键 设置为 Option+EnterAlt+Enter
- 将 操作 设置为 "发送转义序列"
- 输入
\r作为转义序列
Alacritty:
将以下内容添加到 alacritty.toml:
[keyboard]bindings = [ { key = "Return", mods = "Alt", chars = "\u001b\r" }]Kitty:
将以下内容添加到你的 kitty.conf:
map alt+enter send_text all \x1b\r
Shift+Enter
是否支持 Shift+Enter 取决于终端能否正确识别该组合键的修饰键。大多数现代终端会自动处理,但有些可能需要配置。
VS Code 终端:
VS Code's 集成终端可能无法正确传递 Shift+Enter。请在 keybindings.json 中添加以下内容:
{ "key": "shift+enter", "command": "workbench.action.terminal.sendSequence", "args": { "text": "\u001b[13;2u" }, "when": "terminalFocus"}疑难排查
快捷键绑定无效:
- 使用
cat或showkey验证终端能否正确识别按键 - 检查终端多路复用器 (tmux/screen) 是否拦截了按键
- 使用 Ctrl+J 作为可靠的备用方案
tmux 用户:
- Shift+Enter 和 Option+EnterAlt+Enter 无法在 tmux 中使用
- 请改用 Ctrl+J 或 \+Enter
- 这些通用选项在任何环境下均可使用,包括嵌套的 tmux 会话
SSH 会话:
- 远程终端功能取决于本地终端模拟器
- Ctrl+J 可通过 SSH 稳定使用
- \+Enter 也是一个可靠的选项
摘要
| 快捷键 | 适用终端 | 说明 |
|---|---|---|
| Ctrl+J | 所有终端 | 最可靠,处处适用 |
| \+Enter | 所有终端 | 通用替代方案 |
| Shift+Enter | iTerm2, Ghostty, Kitty, Warp, Zed | 原生支持,无需配置 |
| Option+EnterAlt+Enter | 运行 /setup-terminal 后 | Apple Terminal、Alacritty、VS Code 的换行替代方案 |