仅在特定字符后使用键映射

Use key mapping only after specific characters

本文关键字:映射 字符      更新时间:2023-10-16

我想使用 tab 调用自动完成的 deoplete。

我目前在我的 vimrc 中使用它:

inoremap <silent><expr> <Tab> pumvisible() ? "<C-n>" : deoplete#mappings#manual_complete()

仅当光标位于某些字符(如"."或"::"(之后时,是否可以进行此映射?

正如其他人所提到的,这可能已经内置在插件中,因为它是有意义的。


以下是对一般问题的答案:

要仅在光标前有某些字符时触发映射,将:help :map-expr与非跳转搜索一起使用。例如,这会将x变成笑脸写在.或 #:

inoremap <expr> x search('[.#]%#', 'bcnW') ? ':-)' : 'x'