生命不息,折騰不止~Vim編輯器,插件,編譯,補全配置(2018)


 

ps:打算記錄windows下gvim和linux下vim的配置。省的每次意外都到處找博客,重新配置。

一個古老強大的編輯器。單純的喜歡在酷炫的終端下默默寫着代碼。

(用過sublime, vscode, atom,都挺好的)

首先是windows下:

1,下載windows下的gvim,然后安裝。

  這時候的gvim打開是很丑的,vim的配置文件.vimrc在c盤/用戶/你的用戶名文件夾下的_vimrc,或者自己寫一個.vimrc都可以,在vim下 :cd ~,也會進入這個文件夾。先來一些簡單的配置,這個配置文件拷走,那里的vim都會長一個樣子,挺方便。下面配置建議找個比較全的配置網址按需求一個一個對着寫。

https://blog.csdn.net/u013920085/article/details/46953293

然后是插件管理器 Vundle https://github.com/VundleVim/Vundle.vim, 首先你給有前置技能git,然后github安裝。

git是什么相信有百度你們都懂的吧。不會的推薦一個免費的學習網址牛客網的:https://www.nowcoder.com/courses/2

 

 

到這里假裝你們都會git,知道github. 

直接在git bash 中

 

然后抄下面的配置文件即可

單引是注釋,完整文件建議在github上復制。

#begin()和#end中間的內容,我的后兩個箭號是插件內容。第一個是目錄。如果你安裝的時候直接抄代碼,那么下面的目錄代碼也不用改,否則自己寫找到那個.vim文件。

Plugin下面的內容官網的舉例是告訴你有幾種安裝插件的方式。你全抄當然是會錯誤的,因為它舉例你可以本地zip安裝,都是那個路徑下你當然沒有那個插件的壓縮包。最穩的方法是在Plugin里面寫 git clone的鏈接.;

修改插件配置文件后,在vim中 : PluginInstall 就自動匹配不同安裝插件了

其實還是挺簡單的。

然后記錄一些插件:參考 https://blog.csdn.net/mergerly/article/details/51671890

 

1,NERDTree https://github.com/scrooloose/nerdtree

我設置了下快捷鍵就用了,找個插件能打開文件夾一個樹形菜單

2,CtrlP https://github.com/kien/ctrlp.vim

 

快捷搜索,幾乎不用配置,直接用

3,Surround https://github.com/tpope/vim-surround

4,一個漂亮的狀態欄 https://github.com/Lokaltog/vim-powerline

 

 ...

...

...

 

在gvim中寫acm題。!!!

由於不會windoes下makefile,突發奇想,其實makefile不就是個腳本嗎,於是上python, 用python只是為了隨改隨用,如果用c調用cmd的話,還多個編譯,那你還寫什么makefile呢。下面是我的編譯配置。c++11標准-O2優化。

 

然后一邊開着git的bash,主要是為了能用ls命令,windows的查看目錄都dir很不習慣。然后就可以愉快的vim寫代碼,終端方便的運行。你甚至可以文件流freopen。和linux下體驗已經很相近了。

 

VIM一鍵編譯cpp。

  vim中有一個博大精深的vimscript,vimrc的配置媲美一門編程語言。驚呆了。。。一鍵運行只要寫一個函數即可。

   exec執行命令,%被替換成當前文件名,%:r 是去掉前綴,剩下的部分都是gcc編譯命令,cmd下的,注意環境變量的配置。這樣F5后編譯就完成了,根本不用裝插件。

     exec 'w' 我之前也是看不懂,但是在vim下冒號后敲了一下,提示已保存。其實就是編譯前幫你保存下。加!會跑的cmd運行命令,那么編譯完運行直接跑exe不就好了。

  其他語言同理,cmd能干,vimrc都能干。我並沒有完整的學習vimscript,稍微花半小時百度下。配置下面幾行,F9編譯運行。目前cpp主要用於寫算法題

map <F9> :call CompileRunGcc()<CR>
func! CompileRunGcc() exec "w" if &filetype == 'cpp' exec "!g++ -g -Wall -std=c++11 -O2 -o %:r %"      exec "! %:r" endif endfunc

 

如果失敗了注意一下幾點。博客園的代碼粘貼可能改變了空格編碼,檢查空格。vim下不正常空格高亮可用看出來。其次注意修改后在重啟vim的時候才加載配置文件。

 

接下來是一個痛苦的問題,代碼補全。vim下是自帶代碼補全的。這個可以百度到。但是自帶的補全是匹配出現過的字符串。那么對於c++來說,不可能吧要補全的東西每次都寫一遍吧。於是vim有了一個字典功能。

set dictionary=~/.vim/dict/cpp.dict
set complete-=k complete+=k

  第一行是字典文件路徑,第二行是為了使用默認按鍵后能補全字典中的東西,不然快捷鍵是ctrl+x + ctrl + k 囧。。。直接補全按鍵是插入模式下ctrl+n,或者ctrl+p。然后就可以在.dict里面寫東西。

 

set shiftwidth=4
set softtabstop=4
set autoindent
set nu
syntax enable
syntax on
set vb
set cursorline
"colorscheme desert

set autowrite
set guioptions-=T           " 隱藏菜單欄
set guioptions-=m           " 隱藏工具欄set guifont=Consolas:h14

set backspace=indent,eol,start "為了退格鍵可用
 map <F9> :call CompileRunGcc()<CR> func! CompileRunGcc() exec "w" 
    if &filetype == 'cpp' exec "!g++ -g -Wall -std=c++11 -O2 -o %:r %"
exec "! %:r" endif endfunc

 

關於vim的主題

http://bytefluent.com/vivify/

在這個網站下載,丟到安裝目錄下的color目錄下。然后就可用配置vim修改主題

下載的是XXX.vim文件。然后直接寫主題是XXX就搞定了

 

題外話記個筆記nodepad++中編譯運行c++命令

cmd /k cd /d "$(CURRENT_DIRECTORY)" & g++ "$(FILE_NAME)" -o "$(NAME_PART)" & "$(NAME_PART)".exe & pause & exit

 

 

 

未完待續。。。。。。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM