我使用tags -R *来生成标签。但是它不会为。haml和。less文件生成标签。是否有一个单独的选项来为这些文件生成标记?
我认为默认情况下标签中不支持haml。以下是支持的语言:http://ctags.sourceforge.net/languages.html。你也许可以用一点谷歌来添加对它的支持。
要添加对less的支持,请将此粘贴到您的标签文件中:
--langdef=less
--langmap=less:.less
--regex-less=/^[ t]*.([A-Za-z0-9_-]+)/1/c,class,classes/
--regex-less=/^[ t]*#([A-Za-z0-9_-]+)/1/i,id,ids/
--regex-less=/^[ t]*(([A-Za-z0-9_-]+[ tn,]+)+){/1/t,tag,tags/
--regex-less=/^[ t]*@medias+([A-Za-z0-9_-]+)/1/m,media,medias/
以上表达式是ctrl-]
友好的。如果您正在使用kien/ctrlp。vim,使用
--langdef=less
--langmap=less:.less
--regex-less=/^[ t]*.([A-Za-z0-9_-]+)/.1/c,class,classes/
--regex-less=/^[ t]*#([A-Za-z0-9_-]+)/#1/i,id,ids/
--regex-less=/^[ t]*(([A-Za-z0-9_-]+[ tn,]+)+){/1/t,tag,tags/
--regex-less=/^[ t]*@medias+([A-Za-z0-9_-]+)/1/m,media,medias/
将.
加在类的前面,#
加在id的前面。
您可以使用
查询支持的语言列表$ ctags --list-languages
有一些Exuberant标签的补丁,增加了对更多语言的本地支持,但我还没有看到haml或less的任何补丁。但是,您可以在~/.ctags
中通过正则表达式定义添加支持;