win7+vim搭建+verilog HDL IDE

 

參考地址:http://www.huangdc.com/421php

參考文章爲2016年,部分更新貼於文章內了html

  • 安裝下載vim

vim在win下叫gvim,下載地址:https://www.vim.org/download.phpgit

安裝時能夠選擇更改目錄(我把安裝目錄設置爲E:\gvim)shell

1.安裝時注意選擇‘Full’ option。vim

2.在vimfiles 文件夾下,會有許多空文件夾。將它們全刪掉。緩存

3.將vim81文件夾下的「autoload」文件夾 剪切 到 vimfiles 文件夾下。網絡

4.在vimfiles 文件夾下新建文件夾 bundlecurl

  • vim插件管理工具vundle

一開始我按照參考連接來進行,卻出現錯誤:error:1407742E編輯器

解決辦法:工具

 1.下載最新版本的git,聽說是 GitHub 再也不支持TLSv1/TLSv1.1了,並配置curl

2.先設置vim環境變量

個人電腦->屬性->高級系統設置->高級->環境變量->新建,如圖(指向gvim的安裝目錄vim81文件夾)

3.用新的git clone地址

目標路徑爲bundle文件夾路徑

4.出現錯誤RPC fail;curl 56 openssl......

緣由:http緩存不夠或者網絡不穩定等

解決辦法:

(1)增大buffer:git config --global http.postBuffer 524288000

(2)壓縮配置:git config --global core.compression -1(好像能夠不加)

(3)查詢git配置信息:git config -l

(另外吐槽一句,百度搜索引擎真的是垃圾。。不少問題谷歌一搜索關鍵詞就能解決了)

到這裏Vundle算clone完成了(另外記得把牆斷開再clone)

  • 插件安裝

在vim啓動配置文件_vimrc添加配置

PS:其餘插件下載到bundle文件夾下相應路徑,添加配置,安裝後便可在vim裏使用

  • 經常使用插件

1.vundle插件管理工具

配置vimrc後,安裝插件

 

相關指令:

安裝插件:BundleInstall
更新插件:BundleUpdate
清除再也不使用的插件:BundleClean
列出全部插件:BundleList
查找插件:BundleSearch

2.NerdTree文件目錄插件

(安裝NerdTree之後重啓gvim老是會報一個變量缺失的錯誤,最後沒弄出來就把NerTree卸載了,之後有空的時候再倒騰吧)

  •  verilogHDL IDE定製

原參考連接:https://www.cnblogs.com/ninghechuan/p/8505942.html

1.新建.v、.sv文件時自動加載頭文件

在_vimrc添加

$VIM爲在環境變量設置的gvim全局路徑,新建template文件夾並添加v.tlp

v.tlp爲新建.v文件加載頭文件模板(打碼處爲我的信息,本身改過來就好了)

修改完後,保存,下次新建.v文件時就會自動加載模板的內容

2.ab定製關鍵詞插入模板

在_vimrc添加

那麼在文件插入模式下輸入關鍵字就會顯示對應的模板,編輯格式爲:ab+空格+關鍵詞+空格+模板,換號爲<Enter>,把Tab改成自動空4格,<Tab>就是自動空四格

3.vivado\ISE自動調用gvim編輯器

我的用的是vivado2017.1版本,調用gvim跟連接提供的方法有點不同,設置方法依然是tool->setting->text editor

注意找對gvim的位置

4.簡化版的_vimrc

最後貼一下我本身的vimrc配置吧,屬於一個初步可使用版本,而後後續會作一些sv插件或者個性化的配置再慢慢擴展一下,簡化版本是應急用的

source $VIMRUNTIME/vimrc_example.vim

"插件配置
set nocompatible
filetype off
set rtp+=$VIM/vimfiles/bundle/Vundle.vim
call vundle#begin('D:\gvim\Vim\vimfiles\bundle')
" add your plugin here
Plugin 'VundleVim/Vundle.vim' " required
Plugin 'scrooloose/nerdtree' " file/directory treee
Plugin 'scrooloose/nerdcommenter' " code commenter
Plugin 'kien/ctrlp.vim' " Fuzzy file, buffer, mru, tag, etc finder
Plugin 'altercation/vim-colors-solarized' " solarized theme
call vundle#end() " required
filetype plugin indent on " required

set diffexpr=MyDiff()
function MyDiff()
let opt = '-a --binary '
if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
let arg1 = v:fname_in
if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
let arg1 = substitute(arg1, '!', '\!', 'g')
let arg2 = v:fname_new
if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
let arg2 = substitute(arg2, '!', '\!', 'g')
let arg3 = v:fname_out
if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
let arg3 = substitute(arg3, '!', '\!', 'g')
if $VIMRUNTIME =~ ' '
if &sh =~ '\<cmd'
if empty(&shellxquote)
let l:shxq_sav = ''
set shellxquote&
endif
let cmd = '"' . $VIMRUNTIME . '\diff"'
else
let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'
endif
else
let cmd = $VIMRUNTIME . '\diff'
endif
let cmd = substitute(cmd, '!', '\!', 'g')
silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3
if exists('l:shxq_sav')
let &shellxquote=l:shxq_sav
endif
endfunction

"顯示方案
set shortmess=atI "不顯示烏干達
syntax enable
syntax on "語法高亮
colorscheme darkblue "配色方案
set showmode "顯示模式
set showcmd "顯示命令
set nu "顯示行號
set cursorcolumn "高亮光標所在行列
set cursorline
let &termencoding=&encoding "防止亂碼
set fileencodings=utf-8,gbk,ucs-bom,cp936
set lines=70 columns=155 "設定窗口大小
set mouse=a "支持鼠標複製粘貼

"個性化
set tabstop=4 "tab表明4個空格鍵
set shiftwidth=4
set expandtab
set softtabstop=4
set showmatch "自動匹配括號
set nobackup "不建立備份文件
set noai "取消自動縮進和智能縮進
set noci "取消自動縮進和智能縮進
set nosi "取消自動縮進和智能縮進


"新建.v文件自動加載頭文件模板
autocmd BufNewFile *.v 0r $VIM/vimfiles/template/v.tlp

"HDL定製
:ab fenge //==============================
:ab shixu always @(posedge clk or negedge rst_n) begin<Enter>if (rst_n == 1'b0) begin<Enter>end<Enter>else begin<Enter>end<Enter>end
:ab zuhe always @(*) begin<Enter>end

 5.模塊端口自動例化腳本

腳本下載連接:http://bbs.eetop.cn/viewthread.php?tid=344036

新發現一個比較好用的模塊例化腳本,很是nice

跟參考連接的設置同樣,在vimrc添加

在所須要例化的模塊用指令輸入

自動在粘貼板生成例化模塊

相關文章
相關標籤/搜索