【问题标题】:How to map "ñ" and "º" chars on .vimrc?如何在 .vimrc 上映射“ñ”和“º”字符?
【发布时间】:2014-07-09 06:59:06
【问题描述】:

使用像这样的西班牙语键盘布局:


(来源:terena.org

我正在尝试将我的.vimrc 中的ñ 映射到正常模式下的:,并将左上角的º 映射到插入模式下的<esc>,但它不起作用。我在.vimrc 上尝试过使用imapinoremap,例如:

nnoremap ñ :
inoremap º <esc>

我在 Linux 和 Windows 上都尝试过使用 Vim 7.4(Windows 上的 gvim)。奇怪的是,如果我在正常模式下而不是在.vimrc 文件中进行重新映射,它们就可以工作。就像这些字符在普通模式命令行中的处理方式不同,实际上在加载 .vimrc 后,:nmap ñ 返回“未找到映射”。

你可以在这里查看我当前的.vimrchttps://github.com/juanjux/My-Vim-dir/blob/master/.vimrc

【问题讨论】:

  • 这两种映射都对我有用,即使在 .vimrc 中也是如此。你确定你的vimrc 是正确的吗?我在里面找不到ñ。无论如何检查文件是否保存为utf8。 (:help fileencoding)
  • 顺便说一句,我建议尝试英国键盘布局。从西班牙语切换后,一个编程变得容易了两倍 :) Vim 简单了 10 倍 :D
  • 你确实把它们放在:set encoding=utf=8之后,对吧?!
  • @DavidEG:是的,我的 .vimrc 文件的编码显示为 utf-8[unix]。我已经尝试过使用英文布局,但我已经太老了,无法更改,这种布局在我的大脑中几乎是硬连线:) 这就是为什么我要重新映射西班牙布局的一些键(成功 n-mapping - to /但不是这些)。
  • @IngoKarkat 是的,set encoding=utf-8 几乎位于顶部,我将它们放在下面的“快捷方式”部分。但是你给了我一个想法:我在 .vimrc 上注释了 set encoding 行,重新启动 Vim,将映射添加到我的 .vimrc,保存,取消注释 set encoding 行,重新启动 vim,现在一切正常。看起来 Vim 不喜欢它的非美国键映射为 UTF-8。

标签: vim


【解决方案1】:

DavidEG 给了我一个提示,让我找到了可行的解决方案。

  1. 注释或删除.vimrc 文件中的任何set encoding=
  2. 重启 Vim
  3. 将地图添加到您的.vimrc 文件中。保存。
  4. 取消注释set encoding= 行。

这在 Linux 和 Windows 上对我有用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-13
    • 1970-01-01
    • 2023-03-08
    • 2014-06-12
    • 2014-11-13
    相关资源
    最近更新 更多