Skip to content

终端优化配置

Claude Code 在正确配置的终端中体验最佳。本文介绍针对各主流终端的优化配置。

主题和外观

Claude 无法控制终端主题,主题由终端应用自身管理。可以通过 /config 命令随时同步 Claude Code 界面主题与终端主题。

还可以配置自定义状态栏,在终端底部显示当前模型、工作目录或 git 分支等上下文信息。

多行输入(Shift+Enter)

默认支持的终端

以下终端无需配置即支持 Shift+Enter 换行:

  • iTerm2
  • WezTerm
  • Ghostty
  • Kitty

其他终端的配置方法

对于 VS Code、Alacritty、Zed、Warp 等终端,在 Claude Code 中运行:

/terminal-setup

此命令自动为这些终端安装 Shift+Enter 绑定。

注意/terminal-setup 命令只在需要手动配置的终端中显示。如果你使用 iTerm2、WezTerm、Ghostty 或 Kitty,不会看到此命令。

备选多行输入方式

方式快捷键
快速转义\ 后接 Enter
macOS 默认Option+Enter
控制序列Ctrl+J(换行符)
粘贴模式直接粘贴代码块或日志

配置 Option 作为 Meta 键(macOS)

某些快捷键(Alt+BAlt+FAlt+YAlt+MAlt+P)需要将 Option 键配置为 Meta 键:

macOS Terminal.app

  1. 打开设置 → Profiles → Keyboard
  2. 勾选 "Use Option as Meta Key"

iTerm2

  1. 打开设置 → Profiles → Keys
  2. 在 General 下,将左/右 Option 键设为 "Esc+"

VS Code 终端

在 VS Code 设置中添加:

json
"terminal.integrated.macOptionIsMeta": true

桌面通知

Claude 完成工作等待你输入时,会触发通知事件。可以通过终端或通知 Hooks 将其变成桌面通知。

各终端通知支持

终端支持方式
Ghostty无需配置,原生支持
Kitty无需配置,原生支持
iTerm2需要手动配置(见下方)
macOS Terminal(默认)不支持,使用 Hooks 代替
其他终端使用通知 Hooks

iTerm2 通知配置

  1. 打开 iTerm2 设置 → Profiles → Terminal
  2. 启用 "Notification Center Alerts"
  3. 点击 "Filter Alerts",勾选 "Send escape sequence-generated alerts"

验证通知权限:确认系统设置中已允许 iTerm2 显示通知。

在 tmux 中启用通知

在 tmux 中运行时,通知默认被 tmux 拦截,无法到达外部终端(iTerm2、Kitty 等)。在 tmux 配置中启用 passthrough:

bash
# ~/.tmux.conf
set -g allow-passthrough on

没有此设置,tmux 会拦截转义序列,通知将无法到达终端应用。

自定义通知行为(Hooks)

配置通知 Hook 可以实现播放声音、发送消息等自定义行为(与终端通知并行运行):

json
{
  "hooks": {
    "Notification": [
      {
        "matcher": "",
        "hooks": [
          {
            "type": "command",
            "command": "osascript -e 'display notification \"Claude 已完成\" with title \"Claude Code\"'"
          }
        ]
      }
    ]
  }
}

详见 Hooks 文档

处理大段输入

处理大量代码或长指令时的建议:

  • 避免直接粘贴:Claude Code 可能无法处理非常长的粘贴内容
  • 使用文件工作流:将内容写入文件,然后让 Claude 读取
  • VS Code 限制:VS Code 集成终端特别容易截断长粘贴内容

推荐做法:

bash
# 将内容保存到文件
cat > /tmp/big-prompt.txt << 'EOF'
(大段内容在这里)
EOF

# 让 Claude 读取
claude "请读取 /tmp/big-prompt.txt 并..."

Vim 模式

通过 /vim 命令启用,或在 /config 中配置。

要直接在配置文件中设置,在 ~/.claude.json 中将 editorMode 设为 "vim"

Vim 模式支持的功能子集:

  • 模式切换Esc(进入 NORMAL)、i/Ia/Ao/O(进入 INSERT)
  • 导航h/j/k/lw/e/b0/$/^gg/Gf/F/t/T;/, 重复
  • 编辑xdw/de/db/dd/Dcw/ce/cb/cc/C.(重复)
  • 复制/粘贴yy/Yyw/ye/ybp/P
  • 文本对象iw/awiW/aWi"/a"i'/a'i(/a(i[/a[i{/a{
  • 缩进>>/<<
  • 行操作J(合并行)

完整参考见 交互模式文档

相关资源

  • 交互模式:完整键盘快捷键参考
  • Hooks:通知和生命周期 Hooks 配置
  • 设置:状态栏和其他配置选项