将 Tmux 前缀设为 Ctrl+x 确实最顺手,但确实会遇到 跟 emacs 键位冲突, 所有不要再 tmux 中在开启 emacs
~/.tmux.conf
# 1. 开启鼠标支持
set -g mouse on
# 2. 将前缀键改为 Ctrl + x (最像 Emacs 的操作)
unbind C-b
set -g prefix C-x
bind C-x send-prefix
# 3. 开启内部 Emacs 键位 (移动、搜索、复制)
setw -g mode-keys emacs
set -g status-keys emacs
# 4. 模拟 Emacs 分屏习惯
# Ctrl+x 然后按 3 -> 左右分屏
bind 3 split-window -h
# Ctrl+x 然后按 2 -> 上下分屏
bind 2 split-window -v
# 5. 模拟 Emacs 切换和关闭
# Ctrl+x 然后按 o -> 切换到下一个分屏 (other-window)
bind o select-pane -t :.+
# Ctrl+x 然后按 k -> 关闭当前分屏 (kill-buffer)
bind k kill-pane
# !! 不能在 tmux 中再使用emacs, 会造成键位冲突, emacs 就有类似 tmux 功能, 简单
| 动作 | Raw Tmux | Emacs Style |
|---|---|---|
| 前缀键 | Ctrl+b | Ctrl+x |
| 左右分屏 | Prefix + % | Ctrl+x 然后 3 |
| 上下分屏 | Prefix + " | Ctrl+x 然后 2 |
| 切分屏 | Prefix + 方向键 | Ctrl+x 然后 o |
| 关分屏 | Prefix + x | Ctrl+x 然后 k |
| 搜历史 | (Vi 风格) | Ctrl+r / Ctrl+s |
| 移动光标 | (Vi 风格) | Ctrl+p, Ctrl+n, Ctrl+a, Ctrl+e |