Vim emmet 的键映射-vim
Vim key mapping for emmet-vim
好的,这就是我想要完成的:
- 在
INSERT
模式下,我希望 emmet 使用 TAB
键自动完成
这是我试过的
let g:user_emmet_expandabbr_key = '<tab>'
(仅适用于 NORMAL
模式)
虽然上面的代码很有用,但我需要它在INSERT
模式下工作
我正在从 Sublime Text 转移到 VIM,我想念 Emmet 功能如此容易访问。关于如何实现这一点有什么想法吗?
提前致谢。
我猜你的设置在 INSERT
模式下不起作用的原因是因为 <tab>
被映射到其他地方(很可能是一些 auto-completion 插件)。您可以尝试在编辑 HTML 文件时找到 :verbose imap <tab>
映射的内容并将其禁用,但我认为更简单的解决方案是自己覆盖映射,如下所示:
augroup EmmetSettings
autocmd! FileType html imap <tab> <plug>(emmet-expand-abbr)
augroup END
要了解上面的内容,请参阅 :h autocmd
(和 :h augroup
)。基本上它是告诉 vim 在编辑 html
文件时执行指定的命令。要了解您可以使用的其他映射,请参阅 doc.
通过在我的 .vimrc
文件中包含以下行解决了我的问题。
let g:user_emmet_expandabbr_key='<Tab>'
imap <expr> <tab> emmet#expandAbbrIntelligent("\<tab>")
现在我可以使用 TAB
键在 INSERT
模式下缩进和激活 Emmet 片段 :D
好的,这就是我想要完成的:
- 在
INSERT
模式下,我希望 emmet 使用TAB
键自动完成
这是我试过的
let g:user_emmet_expandabbr_key = '<tab>'
(仅适用于NORMAL
模式)
虽然上面的代码很有用,但我需要它在INSERT
模式下工作
我正在从 Sublime Text 转移到 VIM,我想念 Emmet 功能如此容易访问。关于如何实现这一点有什么想法吗?
提前致谢。
我猜你的设置在 INSERT
模式下不起作用的原因是因为 <tab>
被映射到其他地方(很可能是一些 auto-completion 插件)。您可以尝试在编辑 HTML 文件时找到 :verbose imap <tab>
映射的内容并将其禁用,但我认为更简单的解决方案是自己覆盖映射,如下所示:
augroup EmmetSettings
autocmd! FileType html imap <tab> <plug>(emmet-expand-abbr)
augroup END
要了解上面的内容,请参阅 :h autocmd
(和 :h augroup
)。基本上它是告诉 vim 在编辑 html
文件时执行指定的命令。要了解您可以使用的其他映射,请参阅 doc.
通过在我的 .vimrc
文件中包含以下行解决了我的问题。
let g:user_emmet_expandabbr_key='<Tab>'
imap <expr> <tab> emmet#expandAbbrIntelligent("\<tab>")
现在我可以使用 TAB
键在 INSERT
模式下缩进和激活 Emmet 片段 :D