簡體   English   中英

Vim語法突出顯示每一行的第一個單詞

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM