[英]Vim syntax highlight first word of each line
我有一種文件格式,其中每行的第一個單詞都有特殊含義。 我想編寫一個.vim
文件來自定義此類語法突出顯示。 我閱讀了一些有關突出顯示關鍵字或匹配項的教程。 但是似乎沒有明確的方法可以解決我的問題。 有人知道如何實現嗎?
您需要創建一個語法匹配器,然后將其鏈接到突出顯示。
syn match startLineMatch /^\s*\w\+/
hi def link startLineMatch Error
這將突出顯示每一行的第一個單詞。
/^\\s*\\w\\+/
匹配行^
的開頭,然后匹配任意數量的空格\\s*
,然后匹配一個或多個單詞字符\\w\\+
。 文字字符等效於[a-zA-Z]
。 如果要匹配任何空白字符,則可以使用\\S
代替\\w
。
在這種情況下,我將Error的突出顯示定義重用(鏈接)到我們的自定義突出顯示定義中以開始行匹配。
如果您嘗試覆蓋現有的突出顯示組,則此方法將不起作用,因為syn keyword
在語法突出顯示中的優先級高於syn match
。 您將必須刪除現有的關鍵字突出顯示才能使新匹配生效。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.