Vim:在插入模式下重新映射美元符号

时间:2016-08-09 14:29:45

标签: vim

请考虑.vimrc中的以下行:

autocmd Filetype tex inoremap <buffer> $ $$^[i

目的是在插入模式下键入一个TeX文件时插入两个美元符号,类似于自动关闭括号的工作方式。

但是,每当我打开TeX文件时,Vim只会打印消息No mapping found。我也试图逃避美元符号(... inoremap \$ $$^[i),但这似乎没有什么区别。

2 个答案:

答案 0 :(得分:1)

想出来。美元符号之间的空格是一个不间断的空间(键入$需要在我的键盘上按 AltGr ,这与空间相结合会在Unix上产生不间断的空间)。将其更改为常规空间可解决问题。

显然我多次犯了同样的错误,因为我在试图找出问题的原因时,在我的配置周围的各个地方重新输入了命令。

答案 1 :(得分:0)

您的问题是您的vim会将您的tex文件识别为plaintex文件类型。 你应该添加一行

let g:tex_flavor = "latex"

到您的.vimrc文件,使其将tex文件识别为TeX。

所以,我相信您想将这些行添加到.vimrc文件中:

let g:tex_flavor = "latex"
autocmd Filetype tex inoremap <buffer> $ $$^[i

您可以在此处找到有关此问题的更多信息:
https://superuser.com/questions/208177/vim-and-tex-filetypes-plaintex-vs-tex