Ifdef / elsif / else / endif Verilog预处理关键字的语法折叠

时间:2015-01-27 19:23:18

标签: vim

Verilog支持以下预处理关键字结构:

`ifdef A
  `ifdef B
  `else
  `endif
`elsif C
`endif

我正在寻找一种语法定义,允许嵌套折叠此结构的各个元素,但允许在其中使用透明语法高亮显示(contains=ALL)。以下是所需折叠的示例。

我已尝试过在StackOverflow上的先前问题中找到的等效#ifdef,#elsif,#endif示例的示例,但在实现/移植方面没有成功。

折叠嵌套关键字:

`ifdef A
--  X lines: `ifdef B---------
--  X lines: `else------------
`elsif C
`endif

折叠顶级`ifdef

--  X lines: `ifdef A---------
`elsif C
`endif

折叠顶级`elsif

`ifdef A
  `ifdef B
  `else
  `endif
--  X lines: `elsif C---------

1 个答案:

答案 0 :(得分:1)

看看Syntax folding of Vim scripts;它为Vimscript提供了这样的语法定义。如果您对Vim的语法高亮有点熟悉,那么您应该能够将其与Verilog语法相适应。