0
我想用iab
映射将时间标记插入到我的Tex
文档中。 (这样我就可以知道转换票据时TEX文件到哪里寻找音符。)Vim中iab映射的奇怪行为
我试图定义c:\vim\vimfiles\ftplugin\tex.vim
如下:
" iab mapping for inserting time stamps.
iab <buffer> sj % <c-r>=strftime("20%y-%m-%d %H:%M:%S")<cr><ESC>o
然而,在插入模式按sj<space>
都会给我以下内容:
% 2015-04-06 09:23:48
i sj 2015-04-06 09:23:48
只有通过按压sj<CR>
将所期望的输出被插入:
% 2015-04-06 09:27:57
<blank line>
<cursor here, in insert mode>
有没有人有线索说明为什么suth i sj 2015-04-06 09:23:48
应该被插入?我该如何阻止它?
一切顺利,
-Linfeng
是的,我想这是在两个地方定义的递归'iab'映射('_vimrc'和'〜\ ftplugin \ tex.vim')导致问题。 [我使用了相同的映射'sj'来触发在不同设置中标记时间的动作。这是这种递归结构的起源。] – llinfeng 2015-04-12 03:00:38
事实证明,将所有'iab'改为'inorea'并不能解决我的问题。按''将发出相同的垃圾输出,而按''来完成这项工作。我认为这个问题还没有部分解决。 –
llinfeng
2015-04-12 20:20:49