我正在尝试使vim成为vim语法文件,以突出显示FlexLM系统中的文件。
它包含由空格分隔的关键字行,我想根据它们所在的位置突出显示不同的颜色。
例如: FEATURE Infinisim infinism 2.4 2014年5月31日1替代
然后,以单词特征开头的每一行将具有一种颜色的下一个单词,另一种颜色的下一个单词,依此类推,由空格分隔。
有没有办法做到这一点?
谢谢
发布于 2015-02-07 00:37:23
我有一个"noddy“vim文件,因为我只想看到基本的东西。将以下内容放入~/.vim/语法/flexlm.vim中
" For version 6.x: Quit when a syntax file was already loaded
if version < 600
syntax clear
elseif exists("b:current_syntax")
finish
endif
" Syntax is case INsensitive
syn case ignore
" Main statements
"===============================================
syn keyword flexlmStatement SERVER DAEMON USE_SERVER
syn keyword flexlmStatement FEATURE INCREMENT skipwhite nextgroup=flexlmToken
syn region flexlmToken start="\S" end="\s" skipwhite nextgroup=flexlmDaemon
syn region flexlmDaemon start="\S" end="\s" skipwhite nextgroup=flexlmVer
syn region flexlmVer start="\S" end="\s" skipwhite nextgroup=flexlmDate
syn region flexlmDate start="\S" end="\s" skipwhite nextgroup=flexlmCount
syn region flexlmCount start="\S" end="\s" skipwhite nextgroup=flexlmStuff
syn region flexlmStuff start="\S" end="$"
syn region flexlmComment start=/#/ end=/$/
syn sync minlines=10
if version >= 508 || !exists("did_flexlm_syntax_inits")
if version < 508
let did_flexlm_syntax_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi def link <args>
endif
HiLink flexlmComment Comment
HiLink flexlmStatement Keyword
HiLink flexlmToken Identifier
HiLink flexlmDaemon Tag
HiLink flexlmVer Label
HiLink flexlmCount Macro
HiLink flexlmStuff Type
delcommand HiLink
endif
let b:current_syntax = "flexlm"然后,您可以在~/.vimrc中使用以下内容将其设置为默认语法突出显示
au BufRead,BufNewFile *.dat set filetype=flexlm显然,您可以根据您的文件扩展名来处理行,例如.lic等。您可以在vim中键入以下内容
:set syntax=flexlm如果你想扩展语法突出显示--请把结果发回来,因为包括选项、文件等会很好。
https://stackoverflow.com/questions/25943675
复制相似问题