tagbar插件中的SystemVerilog支持



任何人都可以帮助我在tagbar vim插件中添加SystemVerilog语言支持。

我在下面尝试过,但它对我不起作用

1)创建〜/.ctags并从https://github.com/shaohao/config.d/blob/master/ctags

复制代码

3)CD到项目目录并运行CTAGS -R *

低于警告
 ctags: Warning: Unknown language specified in "langmap" option

以下是CTAG的一些输出

 ctags --list-languages
 ctags: Warning: Unknown language specified in "langmap" option
 .
 .
 systemverilog
 ctags --list-kinds=systemverilog
 ctags: Warning: Unknown language specified in "langmap" option
 e  clocking 
 i  constraint 
 l  covergroup 
 o  class 
 t  function 
 A  interface 
 G  module 
 J  package 
 M  program 
 W  task 

但是,当我在GVIM中打开SV文件并使用时:TagBartoggle tagbar窗口为空白:(

请帮助

我在GitHub上提供了一些我对Verilog_Systemverilog VIM插件的改进。如果您将Exuberante-ctags与我的VIM插件一起使用此开发版本以及以下tagbar配置:

let g:tagbar_type_verilog_systemverilog = {
         'ctagstype'   : 'SystemVerilog',
         'kinds'       : [
             'b:blocks:1:1',
             'c:constants:1:0',
             'e:events:1:0',
             'f:functions:1:1',
             'm:modules:0:1',
             'n:nets:1:0',
             'p:ports:1:0',
             'r:registers:1:0',
             't:tasks:1:1',
             'A:assertions:1:1',
             'C:classes:0:1',
             'V:covergroups:0:1',
             'I:interfaces:0:1',
             'M:modport:0:1',
             'K:packages:0:1',
             'P:programs:0:1',
             'R:properties:0:1',
             'T:typedefs:0:1'
         ],
         'sro'         : '.',
         'kind2scope'  : {
             'm' : 'module',
             'b' : 'block',
             't' : 'task',
             'f' : 'function',
             'C' : 'class',
             'V' : 'covergroup',
             'I' : 'interface',
             'K' : 'package',
             'P' : 'program',
             'R' : 'property'
         },
     }

背景:Tagbar不会使用您的tags文件,它查询ctags并直接从stdout读取其输出。

我相信问题是如何在~/.ctags中定义--langmap。afaik,昏迷用于分离langmap

--langmap=foo:.foo.fo.oo,bar:.bar.ba

我认为您的~/.ctags文件的第2行应该看起来像:

--langmap=systemverilog:.sv.svh.svp

相关内容

  • 没有找到相关文章

最新更新