当我在 vim 中使用制表符时,我使用快捷键 ctrl+pgup 和 ctrl+pgdn 在制表符之间导航。我知道我可以执行 :tabnext 和 :tabprev,但这肯定需要更多按键。
一切正常,直到我在屏幕会话中运行 vim。要重现:
touch .screenrc.tmp && screen -c .screenrc.tmp
(使用空的 screenrc 启动屏幕)
然后运行:
vim -p file1 file2
并尝试通过 ctrl+pgup 和 ctrl+pgdn 在选项卡之间导航。如果任一文件中有一些文本,也会发生一些奇怪的大小写变化。
屏幕版本为 4.00.03jw4
vim 版本是 7.3.429
谢谢!
答案1
比较t_kP
每个场景中的选项。Xterm 中的 Vim 是^[[5;*~
;Screen 中的 Vim 是^[[5~
。当该选项使用后一个值时,转义序列^[[5;5~
不会被识别为 ctrl-pageup。我总是使用 xterm,所以这个插件将设置t_kP
和其他 Vim 终端选项,因此修改后的 F 键、page up/down 等都可以正常工作:https://github.com/godlygeek/vim-files/blob/master/plugin/terminalkeys.vim