我的vim设置(https://github.com/aaronjorbin/.vim)包含set pastetoggle=<F2>
但是fn + F2(当vim在终端中运行时)导致vim进入插入模式并在其自己的行上输出Q
(我已经处于插入模式时的相同行为)。如果我在本地机器上工作或者我已经在另一台服务器上工作,这是一样的。
在iterm2中,当我处于正常或可视模式时,没有任何反应。当我处于插入模式时,会插入<F2>
。
我的配置在我的mac mini和linux上网本上运行得非常好,但这让我陷入了困境。
答案 0 :(得分:5)
这可能是由于您的TERM类型设置为xterm xterm-color或xterm-256color之外的其他类型。由于某种原因我无法记住,因此将我的设置设置为linux。这导致功能键发送转义序列而不是被解释为功能键按下。 ie- F2正在发送^[OQ
而不是<F2>
。
如果您需要该终端类型,可以通过按<ctrl-v><F2>
代替键入<F2>
更简单的解决方法当然是将您的终端类型更改为允许vim工作而不会跳过篮球的东西。
答案 1 :(得分:4)
你的vimrc中有set noesckeys
。
我很久以前就已经阅读过(没有消息来源,对不起)有些功能键在某些终端被解释为<Esc>number
(<Esc>9
为<F9>
)。
如果我说得对,如果我正确阅读:help noesckeys
,set noesckeys
会阻止所有功能键。试着评论一下。
答案 2 :(得分:1)
(很晚才回答我知道,但其他人可能觉得这很有用)
我遇到了同样的问题(OSX10.9.5上的Vim7.4),对我来说有用的是在设置nocompatible(nocp)之后设置pastetoggle 。
答案 3 :(得分:0)