设置pastetoggle不工作

时间:2011-10-25 05:53:04

标签: vim osx-snow-leopard iterm

我的vim设置(https://github.com/aaronjorbin/.vim)包含set pastetoggle=<F2>但是fn + F2(当vim在终端中运行时)导致vim进入插入模式并在其自己的行上输出Q(我已经处于插入模式时的相同行为)。如果我在本地机器上工作或者我已经在另一台服务器上工作,这是一样的。

在iterm2中,当我处于正常或可视模式时,没有任何反应。当我处于插入模式时,会插入<F2>

我的配置在我的mac mini和linux上网本上运行得非常好,但这让我陷入了困境。

4 个答案:

答案 0 :(得分:5)

这可能是由于您的TERM类型设置为xterm xterm-color或xterm-256color之外的其他类型。由于某种原因我无法记住,因此将我的设置设置为linux。这导致功能键发送转义序列而不是被解释为功能键按下。 ie- F2正在发送^[OQ而不是<F2>

如果您需要该终端类型,可以通过按<ctrl-v><F2>代替键入<F2>

来更改.vimrc以使用您想要的密钥

更简单的解决方法当然是将您的终端类型更改为允许vim工作而不会跳过篮球的东西。

答案 1 :(得分:4)

你的vimrc中有set noesckeys

我很久以前就已经阅读过(没有消息来源,对不起)有些功能键在某些终端被解释为<Esc>number<Esc>9<F9>)。

如果我说得对,如果我正确阅读:help noesckeysset noesckeys会阻止所有功能键。试着评论一下。

答案 2 :(得分:1)

(很晚才回答我知道,但其他人可能觉得这很有用)

我遇到了同样的问题(OSX10.9.5上的Vim7.4),对我来说有用的是在设置nocompatible(nocp)之后设置pastetoggle

答案 3 :(得分:0)

我发现在Mac上F2键被映射到“打开/关闭打开请勿打扰”。您可以在系统偏好设置 - &gt;下禁用此设置。键盘 - &gt;快捷方式 - &gt;任务控制。取消选中该复选框或选择另一个键。图片如下enter image description here