我有日誌的格式如下文件:VIM:定製高亮日誌文件
YYYY-MM-DD HH:MM:SS.sss SEVERITY [thread.name] class.name:line -
嚴重性DEBUG之一,INFO,WARN,或ERROR。
我有一個語法文件設置,唯一地突出顯示時間戳和每個不同的嚴重性。但是,現在我想突出顯示線程名稱以及類名和行號。問題是日誌消息中可能會有方括號,因此僅從+\[+
開始,到+\]+
結束將不起作用。
我很想放下我嘗試過的東西,但老實說,我只是不知道該怎麼做。這裏的文件我到目前爲止:
:syn region logTime start=+^\d\{4}-\d\{2}-\d\{2} \d\{2}:\d\{2}:\d\{2}+ end=+ +me=e-1
:syn region logError start=+ERROR+ end=+ +me=e-1
:syn region logWarn start=+WARN+ end=+ +me=e-1
:syn region logInfo start=+INFO+ end=+ +me=e-1
:syn region logDebug start=+DEBUG+ end=+ +me=e-1
hi def logError ctermfg=white ctermbg=red
hi def logWarn ctermfg=yellow
hi def logInfo ctermfg=green
hi def logDebug ctermfg=blue
hi def logTime ctermfg=white ctermbg=blue
我建議閱讀[this。](http://learnvimscriptthehardway.stevelosh.com/)的後面幾章。另外,我認爲如果你使用'hi link'會更好,所以配色方案會有控制你的顏色。例如,'你好鏈接logError錯誤' – EvergreenTree 2015-01-15 15:33:47
你能解釋'hi link'的工作原理嗎?如果我不告訴它用戶使用什麼顏色,它會如何知道? – ewok 2015-01-15 16:20:25
嗨鏈接只是鏈接語法highlgihting組與一個已經存在的組。 Vim在默認情況下有很多這樣的功能,只需輸入高亮命令即可,無需任何參數。 – EvergreenTree 2015-01-15 16:27:42