繁体   English   中英

获取vim为CSS类和ID名称提供制表符补全

[英]Get vim to provide tab completion for CSS class and ID names

我一直想念并始终插入vim的一个IDE功能是制表符补全。

我是SuperTab的忠实拥护者 ,但我无法忍受的事实是,它会将CSS类名和ID的一部分(带有短划线的部分)视为单个单词。

我已经找到了camelCase和underscore_completion的几种可能的解决方案,但是我似乎找不到任何支持纯破折号的东西。

这不是特定于CSS的问题:Vim使用iskeyword的值执行iskeyword

类型:set iskeyword? 查看哪些字符被视为关键字的一部分。 在Mac上,默认值为@,48-57,_,192-255

您可以使用以下命令将破折号添加到列表中:

:set iskeyword+=-

将此行添加到~/.vimrc以使此设置生效:

set iskeyword+=-

这似乎为我工作:

autocmd FileType css,scss set iskeyword=@,48-57,_,-,?,!,192-255

从这里获取: VIM:如何在CSS文件中自动完成,并在HTML文件中声明标签ID和类名

对于将来的读者:如果您希望使用破折号来进行编辑/移动命令,但又希望完全自动完成属性,请尝试将其添加到.vimrc

augroup css_dash_autocompletion
    autocmd FileType scss,css autocmd! css_dash_autocompletion InsertEnter <buffer> set isk+=-
    autocmd FileType scss,css autocmd css_dash_autocompletion InsertLeave <buffer> set isk-=-
augroup END

第一! 防止重复事件触发。 感谢ZyX的结构。 如果重新source.vimrc ,你将需要:e任何(S)已打开拿起改变CSS文件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM