首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Vim中iab映射的怪异行为

Vim中iab映射的怪异行为
EN

Stack Overflow用户
提问于 2015-04-06 13:29:28
回答 1查看 218关注 0票数 0

我想使用iab映射将时间标记插入到我的Tex文档中。(这样,在将便笺转换为tex文件时,我可以知道在哪里查找便笺。)

我试图在c:\vim\vimfiles\ftplugin\tex.vim中定义以下内容

代码语言:javascript
复制
" iab mapping for inserting time stamps.
iab <buffer> sj % <c-r>=strftime("20%y-%m-%d %H:%M:%S")<cr><ESC>o

但是,在插入模式下按sj<space>将给我以下信息:

代码语言:javascript
复制
% 2015-04-06 09:23:48

i  sj            2015-04-06 09:23:48 

只有通过按sj<CR>才能插入所需的输出:

代码语言:javascript
复制
% 2015-04-06 09:27:57
<blank line>
<cursor here, in insert mode>

有人知道为什么应该插入suth i sj 2015-04-06 09:23:48吗?我怎样才能阻止它?

万事如意,

-Linfeng

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-06 17:35:00

您提到在c:\vim\vimfiles\ftplugin\tex.vim中定义了缩写,它似乎位于Vim的安装路径中。您可能应该在您的用户目录中定义它,以便在更新它时避免丢失这些更改;这在Vim常见问题26.1中有解释。

你的缩写在这里很好。您的缩写可能触发了您设置的另一个缩写;您可以通过将iab替换为inorea来避免它。您还可以用:iab列出所有现有的缩写,用:imap列出插入模式映射,以检查哪些是干扰的。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29472266

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档