【问题标题】:Mapping control keys in GVim without <c-> and i_ctrl_v在没有 <c-> 和 ctrl v 的情况下映射 Vim 中的控制键
【发布时间】:2012-08-17 02:25:57
【问题描述】:

我有一个问题,我已经在 X 服务器级别解决了(顺便说一句:我运行的是 Ubuntu 12.04),但在 GVim 中没有。

我有一个带有字母 öä 的德语键盘布局,其中 [] 位于QWERTY键盘。但是现在我想更改 vim 的正常模式映射,这样我就可以键入 öCtrl+ö 就好像它是 [ kbd> 和 CTRL+[ 分别。所以我创建了一个 xmodmap 文件并将 Ctrl+ö 映射到 CTRL+[。现在 xserver 表现出正确的响应(例如,当我将 Ctrl+ö 映射到 Ctrl+u 时,我可以擦除xterm 中的当前行)。

但不知何故,这在 gVim 中不起作用,据我了解 gVim 帮助它以特殊方式处理 Ctrl+ 之类的转义序列(例如 Ctrl+ö 在插入模式下产生一个普通的 öxterm 中的行为相反)。但我不明白如何解决这个问题。谁能帮帮我?

编辑:

我注意到,当我在终端模拟器(guake)中运行 Vim 时,它确实工作,但在 GVim(我想开始工作)中却没有。

【问题讨论】:

  • 是的,GVim 对&lt;C-ö&gt;ö 没有影响(与我的法语键盘上的é 和其他人一样)。你想要一些奇怪的东西吗? MacVim 不关心 ] 的物理位置:&lt;C-$&gt;&lt;C-]&gt; 相同。
  • 标题中的“没有 和 i_ctrl_v”是否意味着您不想要使用 Vim 的 :map 命令的解决方案? (你不想让 vim 知道你做了什么。)
  • 当你在 Gvim 中执行 &lt;C-v&gt;&lt;C-ö&gt;&lt;C-v&gt;&lt;C-[&gt; 时会发生什么?它是否输出相同的字符代码?与您在 Vim 中执行相同操作时的结果相比如何?

标签: xserver vim xmodmap


【解决方案1】:

如果我理解正确,请尝试像这样使用langmap 选项:

:set langmap=ö[,ä]

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-07-28
    • 1970-01-01
    • 2023-03-08
    • 2014-06-06
    • 1970-01-01
    • 2016-06-26
    • 2014-04-09
    • 2017-01-11
    相关资源
    最近更新 更多