第一步:安装Emacs
这里就不详细介绍了,大家可参考:
https://blog.csdn.net/sunrier/article/details/7519753?spm=1001.2101.3001.6650.2&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-2-7519753-blog-43965261.235%5Ev40%5Epc_relevant_3m_sort_dl_base3&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-2-7519753-blog-43965261.235%5Ev40%5Epc_relevant_3m_sort_dl_base3&utm_relevant_index=3
第二步:下载verilog mode插件
下载地址:https://github.com/veripool/verilog-mode
下载后解压,在.vim目录下新建verilog_mode目录,将verilog-mode.el拷贝到 .vim/verilog_mode下。
第三步:下载verilog-emacsauto.vim插件
下载地址:https://github.com/zhuzhzh/verilog_emacsauto.vim
下载后解压,将verilog-emacsauto.vim 拷贝到 .vim/plugin目录下,并修改verilog-emacsauto.vim 中的指向verilog-mode.el 的路径:
第四步:添加快捷命令
在.vimrc中为gvim添加如下内容:
map ta :call EmacsBatchAuto()<CR>
map tb :call EmacsBatchDeleteAuto()<CR>
function EmacsBatchAuto()
!emacs --batch % -f verilog-batch-auto -q -script ~/.emacs
endfunction
function EmacsBatchDeleteAuto()
!emacs --batch % -f verilog-batch-delete-auto -q -script ~/.emacs
endfunction
测试
新建demo.v文件,输入如下内容保存:
module io1_sub(/*AUTOARG*/);
/*AUTOINPUT*/
/*AUTOINOUT*/
/*AUTOOUTPUT*/
/* inst AUTO_TEMPLATE (
.lower_inb (1'b1),
)*/
instio instio (/*AUTOINST*/);
endmodule
module instio (/*AUTOARG*/);
input lower_ina;
inout lower_io;
output lower_out;
input sec_ina;
inout sec_io;
output sec_out;
wire lower_out = lower_ina | lower_io;
wire sec_out = sec_ina | sec_io;
endmodule
用gvim打开demo.v后:
在normal模式下输入ta,看是否自动插入代码;
在normal模式下输入tb,看是否自动撤销插入。
参考文章
https://blog.csdn.net/tbzj_2000/article/details/88024225
https://blog.csdn.net/CrazyUncle/article/details/129344073