《Cursor文档》-终端设置

配置终端,获得最佳的 Cursor 命令行界面使用体验。本指南涵盖多行输入快捷键绑定、Vim 模式和主题同步。

快速开始

如果在终端中按 Shift+Enter 无法换行,请运行 /setup-terminal,了解如何配置替代方案:

/setup-terminal

此命令会检测你的终端,并说明如何将 Option+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+Enter 配置为输入换行:

  • Apple Terminal (macOS)
  • Alacritty
  • VS Code (集成终端)

终端多路复用器

tmuxscreen 会在 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+Enter 会发送一个特殊的转义序列,Cursor 命令行界面 会将其识别为换行。请将终端配置为在按下 Option+Enter 时发送 \x1b\r (Escape 后接回车) 。

iTerm2:

  1. 打开 偏好设置配置文件按键按键映射
  2. 点击 + 添加新映射
  3. 键盘快捷键 设置为 Option+Enter
  4. 操作 设置为 “发送转义序列”
  5. 输入 \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"
}

疑难排查

快捷键绑定无效:

  • 使用 catshowkey 验证终端能否正确识别按键
  • 检查终端多路复用器 (tmux/screen) 是否拦截了按键
  • 使用 Ctrl+J 作为可靠的备用方案

tmux 用户:

  • Shift+Enter 和 Option+Enter 无法在 tmux 中使用
  • 请改用 Ctrl+J 或 +Enter
  • 这些通用选项在任何环境下均可使用,包括嵌套的 tmux 会话

SSH 会话:

  • 远程终端功能取决于本地终端模拟器
  • Ctrl+J 可通过 SSH 稳定使用
  • +Enter 也是一个可靠的选项

摘要

快捷键 适用终端 说明
Ctrl+J 所有终端 最可靠,处处适用
+Enter 所有终端 通用替代方案
Shift+Enter iTerm2, Ghostty, Kitty, Warp, Zed 原生支持,无需配置
Option+Enter 运行 /setup-terminal Apple Terminal、Alacritty、VS Code 的换行替代方案
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜