虚拟机:VMware-workstation-full-14.0.0.24051
环 境:ubuntu 18.04.1
本文适合在linux环境下,进行verilog 代码开发时,对vim用户配置文件“.vimrc”进行编写,配置vim编辑器语法高亮、文件类型检测、显示行号、括号匹配、tab缩进和调用别名文件等,可提高设计开发的效率。
文章目录
一、vim配置文件 .vimrc
.vimrc文件是配置vim编辑器功能开、关的配置文件。一般分为两类:系统配置和用户配置。
- 系统配置:系统配置文件存放在vim的安装路径内,默认路径:/usr/share/vim/vimrc
cyl@cyl-virtual-machine:~$ cd /usr/share/vim/
cyl@cyl-virtual-machine:/usr/share/vim$ ls -a
... addons gvimrc registry vim80 vimfiles vimrc vimrc.tiny
- 用户配置:用户配置文件.vimrc由用户自己创建,存放于用户根目录下。以我的为例:
二、.vimrc文件编写
2.1 创建.vimrc文件
在跟目录创建.vimrc文件,由于该文件是隐藏文件,所以需要使用ls -a才会显示出来。
cyl@cyl-virtual-machine:~$ cd ~
cyl@cyl-virtual-machine:~$ touch .vimrc
cyl@cyl-virtual-machine:~$ ls -a
.vimrc
2.2 编辑.vimrc文件
下面是我的.vimrc常用配置文件的全部内容,会逐条进行解释。
colorscheme desert
syntax on
filetype on
au BufRead,BufNewFile *.sv set filetype=systemverilog
au BufRead,BufNewFile *.v set filetype=verilog
set number
set autoindent
set ts=2
set expandtab
set shiftwidth=4
autocmd FileType make set noexpandtab
set hlsearch
set cursorline
set cursorcolumn
set guifont=Monospace\ 16
inoremap (()<Esc>i
inoremap {{}<Esc>i
inoremap [[]<Esc>i
inoremap " ""<Esc>i
source ~/.vim/user/alias.vim
- 打开.vimrc文件:在终端跟目录,输入gvim .vimrc,回车,弹出可视化界面
cyl@cyl-virtual-machine:~$ gvim .vimrc
(1)设置配色
博主使用的是desert配色,其他配色可以通过vim菜单栏Edit,Color Scheme 查看,点击具体配色可以立即查看,但是下一次重启之后就会恢复原来的配色,要想一直生效,则需要修改下面的配置项“desert”,替换成自己想要的即可,保存,重新打开即会生效。
colorscheme desert
(2)语法高亮
如果不设置,在编写RTL时,显示的文字都将是一个颜色。
syntax on
filetype on
au BufRead,BufNewFile *.sv set filetype=systemverilog
au BufRead,BufNewFile *.v set filetype=verilog
syntax on是语法高亮的意思;filetype on文件类型识别;au是autocmd的缩写,BufRead和BufNewFile是触发自动命令的事件。BufNewFile是创建一个新文件,BufRead是将文件读入一个新缓冲区时触发。如:au BufRead,BufNewFile *.sv set filetype=systemverilog的意思是,当检测到文件类型是.sv结尾的文件时,将符合systemverilog语法的地方将高亮显示。
(3)设置行号:在左边显示第几行
set number
(4)自动缩进:换行时,缩进量与上一行对齐
set autoindent
(5)空格替代tab缩进[重要]
set ts=2
set expandtab
目的是为代码整齐美观,由于每个人设置的tab缩进量不同,所以当你的代码换到别人的设备中打开时,可能就没有对齐,比较乱。这个时候,就需要设置空格替代tab,因为空格大家都一样。set ts=2:ts是tabstop的缩写,按一次tab键显示的宽度;set expandtab:设置之后,会把一个 tab 字符替换成 tabstop 选项值对应的数值空格。上面就是把按一次tab键缩进两个空格。
(6)设置搜索\行高亮
set hlsearch
set cursorline
set cursorcolumn
set hlsearch:在vim的一般模式下,搜索某字符,这个字符将在文中高亮显示;set cursorline:光标所在行高亮显示;set cursorcolumn:所在列高亮显示,这个设置很有用。
(7)设置vim的字体大小
set guifont=Monospace\ 16
set guifont=Monospace\ 16:其中Monospace为字体名,16为字号,注意\和16之间有一个空格
(8)符号匹配
inoremap (()<Esc>i
inoremap {{}<Esc>i
inoremap [[]<Esc>i
inoremap " ""<Esc>i
在i模式下,按下左边的符号,会自动输入左右两边的符号,很好用的设置。
(9)调用别名文件
source ~/.vim/user/alias.vim
【推荐】这个设置很有用,由于在设计过程中存在大量的重复工作,如果每次都输入一遍会很浪费时间,这时候如果提前设置好,按下快捷键就能调用相应的自定义块,可以节省大量时间,同时提高设计的效率。这个只是调用的别名文件(alias)的一个设置,详细见下一章内容。
三、编写别名文件
我的别名文件创建在 ~/.vim/user/alias.vim,下面先看看我平常设置的别名文件里的内容:
iab al_ <ESC>:r~/.vim/user/always.v<cr>
iab mo_ <ESC>:r~/.vim/user/module.v<cr>
iab an_ <ESC>:r~/.vim/user/annotation.v<cr>
iab fs_ <ESC>:r~/.vim/user/fsdb.v<cr>
iab tb_ <ESC>:r~/.vim/user/tb.v<cr>
iab cyl_ <ESC>:r~/.vim/user/cyl.v<cr>
iab cl_ <ESC>:r~/.vim/user/clk.v<cr>
iab rs_ <ESC>:r~/.vim/user/rst.v<cr>
"ab model
"iab edit model
"<cr>new line
"
以第一条为例:iab al_ :r /.vim/user/always.v,在vim编辑器edit 模式下,输入“al_”,再按下“ESC”键,路径/.vim/user/下的always.v文件里的内容将会被调用,这就大大避免了重复的工作。
按“i”,进入编辑模式
输入“al_”
按下“ESC”,~/.vim/user/always.v的内容将调用出来
小结:因此提前设置好相关内容,就可大大提高设计开发效率,还有其他设置,自行摸索,如果有其他好用的设置,欢迎留言。
作者:xlinxdu
版权:本文版权归作者所有
转载:欢迎点赞、评论和转载,但未经作者同意,必须保留此段声明,必须在文章中给出原文连接。
版权归原作者 xlinxdu 所有, 如有侵权,请联系我们删除。