win7 + gvim 打造Python IDE
考慮到有的軟件下載地址不能正確訪問(原因你懂的),本文中用到的所有軟件较屿,均可在https://pan.baidu.com/s/1nuWCoi9下載劫恒,在你看到這篇文章時瞳筏,它們可能都有新版本了匙奴,因此下面正文里面會給出具體的地址浮声,以便有需求的人根據(jù)需要下載其他版本。
1. 下載gvim
雖然vim的官網(wǎng)是www.vim.org赋铝,但是這里面找到的版本,有的可能沒有編譯python支持沽瘦。
因此推薦到https://tuxproject.de/projects/vim下載革骨。這里我們下載x64的农尖。
下載后的文件是complete-x64.7z 解壓,放到C:里面(也可以放到其他目錄)良哲。然后運行里面的gvim.exe即可啟動盛卡。如果啟動時報缺少vcruntime140.dll,可以下載vc_redist.x64.exe安裝后即可正常啟動gvim筑凫。
1.1 查看gvim的版本
1.2 確認vim的主目錄和運行目錄
執(zhí)行如下命令滑沧,查看vim的主目錄和運行目錄,大部分情況下他們是一樣的:
echo $VIM
echo $VIMRUNTIME
這個目錄正是vim所在的目錄(廢話^_^)巍实。
1.3 查看gvim是否支持python
執(zhí)行如下命令:
:version
即可查看當(dāng)前vim的版本
注意紅色框里面的兩行滓技,python/dyn和python3/dyn前面是+說明這個版本的vim已經(jīng)編譯了對pyhon(不帶版本號默認就是python2)和python3的支持。
1.4 查看gvim支持的python版本
執(zhí)行如下命令:
:python3 print(123)
由于現(xiàn)在還沒有安裝python棚潦,因此會報錯令漂,注意錯誤信息里面的python36.dll
也就是說這個版本的vim編譯的時候是支持python3.6的,因此我們要安裝與之對應(yīng)的python版本丸边。
如果這里安裝的是python3.5叠必,那么將來調(diào)用python編譯器的時候仍然會報這個錯誤,這也是很多 人配置不成功的原因妹窖,切記切記纬朝。
注意: 如果直接執(zhí)行
:python print(123)
會默認調(diào)用python2,這也是為什么很多人裝了python3后,仍然提示找不到python的原因骄呼。
2. 安裝對應(yīng)版本的python
2.1下載對應(yīng)的python
首先去官網(wǎng)https://www.python.org/ftp/python/3.6.0/下載python-3.6.0-amd64.exe(主版本是3.6就行了共苛,最后的修訂版本可以不是0)
2.2 安裝第1步
勾選下面的"Add Python 3.6 to PATH",然后選擇"Customize installation"
2.3 安裝第2步
全部勾選谒麦,點擊Next
2.4 安裝第3步
勾選上面五項(下面的也可以勾)俄讹,選擇安裝的位置,然后點Install開始安裝
2.5 安裝第4步
沒有錯誤的話绕德,會出現(xiàn)安裝成功患膛。
2.6 打開python
從開始菜單里面,選擇IDLE (Python 3.6 64-bit)
2.7 檢查python是否正確安裝
輸入一條代碼耻蛇,查看python是否正確安裝(99.99%會正確踪蹬,但不排斥0.01%的異常可能)
3. 再次檢查是否生效
安裝好python3.6以后臣咖,再次執(zhí)行:
python3 print("Python3.6 is OK now")
就會發(fā)現(xiàn)沒有報錯跃捣,成功執(zhí)行了。
4. 安裝git
4.1 下載地址
下載地址為https://github.com/git-for-windows/git/releases
這里選擇了截止目前為止最新的版本2.15.0-rc2(也可以根據(jù)需要采用其它版本)
有兩種方式夺蛇,一種是下載exe文件疚漆,然后安裝,具體下載地址為:
https://github.com/git-for-windows/git/releases/download/v2.15.0-rc2.windows.2/Git-2.15.0.rc2.windows.2-64-bit.exe
另一種是下載解壓配置后即用的“綠色版” ,具體下載地址為:
https://github.com/git-for-windows/git/releases/download/v2.15.0-rc2.windows.2/PortableGit-2.15.0.rc2.windows.2-64-bit.7z.exe
4.1.1 exe安裝
-
安裝git第1步
-
安裝git第2步
-
安裝git第3步
-
安裝git第4步
-
安裝git第5步
-
安裝git第6步
-
安裝git第7步
-
安裝git第8步
-
安裝git第9步
-
安裝git第10步
- 檢查git是否安裝成功
從開始菜單或桌面快捷方式選擇git,然后執(zhí)行g(shù)it命令,出現(xiàn)下圖的提示娶聘,說明git安裝安裝成功闻镶。
4.1.2 綠色版
如果下載的是proable版的git,可以通過下面方法安裝丸升。
第1步铆农,雙擊下載的文件PortableGit-2.15.0.rc2.windows.2-64-bit.7z.exe,解壓到某個位置,比如C:\ProtableGit
解壓后如下:
第2步狡耻,配置環(huán)境變量墩剖,在我的電腦上右鍵,選擇“屬性”
![安裝git3.jpg](http://upload-images.jianshu.io/upload_images/2891888-2ba68400bce2e307.jpg?
imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
然后依次選擇"高級系統(tǒng)設(shè)置" -> "環(huán)境變量" ,雙擊"Path" 夷狰,在彈出的提示框最右側(cè)岭皂,加入
;C:\ProtableGit\bin
然后依次保存。
第3步孵淘,檢查配置是否正確蒲障,在命令提示符里面輸入
git --version
如果正確顯示git的版本,說明以上配置正確瘫证。
5 配置vim
5.1 建立配置文件vimrc
在gvim目錄下面揉阎,新增vimrc文件(注意windows下面不要帶任何擴展名)
5.2 添加基礎(chǔ)配置
"=============== 基礎(chǔ)配置 =================="
"默認顯示行號
set nu
6. 安裝vim-plug插件
6.1 下載vim-plug
https://github.com/junegunn/vim-plug
解壓已經(jīng)下載的vim-plug-master.zip文件,把里面的plug.vim文件放到C:\complete-x64\autoload里面背捌,這樣以后vim啟動時毙籽,就會自動加載這個插件。
6.2 安裝vim-plug
首先在vim中執(zhí)行命令
:echo $VIM
用來確認vim的主目錄(大部分情況下是和$VIMRUNTIME目錄是一樣的)毡庆,本例中應(yīng)該是C:\complete-x64坑赡,然后在這個目錄下面創(chuàng)建新目錄vimplugged (這個目錄名稱可以自己定義,這里的名稱僅作示例)
6.3 選擇插件
下面先給出配置么抗,然后解釋,這里只需要9個插件毅否。
打開配置文件C:\complete-x64\vimrc, 追加如下內(nèi)容:
"=============== 配置 vim-plug =============="
"----- vim-plug 開始 -----
"
"指定vim-plug下載的插件存放的目錄
call plug#begin("$VIM/vimplugged")
"--- 下面是需要安裝的插件的列表 ---
"python自動補全插件
Plug 'davidhalter/jedi-vim'
Plug 'Shougo/neocomplete.vim'
"文件瀏覽窗口
Plug 'vim-scripts/winmanager'
Plug 'vim-scripts/taglist.vim'
"經(jīng)典的monokai主題
Plug 'sickill/vim-monokai'
Plug 'tmhedberg/SimpylFold'
"快速切換主題的插件
Plug 'chxuan/change-colorscheme'
" airline = powerline + minibufer
Plug 'bling/vim-airline'
Plug 'vim-airline/vim-airline-themes'
"debug "
call plug#end()
" ----- vim-plug結(jié)束-----
下面解釋一下這一段的內(nèi)容:
- 雙引號開頭的是注釋
- call plug#begin("$VIM/vimplugged") 代表調(diào)用vim-plug這個插件,并且指定存放插件的目錄為$VIM下面的vimplugged
- 最后的call plug#end() 表明調(diào)用vim-plug結(jié)束蝇刀,這兩行是必須
- 每一行Plug代表一個插件螟加,規(guī)則是一個完整的github地址,去掉開頭的https://github.com吞琐,比如說Plug 'bling/vim-airline' 這個捆探,把后面的bling/vim-airline前面加上https://github.com,變成
https://github.com/bling/vim-airline在瀏覽器里面打開這個地址站粟,沒錯黍图,正是這個插件在github里面的地址。
也就是說如果在github里面找到了某個插件的完整url地址https://github.com/abc/xyz 想用vim-plug安裝時奴烙,只需要在vim-plug的begin和end之間助被,加入一行Plug "abc/xyz"即可剖张。
6.4 安裝插件
配置完成后,保存恰起,然后執(zhí)行下面命令即可開始安裝:
:PlugInstall
出現(xiàn)Finishing ... Done! 說明所有插件已經(jīng)安裝完成了修械,注意查看是否有報錯的情況:
即可安裝上面配置的所有插件,打開本地目錄vimplugged,就會發(fā)現(xiàn)剛才配置的所有插件都被下載到這里了:
其實vim-plug工作原理就是根據(jù)配置检盼,自動調(diào)用git clone依次克隆每個插件到本地的目錄vimplugged(之前配置的目錄)當(dāng)中。因此每一行Plug后面的內(nèi)容也就是每個插件在github上完整的url地址去掉開頭的部分翘单。仍然以上面的bling/vim-airline為例吨枉,打開git使用命令
git clone https://github.com/bling/vim-airline
就會把這個插件克隆到本地,然后和vimplugged里面的對比哄芜,他們是一模一樣的貌亭。
這里僅說明vim-plug怎么用,更多資料請查看vim-plug頁面.
6.5 配置插件
6.5.1 配置python
在配置文件vimrc里面认臊,追加如下內(nèi)容
" ----- 調(diào)用python -----
"按 Ctrl + F5 調(diào)用當(dāng)前腳本
autocmd BufRead *.py set makeprg=python\ -c\ \"import\ py_compile,sys;\ sys.stderr=sys.stdout;\ py_compile.compile(r'%')\"
autocmd BufRead *.py set efm=%C\ %.%#,%A\ \ File\ \"%f\"\\,\ line\ %l%.%#,%Z%[%^\ ]%\\@=%m
autocmd BufRead *.py nmap <C-F5> :!python %<CR>
這樣以后可以在編輯代碼后直接按Ctrl+F5來執(zhí)行腳本(當(dāng)然你也可以設(shè)置為其他快捷鍵)圃庭。
下面是一個腳本的執(zhí)行示例:
6.5.2 自動補全
之前安裝的jedi插件即為自動補全插件,默認是啟動失晴,效果如下:
- 這里粉色背景的剧腻,即為自動補全的提示,按Ctrl+N選擇下一條涂屁,按Ctrl+P選擇上一條书在,按Enter鍵盤可以補全當(dāng)前內(nèi)容。
- 注意這里我放了兩個圖拆又,第一個是調(diào)用python內(nèi)置模塊時的自動補全儒旬;第二個是調(diào)用自定義類的自動補全。有的IDE或插件號稱可以自動補全帖族,但是只能補全內(nèi)置模塊栈源,不能補全自定義類。
6.6 再接再厲竖般,美化界面
目前這個配置總算能將就著用了甚垦,但是界面看起來還不太入眼,完全不能滿足裝逼的需求啊(^o^)捻激。
下面進行基礎(chǔ)調(diào)節(jié)制轰。
6.6.1 開啟當(dāng)前行高亮,關(guān)閉默認代碼折疊胞谭,設(shè)置默認編碼
編輯vimrc文件垃杖,在基礎(chǔ)配置里面,增加下面內(nèi)容:
6.6.2 隱藏/顯示菜單欄
vim大部分時間不需要用鼠標(biāo)點點點丈屹,因此菜單欄可以隱藏掉调俘;為了靈活起見伶棒,設(shè)置按F2顯示或隱藏菜單欄。
修改配置文件vimrc,追加如下內(nèi)容:
"設(shè)置成默認不顯示菜單欄和工具欄彩库,如果是 +=m +=T則是默認顯示
set guioptions-=m
set guioptions-=T
"按F2顯示或隱藏菜單欄
map <silent> <F2> :if &guioptions =~# 'T' <Bar>
\set guioptions-=T <Bar>
\set guioptions-=m <bar>
\else <Bar>
\set guioptions+=T <Bar>
\set guioptions+=m <Bar>
\endif<CR>
保存后退出肤无,再次啟動vim就會發(fā)現(xiàn)不同:
注意:要使用這個功能,必須在配置文件最開始的地方加上set nocompatible 否則會報錯:
6.6.3 設(shè)置主題
編輯文件vimrc骇钦,追加如下內(nèi)容:
" ----- 設(shè)置主題 -----
syntax enable
"默認設(shè)置為monokai,也可以設(shè)置為其它主題
colorscheme monokai
"set background=dark
"set background=light
"colorscheme solarized
"
"設(shè)置字體和大小宛渐,根據(jù)自己的需要調(diào)整
set guifont=courier_new:h12
" 快速切換主題,按F10切換下一個眯搭,按F9切換上一個
map <F10> :NextColorScheme<CR>
imap <F10> <ESC> :NextColorScheme<CR>
map <F9> :PreviousColorScheme<CR>
imap <F9> <ESC> :PreviousColorScheme<CR>
- vim的主題存放位置為C:\complete-x64\colors里面窥翩,可以根據(jù)自己的需要選擇
- 切換主題,也可以通過菜單欄里面:編輯->配色方案來選擇
下面是幾個主題的預(yù)覽圖:
7. 顯示文件列表
使用winmanager可以瀏覽目錄鳞仙、文件寇蚊,結(jié)合taglist還可以查看當(dāng)前文件的結(jié)構(gòu),windows上taglist必須調(diào)用ctags.exe才能工作棍好,因此需要先設(shè)置ctags仗岸。
到http://ctags.sourceforge.net 找到windows對應(yīng)的文件(如下圖所示)下載:
下載后得到ctags58.zip這個文件,解壓借笙,只需要把里面的ctags.exe拿出來扒怖,放到系統(tǒng)的PATH里面的任意一個目錄里面就行,這里我們把它放到C:\Python36里面 (前面安裝python時提澎,把這個目錄加入到了PATH里面):
然后編輯配置文件vimrc,追加下面幾行:
" 執(zhí)行命令隱藏/顯示文件窗口
let g:winManagerWindowLayout='FileExplorer|TagList'
let g:AutoOpenWinManager = 1
nmap wm :WMToggle <CR>
保存后退出姚垃,再次啟動vim,按wm即可調(diào)出winmanager:
注意(下面兩個地方搞了一陣沒搞定盼忌,誰知道怎么解決記得通知我一聲啊积糯,有勞有勞):
- 網(wǎng)上不少地方說使用g:AutoOpenWinManager = 1 可以使vim啟動時自動打開winmanager,但是這里整合了taglist好像就不行了谦纱;
- 并且修改winmanger.vim里面看成,把wincmd H改成wincmd L也并不能把winmanager顯示在右側(cè)
8. 優(yōu)化airline
aireline同時提供了 powerline和minibufer,在配置文件vimrc里面追加如下內(nèi)容:
" 配置airline
" 設(shè)置airline的主題
let g:airline_theme="molokai"
let g:airline#extensions#tabline#enabled = 1
let g:airline#extensions#tabline#buffer_nr_show = 1
" 按ctrl+tab 或作者ctrl+shift+tab在打開的文件之間切換
nnoremap <C-tab> :bn<CR>
nnoremap <C-s-tab> :bp<CR>
保存后再啟動vim跨嘉,打開多個文件川慌,效果下圖:
- 上面顯示的是打開的文件列表,實現(xiàn)的是原來的minibufer的功能祠乃,按ctrl + tab可以在不同的文件之間切換梦重,按ctrl+shift+tab可以倒敘切換
- 下面顯示的是當(dāng)前文件的狀態(tài),包括當(dāng)前的模式亮瓷、文件名琴拧、文件類型、編碼嘱支,當(dāng)前光標(biāo)所在行在文件所有行中的百分比蚓胸、當(dāng)前光標(biāo)所在的行和列
9. 總覽
下面是最終的配置文件內(nèi)容:
"=============== 基礎(chǔ)配置 =================="
set nocompatible
"默認顯示行號
set nu
"高亮顯示當(dāng)前行
set cursorline
"設(shè)置默認代碼為utf-8
set encoding=utf-8
"關(guān)閉默認的代碼折疊
set nofoldenable
"=============== 配置 vim-plug =============="
"----- vim-plug 開始 -----
"
"指定vim-plug下載的插件存放的目錄
call plug#begin("$VIM/vimplugged")
"--- 下面是需要安裝的插件的列表 ---
"python自動補全插件
Plug 'davidhalter/jedi-vim'
Plug 'Shougo/neocomplete.vim'
"文件瀏覽窗口
Plug 'vim-scripts/winmanager'
Plug 'vim-scripts/taglist.vim'
"經(jīng)典的monokai主題
Plug 'sickill/vim-monokai'
Plug 'tmhedberg/SimpylFold'
"快速切換主題的插件
Plug 'chxuan/change-colorscheme'
" airline = powerline + minibufer
Plug 'bling/vim-airline'
Plug 'vim-airline/vim-airline-themes'
"debug "
call plug#end()
" ----- vim-plug結(jié)束-----
" ----- 調(diào)用python -----
"按 Ctrl + F5 調(diào)用當(dāng)前腳本
autocmd BufRead *.py set makeprg=python\ -c\ \"import\ py_compile,sys;\ sys.stderr=sys.stdout;\ py_compile.compile(r'%')\"
autocmd BufRead *.py set efm=%C\ %.%#,%A\ \ File\ \"%f\"\\,\ line\ %l%.%#,%Z%[%^\ ]%\\@=%m
autocmd BufRead *.py nmap <C-F5> :!python %<CR>
" ----- 顯示和隱藏菜單欄 -----
""設(shè)置成默認不顯示菜單欄和工具欄挣饥,如果是 +=m +=T則是默認顯示
set guioptions-=m
set guioptions-=T
""按F2顯示或隱藏菜單欄
map <silent> <F2> :if &guioptions =~# 'T' <Bar>
\set guioptions-=T <Bar>
\set guioptions-=m <bar>
\else <Bar>
\set guioptions+=T <Bar>
\set guioptions+=m <Bar>
\endif<CR>
" ----- 設(shè)置主題 -----
syntax enable
"默認設(shè)置為monokai
colorscheme monokai
"set background=dark
"set background=light
"colorscheme solarized
"
"設(shè)置字體和大小
set guifont=courier_new:h12
" 快速切換主題,按F10切換下一個沛膳,按F9切換上一個
map <F10> :NextColorScheme<CR>
imap <F10> <ESC> :NextColorScheme<CR>
map <F9> :PreviousColorScheme<CR>
imap <F9> <ESC> :PreviousColorScheme<CR>
" 執(zhí)行命令隱藏/顯示文件窗口
let g:AutoOpenWinManager = 1
let g:winManagerWindowLayout='FileExplorer|TagList'
nmap wm :WMToggle <CR>
" 配置airline
" 設(shè)置airline的主題
let g:airline_theme="molokai"
let g:airline#extensions#tabline#enabled = 1
let g:airline#extensions#tabline#buffer_nr_show = 1
" 按ctrl+tab 或作者ctrl+shift+tab在打開的文件之間切換
nnoremap <C-tab> :bn<CR>
nnoremap <C-s-tab> :bp<CR>
附錄: 資源
- vim-plug常用操作
https://github.com/junegunn/vim-plug - jedi-vim常用操作
https://github.com/davidhalter/jedi-vim/ - vim上其它插件
https://vimawesome.com
我要偷個懶
如果你實在不想動手一步一步配置扔枫,那么下面是適合你的最懶方法:
- 配置好git
- 安裝python36
- 下載上面共享地址中的gvim懶人版.zip,解壓即用