赞
踩
- sudo apt-get install vim
- sudo apt-get install gvim
CentOS7:
- sudo yum install vim
- sudo yum install gvim
win:
download : vim onlinehttps://www.vim.org/download.php
win:安装目录下
linux:在home目录下,如果没有就新建
可以使用我的配置,替换掉图中的两个文件即可,下载地址如下:
链接:https://pan.baidu.com/s/13U_AIwD-tuE5T21cxitjfw
提取码:9s5m
- " =============================================================
- " 字体和颜色设置
- " =============================================================
- "自动开启语法高亮"
- syntax enable
- "设置字体"
- set guifont=Monospace\ 13
- "设置主题样式"
- colorscheme desert
- "set background=light
-
- "高亮显示当前行"
- set cuc
- set cul
- " =============================================================
- " 文字处理设置
- " =============================================================
- "使用空格来替换Tab"
- set expandtab
- "设置所有的Tab和缩进为4个空格"
- set tabstop=4
- "设定<<和>>命令移动时的宽度为4"
- set shiftwidth=4
-
- "使得按退格键时可以一次删除4个空格"
- set softtabstop=4
- set smarttab
- autocmd FileType make set noexpandtab
-
- "缩进,自动缩进(继承前一行的缩进)"
- set autoindent
- set cindent
-
- "智能缩进"
- set si
-
- "自动换行”
- set wrap
- "设置软宽度"
- set sw=4
- "行内替换"
- set gdefault
- " =============================================================
- " 界面设置
- " =============================================================
- "显示光标位置的状态行"
- set ruler
- "设置命令行的高度"
- set cmdheight=1
- "显示行数"
- set number
- "关闭遇到错误时的声音提示"
- "关闭错误信息响铃"
- set noerrorbells
- "关闭使用可视响铃代替呼叫"
- set novisualbell
- "高亮显示匹配的括号([{和}])"
- set showmatch
- "搜索逐字符高亮"
- set hlsearch
- set incsearch
- "搜索时不区分大小写"
- set ignorecase
- "用浅色高亮显示当前行"
- autocmd InsertLeave * se nocul
- autocmd InsertEnter * se cul
- "输入的命令显示出来,看的清楚"
- set showcmd
- set autochdir
- "打开界面的大小
- set lines=30 columns=120
- " =============================================================
- " 编码设置
- " =============================================================
- "设置编码"
- set encoding=utf-8
- set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936,big-5,euc-jp
- "设置文件编码"
- set fileencodings=utf-8
- "设置终端编码"
- set termencoding=utf-8
- "设置语言编码"
- set langmenu=zh_CN.UTF-8
- set helplang=cn
- " =============================================================
- " 其他设置
- " =============================================================
- "在处理未保存或只读文件的时候,弹出确认"
- set confirm
- "显示状态栏(默认值为1,表示无法显示状态栏)"
- set laststatus=2
- "共享剪切板"
- set clipboard+=unnamed
- "自动保存"
- set autowrite
- "关闭vi兼容模式"
- set nocompatible
- set backspace=indent,eol,start
- "设置历史记录步数"
- set history=1000
- "禁止生成临时文件
- set nobackup
- set noswapfile
-
- "激活鼠标的使用,(类似office中在工作区双击鼠标定位)
- set mouse=a
- set selection=exclusive
- set selectmode=mouse,key
- " -------------------------插件管理----------------------------
- call plug#begin()
- Plug 'preservim/NERDTree' "目录树
- Plug 'bling/vim-airline' "状态栏美化
- "Plug 'w0rp/ale' "语法检查,需要vim8.0以上
- Plug 'scrooloose/syntastic' "语法检查
- Plug 'HonkW93/automatic-verilog' "自动例化
- call plug#end()
在终端内打开vim,进入命令模式输入PlugInstall安装插件包
- " -------------------------NERDTree----------------------------
- " 目录树窗口尺寸
- let g:NERDTreeWinSize = 25
-
- " 忽略以下文件的显示
- let NERDTreeIgnore=['\.pyc','\~$','\.swp']
- " 显示书签列表
- let NERDTreeShowBookmarks=1
-
- " 显示隐藏文件
- let NERDTreeShowHidden=1
- " 修改默认箭头符号
- let g:NERDTreeDirArrowExpandable = '▸'
- let g:NERDTreeDirArrowCollapsible = '▾'
-
- " vim启动时自动打开NERDTree
- augroup NERDTree
- au!
- autocmd vimenter * NERDTree
- " vim启动打开目录时自动打开NERDTree
- autocmd StdinReadPre * let s:std_in=1
- autocmd VimEnter * if argc() == 1 && isdirectory(argv()[0]) && !exists("s:std_in") | exe 'NERDTree' argv()[0] | wincmd p | ene | endif
- autocmd vimenter * NERDTreeFind
- " 文件全部关闭时退出NERDTree
- autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTree") && b:NERDTree.isTabTree()) | q | endif
- augroup END
- " -------------------------vim-airline----------------------------
- " 显示颜色
- set t_Co=256
- set laststatus=2
-
- " 使用powerline打过补丁的字体
- let g:airline_powerline_fonts = 1
- " -------------------------ale----------------------------
- "keep the sign gutter open
- let g:ale_sign_column_always = 1
- let g:ale_sign_error = '>>'
- let g:ale_sign_warning = '--'
-
- " show errors or warnings in my statusline
- " self-define statusline
- " use quickfix list instead of the loclist
- let g:ale_set_loclist = 0
- let g:ale_set_quickfix = 1
- " only enable these linters
- let g:ale_linters = { 'verilog': ['verilator']}
-
- " 总是打开Location List(相当于QuickFix)窗口
- let g:syntastic_always_populate_loc_list = 1
- "不自动进行代码检查
- let g:syntastic_auto_loc_list = 1
- let g:syntastic_check_on_open = 0
- let g:syntastic_check_on_wq = 0
-
- "检查语法的编译器
- let g:syntastic_verilog_checkers = ['verilator']
文件头自动生成:
always块自定义快捷键:
always块自定义格式以及module框架自动生成:
- " =============================================================
- " 快捷键设置
- " =============================================================
- "自定义命令前缀,防止冲突
- let mapleader=","
-
- "插入模式退出插入模式ii
- imap ii <ESC>
- "正常模式下保存,w
- nmap <Leader>w :w<CR>
-
- "正常模式下保存退出,q
- nmap <Leader>q :q<CR>
- "正常模式下保存退出,wq
- nmap <Leader>wq :wq<CR>
-
- "正常模式下打开关闭文件目录ctrl+t
- nmap <C-t> :NERDTreeToggle<CR>
- "正常模式下语法检查,ck
- nmap <Leader>ck :SyntasticCheck<CR>
-
- "括号自动补全
- :inoremap ( ()<ESC>i
- :inoremap ) <c-r>=ClosePair(')')<CR>
- :inoremap [ []<ESC>i
- :inoremap ] <c-r>=ClosePair(']')<CR>
- :inoremap { {<CR>}<ESC>O
- :inoremap } <c-r>=ClosePair('}')<CR>
- function! ClosePair(char)
- if getline('.')[col('.') - 1] == a:char
- return "\<Right>"
- else
- return a:char
- endif
- endfunction
- "配对自动补全,按空格自动补全
- :ab case; case()<CR><CR><CR>default: ;<CR>endcase<ESC>kkki
- :ab begin; begin<CR><CR>end<ESC>ki
- :ab reg; <ESC>0i<Tab>reg<Tab><Tab>[NAME_WIDTH-1:0]<Tab><Tab><Tab>reg_name<Tab>; //<CR>
- :ab wire; <ESC>0i<Tab>wire<Tab>[NAME_WIDTH-1:0]<Tab><Tab><Tab>wire_name<Tab>; //<CR>
- :ab input; <ESC>0i<Tab>input<Tab><Tab>[NAME_WIDTH-1:0]<Tab><Tab><Tab>input_name<Tab><Tab>, //<CR>
- :ab output; <ESC>0i<Tab>output reg<Tab>[NAME_WIDTH-1:0]<Tab><Tab><Tab>output_name<Tab><Tab>, //<CR>
- :ab para; <ESC>0i<Tab>parameter<Tab>NAME_WIDTH<Tab><Tab>=<Tab><Tab>8<Tab><Tab>, //<CR>
- :ab if; if() begin<CR><CR>end<ESC>ki
- :ab elif; else if() begin<CR><CR>end<ESC>ki
- :ab else; else begin<CR><CR>end<ESC>ki
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。