當前位置:首頁 » 編程語言 » vim配置python

vim配置python

發布時間: 2025-01-08 23:59:29

1. 如何在vim指定python解釋器的版本

確保你的 python 解釋器在系統的 path 目錄里。然後執行

:setpythonthreedll=python35.dll

python35 那裡改成你要指定的版本。

如果你要指定的是 python2,用這個

:setpythondll=python27.dll

指定好之後,可以試一下

:py3print("hello")

python2 的話,就是 :py 加命令了。

如果成功就沒問題了。之後你要把上面 :set ... 的相關內容寫到 vimrc 里去,下次啟動 vim 就不用再次指定了。

2. 如何在VIM中指定Python解釋器版本

你可能不想(或至少不應該) code> python3 作為vim的默認python解釋器,因為你的插件的一些(大部分)將變得不兼容,例如 YouCompleteMe 和 clang_complete 本身,因為他們沒有 python3 支持。通常,支持 python3 的插件可以讓您決定是否要通過添加到 .vimrc

let g:syntastic_python_python_exec ='python3'

解決方案: :echo has('python')顯示 0 實際上告訴你vim可能不是用 python2 編譯的。所以首先檢查 vim --version 的輸出,你應該能夠看到你的編譯器構建vim的共享庫列表。你看到以下? (例如對於python 2.7):

-L / usr / lib / python2.7 / config-x86_64-linux-gnu - lpython2.7

如果沒有(或者如果你看到 -lpython2.x 和 -lpython3.x 我建議你從源代碼編譯vim,具體鏈接到 -lpython2.x

sudo apt-get remove --purge vim vim-runtime vim-gnome vim-tiny vim-common vim-gui-common

clone vim mercurial

hg clone htvim/
cd vim

,然後使用以下標志運行 ./ configure :

./configure --with-features = huge \
--enable-cscope \
--enable-pythoninterp \
--enable-largefile \
--with-python-config-dir = / usr / lib / python2.7 / config

您還可能想要鏈接 ruby 和 lua 如果需要,然後最後運行

make build
make install

這里是shell腳本,將自動執行整個過程為你。這可能有點過分,但我認為這是你應該如何處理這不與運行與您的未來包的兼容性問題。

3. 如何啟用vim自帶python自動補全功能

Python omni complete, 安裝啟用之後,是這個樣子的:
1. 如何安裝 'Python omni complete' plugin.
如果是VIM7.3,不需要再下載 pythoncomplete.vim 這個插件,因為安裝時自帶了。
但是, 必須保證編譯安裝 VIM 的時候啟用了 Python 特性, 即
./configure --with-features=huge --enable-pythoninterp=yes
因為,pythoncomplete.vim 是用 python 寫的。
我們可以在vim autoload 目錄下看到
ls -la /usr/local/share/vim/vim73/autoload/
drwxr-xr-x 3 root root 4096 2011-02-16 16:29 .
drwxr-xr-x 17 root root 4096 2011-02-16 16:29 ..
-rw-r--r-- 1 root root 3669 2011-02-16 16:29 adacomplete.vim
-rw-r--r-- 1 root root 22439 2011-02-16 16:29 ada.vim
-rw-r--r-- 1 root root 16938 2011-02-16 16:29 ccomplete.vim
-rw-r--r-- 1 root root 15922 2011-02-16 16:29 csscomplete.vim
-rw-r--r-- 1 root root 2998 2011-02-16 16:29 decada.vim
-rw-r--r-- 1 root root 23804 2011-02-16 16:29 getscript.vim
-rw-r--r-- 1 root root 5331 2011-02-16 16:29 gnat.vim
-rw-r--r-- 1 root root 6093 2011-02-16 16:29 gzip.vim
-rw-r--r-- 1 root root 24253 2011-02-16 16:29 htmlcomplete.vim
-rw-r--r-- 1 root root 27028 2011-02-16 16:29 javascriptcomplete.vim
-rw-r--r-- 1 root root 10130 2011-02-16 16:29 netrwFileHandlers.vim
-rw-r--r-- 1 root root 8684 2011-02-16 16:29 netrwSettings.vim
-rw-r--r-- 1 root root 338720 2011-02-16 16:29 netrw.vim
-rw-r--r-- 1 root root 1232 2011-02-16 16:29 paste.vim
-rw-r--r-- 1 root root 293714 2011-02-16 16:29 phpcomplete.vim
-rw-r--r-- 1 root root 21507 2011-02-16 16:29 python3complete.vim
-rw-r--r-- 1 root root 22019 2011-02-16 16:29 pythoncomplete.vim
-rw-r--r-- 1 root root 773 2011-02-16 16:29 README.txt
-rw-r--r-- 1 root root 23443 2011-02-16 16:29 rubycomplete.vim
-rw-r--r-- 1 root root 6184 2011-02-16 16:29 spellfile.vim
-rw-r--r-- 1 root root 30201 2011-02-16 16:29 sqlcomplete.vim
-rw-r--r-- 1 root root 16839 2011-02-16 16:29 syntaxcomplete.vim
-rw-r--r-- 1 root root 21145 2011-02-16 16:29 tar.vim
-rw-r--r-- 1 root root 12646 2011-02-16 16:29 tohtml.vim
-rw-r--r-- 1 root root 23031 2011-02-16 16:29 vimball.vim
drwxr-xr-x 2 root root 4096 2011-02-16 16:29 xml
-rw-r--r-- 1 root root 14933 2011-02-16 16:29 xmlcomplete.vim
-rw-r--r-- 1 root root 11906 2011-02-16 16:29 zip.vim
如果沒有,則下載 pythoncomplete.vim, 並復制到 ~/.vim/autoload/ 目錄下。
2. 如何啟用自動補全
在 ~/.vimrc 中添加這樣兩行
[plain] view plain
filetype plugin on
autocmd FileType python set omnifunc=pythoncomplete#Complete
此時,我們就完成了安裝及配置工作。
3. 如何使用自動補全
例如我們輸入
[python] view plain 在CODE上查看代碼片派生到我的代碼片
import sys
print sys.
此時, 按下 Ctrl+x, Ctrl+o, 就能看到提示列表框,以及對應的 docstring.
Ctrl+n, Ctrl+p 來上下選擇
ESC 來取消提示框。
4. 不足之處
a. 屬性沒有 docstring, 只有函數有。
:( 這個似乎不好搞,因為屬性似乎沒有 docstring 這個概念。
b. 在沒有下拉框的情況下,沒有 docstring.
好在, pythoncomplete.vim 是 python 寫的,有空大家可以自己完善一下。

4. 如何使 Vim 下開發 Python 調試更方便

剛開始用vim寫python的時候,感覺很不方便,於是就用了圖形界面的Pycharm(如果是windows用戶,這個IDE應該是標配),用了一段時間也沒有覺得有什麼不好,不過,腦子里總是會想起《程序員修煉之道》中,那句」最好是精通一種編輯器,並將其用於所有編輯任務。如果不堅持使用一種編輯器,可能會面臨現代的巴別特大混亂。」所以,我又決定用vim來寫python。

在知乎上有很多vim寫python的插件推薦,不過我感覺很多人回答都不動腦子,這些回答主要有兩個問題:

  • 回答不全面,很多人都只是推薦一款插件,然後貼個鏈接就完了,如果要想很爽的用vim寫python,可以肯定的是,一款插件是不夠的

  • 貼上自己的配置,說自己的配置有多爽,然後就不管了。如果是一個vim新手,是用不著這么多配置的,如果是一個vim老手,也不會放棄自己原有的配置,使用別人自定義、認為很爽的個性化配置


  • 所以,這些回答都不是很靠譜。我爭取推薦一些靠譜的東西,那麼,就開始吧!


  • 1. 一鍵執行

  • 這個不是插件,而是一個自定義的vim配置。很多時候我們寫python,都是寫一些較為簡單的腳本,那麼,這個一鍵執行的功能就非常實用,我個人感覺最實用的是在寫單元測試的時候,寫完一個單元測試,都不用退出vim,立即執行就能看到結果。

    將下面的配置放到.vimrc文件即可:



  • """""""""""""""""""""" "Quickly Run """"""""""""""""""""""

  • map <F5> :call CompileRunGcc()<CR>

  • func! CompileRunGcc()

  • exec "w"

  • if &filetype == 'c'

  • exec "!g++ % -o %<"

  • exec "!time ./%<"

  • elseif &filetype == 'cpp'

  • exec "!g++ % -o %<"

  • exec "!time ./%<"

  • elseif &filetype == 'java'

  • exec "!javac %"

  • exec "!time java %<"

  • elseif &filetype == 'sh'

  • :!time bash % elseif &filetype == 'python'

  • exec "!time python2.7 %"

  • elseif &filetype == 'html'

  • exec "!firefox % &"

  • elseif &filetype == 'go' " exec "!go build %<"

  • exec "!time go run %"

  • elseif &filetype == 'mkd'

  • exec "!~/.vim/markdown.pl % > %.html &"

  • exec "!firefox %.html &"

  • endif

  • endfunc

  • 2. 代碼補全(snipMate)

  • 代碼補全能夠顯著地減少你敲鍵的次數,並且將你從瑣碎的語法中解放出來。說白了,就是幫你寫代碼!


    如果使用snipMate插件,那麼,當你輸入ifmain以後按tab鍵,將會自動為你生成下面的代碼:


  • if __name__ == '__main__':

  • main()

  • 輸入for,再按tab鍵,生成如下代碼:


  • for needle in haystack: # code...


  • 代碼補全有兩款插件都比較不錯,可以根據自己的需要進行選擇:

  • snipMate

  • xptemplate

  • 3. 語法檢查(Syntastic)

  • syntastic是一款強大的語法檢查插件,當你保存源文件時,它就會執行,並提示用戶哪些代碼存在語法錯誤,哪些代碼風格不符合規范,並給出具體的提示。

    例如,python代碼風格默認設置為PEP8,即使你不知道PEP8的風格,只要你使用syntastic插件,並根據它給出的提示修改,那麼,你就能寫出完全符合PEP8風格的代碼!


  • 4. 編程提示(jedi-vim)

  • jedi-vim是基於jedi的自動補全插件,與Syntastic 不同的是,該插件更加智能,更貼切的稱呼是」編程提示」,而不是代碼補全插件。


    如下圖所示:


    可以說,這個插件是寫vim的標配,並且,真正讓vim寫python變成一件輕松愉快的事情。

    注意: 安裝驚jedi-vim插件,需要在電腦中安裝jedi,根據jedi-vim給出的提示,正常按裝即可。不過我之前遇到一個問題,在公司的虛擬機裡面,安裝以後不起作用,google了半天沒有成功,最後更新了一下vim就可以了,希望遇到相同問題的人,能夠看到。



  • sudo aptitude install vim-gnome vim vim-common vim-tiny



  • 至於調試,難道你們不是用ipdb的嗎?如果不是,趕緊用用,你們會喜歡的。

5. vim 怎樣新建python包及方法

1.先創建一個正常普通的文件夾a
2.然後進入文件夾,在裡面用vim創建名字為__init__.py的空文件,文件裡面什麼都不用寫
3.你再在a文件夾下,創建和編寫你要執行代碼的py文件b.py就可以了
4.此時a就可看做python的一個包了,如果你要執行代碼文件就進入a目錄,然後再a目錄下運行python b.py就行
5.如果你要外部調用a,那麼你要確保從你執行python命令的目錄起,一直到a這個目錄那裡,每一個層級下都要有一個__init__.py文件,創建方法同2

熱點內容
易語言製作軟體源碼 發布:2025-01-09 15:03:27 瀏覽:259
scratch少兒編程是 發布:2025-01-09 15:01:34 瀏覽:711
javamd564加密 發布:2025-01-09 14:58:57 瀏覽:143
javaifint 發布:2025-01-09 14:57:32 瀏覽:487
怎麼配好電腦配置 發布:2025-01-09 14:46:31 瀏覽:835
土豆音頻上傳 發布:2025-01-09 14:45:49 瀏覽:991
貓追蝴蝶編程 發布:2025-01-09 14:30:05 瀏覽:355
花生視頻腳本 發布:2025-01-09 13:43:38 瀏覽:839
鎖相環c語言 發布:2025-01-09 13:43:37 瀏覽:969
e語言盜號源碼 發布:2025-01-09 13:35:25 瀏覽:830