我的工作通过包含ifdef块的long verilog代码浏览。我的主要编辑是emacs。下面是一个典型的例子:使用emacs在verilog代码中折叠/识别当前的`ifdef块
module Foo(
...
...
);
// Inputs, Outputs
...
`ifdef CONDITION_1
...
...
`else // CONDITION_1
...
...
`ifdef CONDITION_2
...
...
`endif //CONDITION_2
...
...
foo <= 1'b1;
...
...
`endif // CONDITION_1
正如你可以看到foo <= 1'b1;
是在IFDEF CONDITION_1假设我的观点是上线foo <= 1'b1;
的其他块有没有办法让我可以直接移动到该行ifdef CONDITION_1或折叠代码,以便我可以看到CONDITION1?我尝试使用后向增量搜索,但在这种情况下,我最终在ifdef CONDITION_2 我试着使用hide-ifdef模式,但它标识#ifdef而不是`ifdef。这些块不使用括号。所以使用C-M-u并没有帮助
感谢百万兄弟...所有'别的已被评论与相应的条件,所以它确定,即使它停在'其他。:) – Pulimon 2012-01-04 04:45:47
我想你会想要的,否则你怎么知道它是否在'如果def部分或'else部分:) – scottfrazer 2012-01-04 12:55:58
另外如果不是很明显:如果'else没有被评论,只需从那里再次执行命令,它将跳转到'ifdef。 – scottfrazer 2012-01-04 13:38:28