我一直在使用 tmux,我很喜欢它。然而,在其中运行 vim 时有一个烦人的问题。
不知何故,箭头键会被重新映射,但仅限于特定时间,例如启动 Command-T 时,如果我尝试向下滚动文件列表,则命令会被取消并且我会进入插入模式,并且根据我按下的箭头键,插入 A、B、C 或 D。
例如,如果我使用箭头穿过缓冲区,它们就能正常工作。
有任何想法吗?
谢谢!
答案1
我只是添加set -g default-terminal "xterm"
到我的 .tmux.conf
这使得 tmux 使用 xterm 而不是屏幕,所以生活很美好,我不需要担心踩到键绑定。
答案2
最后我在这里找到了答案:在 OSX 上运行屏幕时,command+r 会使 vim 中的所有屏幕中的箭头键混乱
奇怪的是我只在 .vimrc 文件中添加了一个映射:
map <Esc>[B <Down>
但是该单一映射使得所有箭头键都能正常工作......
答案3
xterm 和 xterm-256color 会导致 BCE 问题。请参阅http://permalink.gmane.org/gmane.comp.terminal-emulators.tmux.user/1932。
答案4
Command-T 在终端中运行时通过映射做了一些愚蠢的事情。如果 $TERM 是 vt100* 或 xterm*,它会跳过映射,但这不是一个好的解决方案。