Re: [vim ] syntax highlight

作者: yoco315 (眠月)   2014-09-13 04:10:45
※ 引述《kevin695 (KG and C's)》之銘言:
: 想請教一下各位,我想要自行編輯syntax highlight
: set是想抓取的固定字串,而abc則是任意非空白字元
: 也想要可以highlight
: 效果如下:
: set abc 1234
: 不知道在syntax檔上面編輯該如何做? 感謝!
首先你要幫你這種檔案格式取一個名字,假設叫做 kevin 好了
假設 kevin 的副檔名都是 .kvn
首先在你的 .vimrc 裡面加上兩行,偵測檔案格式:
au BufNewFile,BufRead *.kvn set filetype=kevin
接著我們要開始撰寫 kevin 的 syntax highlight
到你的 ~/.vim/syntax 底下,建立一個叫做 kevin.vim 的檔案
檔案內容的撰寫方法如下:
首先,我們先定義 set 這個 keyword
syn keyword kevinKeyword set
接著,我們要來辨識你所謂的 abc (非空白),但因為你這邊講的不清不楚的,
如果所有的非空白都要 highlight,那 1234 也是非空白吧?為什麼不用?
但我不管你,我假設規則是「非數字開頭」的要 highlight,數字則不用,
如果我這個假設錯了,請自行修改那個 regex
假設只有非數字開頭的一個字串要 highlight,那接下來要定義一個 match
syn match kevinString "\<\h\w*\>"
接下來要設定他們的顏色,為了省事,我直接綁定到 vim 內建的一些顏色名稱去
HiLink kevinKeyword Keyword
HiLink kevinString String
好,現在 kevin.vim 完成了,存檔離開
接下來只要編輯副檔名是 .kvn 的檔案
就會自動套用你定義的 highlighting 了
作者: kevin695 (KG21)   2014-09-14 17:13:00
哇 太厲害了 感謝!!

Links booklink

Contact Us: admin [ a t ] ucptt.com