2011-08-31 76 views
1

我想爲vimbison語法文件。我設法爲定義部分編寫了語法規則。現在我試圖編寫bison規則的語法規則。所以,我有將簡單的形式語法翻譯成vim語法

rule : identifier ":" rightHandSidePart ("|" rightHandSidePart)* ";" 

其中

rightHandSidePart : listOfIdentifiers "{" /* some C code here */ "}" 
listOfIdentifiers : listOfIdentifiers identifier | /* nothing */ 

identifier可以聲明爲[_a-zA-Z][_0-9a-zA-Z]*正則表達式。
所以問題是:如何將此語法翻譯成vim語法規則?

+0

你不能只使用yacc語法文件嗎? – sidyll

+0

@sidyll,我用它,但它缺乏'野牛'特定的關鍵字和塊的支持。現在我正在調整內置的yacc語法文件,但是這個是一團糟,所以我最終完全重寫了它 – UncleAli

回答

2

您可能可以使用autohighlight將語法轉換爲vim的語法正則表達式。

Autohighlight從BNF語法生成vim和emacs語法突出顯示,並描述哪些術語應突出顯示哪些顏色。