当前位置:   article > 正文

Gvim高级操作006--verilog例化代码对齐_gvim verilog端口声明对齐

gvim verilog端口声明对齐

Gvim高级操作006--verilog例化代码对齐

Gvim如果没有安装对齐插件的情况下,无法通过快捷操作实现verilog例化代码对齐。

但是可以通过正则表达式匹配插入空格实现代码对齐

基本原理是

  1. 删除空格,点号”.“和信号之间不能有空格,左括号”(“紧贴信号名,右括号”)”与“,”间隔一致,这样才能保证代码后续对齐
  2. 匹配点号“.”与左括号“(”之间的字符数量,不足30则插入空格,补齐30个字符
  3. 匹配左括号“(”与右括号“)”之间的字符数量,不足30则插入空格,补齐30个字符

1、规范编写 .signal_name  (signal_name    ),

,删除空格,规范编写,使得代码具有一定规律,点号”.“和信号之间不能有空格,左括号”(“紧贴信号名,右括号”)”与“,”间隔一致,这样才能保证代码后续对齐

.,+10  s/\s*\(\.\w*\)\s*(\s*\(\w*\)\s*)\s*,/\1(\2),/gc

2、对齐左括号“(”

匹配点号“.”与左括号“(”之间的字符数量,不足30则插入空格,补齐30个字符

光标放在.clk行:按ESC,按shift+; ,输入命令

当前行以下的10行进行替换操作,\zs表示从当前位置开始替换\ze表示从当前位置结束替换

.,+10 s/^\(.*\.\w*\s*\)\zs\ze(/\=repeat(' ',30-strlen(submatch(1)))/gc

2、对齐右括号“)”

匹配左括号“(”与右括号“)”之间的字符数量,不足30则插入空格,补齐30个字符

光标放在.clk行:按ESC,按shift+; ,输入命令

.,+10 s/\((\s*\w*\s*\)\zs/\=repeat(' ',30-strlen(submatch(1)))/gc

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/516737
推荐阅读
相关标签
  

闽ICP备14008679号