根据 latex-suite 文档,`.
应该扩展为\cdot
但这对我来说不起作用。所有其他缩写(希腊字母和数学)都可以。我试着看了一下~/.vim/ftplugin/main.vim
,看起来不错:
call IMAP (g:Tex_Leader.'.', '\cdot', "tex")
或者至少它与其他缩写设置相同。`
我查看了wizardfuncs.vim
和(全部在路径中),因为我不知道 vim 实际上读取了哪个文件,并且有以下几行:mathmacros.vim
mathmacros-utf.vim
~/.vim/ftplugin/
\."\n `. \\cdot `* \\times"
exe s:pA8.'cdot<Tab>`. <plug>\
exe s:pA8.'cdot<Tab>`.\ \ ⋅ <plug>\cdot '
与其他缩写格式没有区别。即使手动输入
call IMAP('`.', '\\cdot', 'tex')
无法解决~/.vimrc
。
我知道这不是什么大问题,但我有点好奇为什么`.
它无法解决......
答案1
这与智能点键映射会自动替换...
为\cdots
、\ldots
或\dots
(视情况而定)。如果您通过添加
let g:Tex_SmartKeyDot=0
至$VIMFILES/ftplugin/tex.vim
,则键映射将按预期工作。
发生这种情况是因为函数的实现方式SmartDots()
:vim-latex 监视任何.
插入,如果只有 1 个或 2 个连续的点,函数将分别返回.
或..
。当它看到三个连续的点时,它会插入适当的“点”宏。这似乎会覆盖任何 IMAP 映射,因为最后一个.
不是由用户插入的,而是由函数返回的。您还可以通过添加映射来测试这一点,例如
call IMAP('TEST.', 'test', 'tex')
只要启用智能点,它就不起作用。
如果您使用amsmath
或ellipsis
包,那么这\dots
就是您所需要的。要使用“。”键映射,您只需添加
let g:Tex_SmartKeyDot=0
call IMAP('...', '\dots', 'tex')
到$VIMFILES/ftplugin/tex.vim
。