簡體   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