-
Notifications
You must be signed in to change notification settings - Fork 0
terminal guide keymaps
ES edited this page Jul 16, 2026
·
1 revision
三个终端维护一致的窗口、分屏和字体快捷键。当前 Kitty、WezTerm 和 Ghostty 都默认启用 tmux 模式,native 模式配置保留但未加载
| 快捷键 | 功能 |
|---|---|
Ctrl-Shift-t |
新建 tab;tmux 模式中创建 window |
Ctrl-Shift-w |
关闭 tab;tmux 模式中关闭 window |
Ctrl-1~Ctrl-8
|
切换 tab 或 tmux window |
| 快捷键 | 功能 |
|---|---|
Ctrl-Alt-\ |
左右分屏,在右侧创建 pane |
Ctrl-Alt-- |
上下分屏,在下方创建 pane |
Ctrl-Alt-w |
关闭 pane |
Ctrl-Alt-h/j/k/l |
切换 pane |
Ctrl-Alt-方向键 |
调整 pane 大小 |
| 快捷键 | 功能 |
|---|---|
Ctrl-= / Ctrl--
|
放大或缩小字体 |
Ctrl-0 |
恢复默认字体大小 |
| 右键 | 粘贴剪贴板内容 |
tmux 模式下,tab、数字切换和部分 pane 快捷键由终端转换为明确的 CSI-u 序列,再交给 Tmux 处理。这样可以避开 legacy 控制字符编码和 Tmux 二次转换造成的冲突
实际窗口与 pane 行为由 Tmux 快捷键 定义
| 快捷键 | 发送序列 | 用途 |
|---|---|---|
Ctrl-反引号 |
ESC [ 96;5u |
Neovim 终端切换 |
Ctrl-Shift-l |
ESC [ 108;6u |
Neovim 多光标功能 |
Kitty 和 WezTerm 还会为 Shift-Enter 发送 CSI-u 换行;Ghostty 当前没有这项绑定,因此不要把它视为三端共同行为
| 终端 | Neovim pane 导航 | 说明 |
|---|---|---|
| Kitty | 支持 | 通过 IS_NVIM 条件映射和 smart-splits,并使用脚本做相对尺寸调整 |
| WezTerm | 支持 | Lua 回调检测前台进程是否为 Neovim,再决定透传还是操作终端 pane |
| Ghostty | 不完整 | 缺少前台进程条件 API,native 模式可能吞掉 Ctrl-Alt-h/j/k/l
|
因此 Ghostty 更适合使用当前默认的 tmux 模式。若切换到 Ghostty native 模式,Neovim 分屏建议使用 <C-w>h/j/k/l
| 终端 | 入口 | tmux 模式 | native 模式 |
|---|---|---|---|
| Kitty | ~/.config/kitty/kitty.conf |
modules/keys-tmux.conf |
modules/keys-native.conf |
| WezTerm | ~/.config/wezterm/wezterm.lua |
modules/keys-tmux.lua |
modules/keys-native.lua |
| Ghostty | ~/.config/ghostty/config |
modules/keys-tmux.config |
modules/keys-native.config |
切换模式时只启用一套窗口管理按键,避免终端原生 tab/pane 与 Tmux 同时响应