Vim插件:在插入模式下调用函数会将函数签名插入缓冲区,而不是实际调用函数
例如,使用VimOrganizer:Vim插件:在插入模式下调用函数会将函数签名插入缓冲区,而不是实际调用函数,vim,Vim,例如,使用VimOrganizer: *一个 然后,当我按Enter键时,缓冲区中的结果是: *oneorg#tbl#kbd#U cr() 至少对于.vimrc,有不同的模式映射键,例如,imap用于插入模式,nmap用于正常模式。如果使用imap映射某个对象,它需要知道它处于插入模式,并相应地生成命令,例如: :inoremap <F2> <C-R>=expand('%:p:h')<CR> :inoremap=expand('%:p:h') 请参阅
*一个
然后,当我按Enter键时,缓冲区中的结果是:
*oneorg#tbl#kbd#U cr()
至少对于.vimrc,有不同的模式映射键,例如,imap用于插入模式,nmap用于正常模式。如果使用imap映射某个对象,它需要知道它处于插入模式,并相应地生成命令,例如:
:inoremap <F2> <C-R>=expand('%:p:h')<CR>
:inoremap=expand('%:p:h')
请参阅我的信息。看起来您将表达式映射与标准映射混合在一起
org#tbl#kbd_cr()
是一个将击键返回到表达式映射的函数(:help map expr
)17_autopairsrurn
本身就是一个(脚本范围的)映射。要将两者连接起来,请为函数使用中间映射:
:inoremap <expr> <SID>org-mapping org#tbl#kbd_cr()
:imap <Enter> <SID>org-mapping<SNR>17_AutoPairsReturn
:inoremap组织映射组织#tbl#kbd#u cr()
:imap org-mapping17_返回
显示您的映射:imap
i&@org#tbl#kbd#u cr()17"自动返回
是的,似乎就是这样。为了解决这个问题,我只是用另一个提供相同功能的插件(自动配对)替换了有问题的插件(自动配对)。