将<ctrl-ctrl>映射到VIM中的ESC </ctrl-ctrl>

时间:2014-07-16 00:27:50

标签: vim tmux

在OS X上,我在键盘修改器设置中将Caps-Lock更改为 CTRL 。这很好,但是我想在 VIM CTRL CTRL (快速双击)到 ESC >(我的小指正在抵抗 CTRL [)。可能的?

两秒后已经使用au CursorHoldI * stopinsertset ut=2000退出Insert Mode,但有些插件会干扰(最常见的是完成)。

除此之外:如果可能,这会与 Tmux 产生冲突吗?

3 个答案:

答案 0 :(得分:7)

你根本无法在Vim中映射 Ctrl ,更不用说 Ctrl Ctrl 了。它严格来说是一个修饰键。

答案 1 :(得分:4)

正如@echristopherson所提到的,Karabiner可以做一些严重的重映射巫术...... 跳过他的建议,我找到了Karabiner文档并提出了:

<?xml version="1.0"?>
    <root>
    <item>
        <name>Ctrl Freak</name>
        <identifier>private.double_ctrl_to_escape</identifier>
        <autogen>
            __DoublePressModifier__
            KeyCode::CONTROL_L, KeyCode::CONTROL_L,
            KeyCode::ESCAPE
        </autogen>
    </item>
</root>

我已经用它进行了一些快速测试,但是从第一次看来,似乎在OSX,SUBLIME TEXT和VIM(在TMUX会话中)没有问题。

请记住:
这是一个 系统范围的 解决方案。 对我来说,这是一件好事。我使用60%的键盘,需要充分利用我的房地产。

对于 特定于VIM的解决方案:
您需要添加该位。可以找到文档here

干杯!

答案 2 :(得分:0)

免费程序Karabiner(以前称为KeyRemap4MacBook)可以执行许多重新映射这种性质的事情。我不是特别了解双按键,但我知道可以将 Ctrl 单击一下作为 Esc ,同时处理 Ctrl < / kbd>按住一段可配置的时间)