我的键盘上有一个 ½ 键,有时我想在 Vim 中编辑 LaTeX 以扩展为正确的表达式时使用它,即\frac{1}{2}
.
我知道我应该做类似的事情:
inoremap ½ \frac{1}{2}
现在,我怎样才能使它只适用于 LaTeX 文件?
我的键盘上有一个 ½ 键,有时我想在 Vim 中编辑 LaTeX 以扩展为正确的表达式时使用它,即\frac{1}{2}
.
我知道我应该做类似的事情:
inoremap ½ \frac{1}{2}
现在,我怎样才能使它只适用于 LaTeX 文件?
您将通过<buffer>
修饰符获得映射的缓冲区局部变体。
要定义所有Tex缓冲区的映射,您可以使用:autocmd
onFileType
事件(:setlocal filetype?
将告诉您实际的文件类型):
:autocmd Filetype tex inoremap <buffer> ½ \frac{1}{2}
但是当您为各种文件类型添加映射和其他设置时,这会变得很笨拙。最好将命令放入~/.vim/ftplugin/tex_mappings.vim
. (这要求你有:filetype plugin on
。)
您想要 Fietype 特定的自动命令:
autocmd Filetype tex,latex inoremap ½ \frac{1}{2}
尝试类似的东西。这取决于打开的Filetype
选项(请参见此处)。你可以设置它set Filetype on
您还可以使用 autocmd 在读取或创建新文件时检查文件名:
autocmd BufNewFile,BufRead *.latex inoremap ½ \frac{1}{2}
此外,您应该确认按下键盘上的 1/2 键实际上输入了 1/2 符号,否则显然这是行不通的。无论如何,您可以通过(在插入模式下)按 ctrl-v 然后按物理键来确定 1/2 键实际插入的代码。