2

我的键盘上有一个 ½ 键,有时我想在 Vim 中编辑 LaTeX 以扩展为正确的表达式时使用它,即\frac{1}{2}.

我知道我应该做类似的事情:

inoremap ½ \frac{1}{2}

现在,我怎样才能使它只适用于 LaTeX 文件?

4

2 回答 2

5

您将通过<buffer>修饰符获得映射的缓冲区局部变体。

要定义所有Tex缓冲区的映射,您可以使用:autocmdonFileType事件(:setlocal filetype?将告诉您实际的文件类型):

:autocmd Filetype tex inoremap <buffer> ½ \frac{1}{2}

但是当您为各种文件类型添加映射和其他设置时,这会变得很笨拙。最好将命令放入~/.vim/ftplugin/tex_mappings.vim. (这要求你有:filetype plugin on。)

于 2013-11-15T08:13:14.410 回答
3

您想要 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 键实际插入的代码。

于 2013-11-14T18:44:32.923 回答