導航:首頁 > 編程語言 > vimpython萬能補全

vimpython萬能補全

發布時間:2022-04-20 16:49:55

Ⅰ Vim 中如何對 python 進行代碼補全

現在vim已經內置了python{,3}complete了,版本為7.4.410-1(不太清楚具體哪個版本才有的功能)。

Ⅱ vim 如何設置 python 標准庫的高亮和補全

可以代碼添加到vim語法高亮

將下面代碼添加符合到的後面就可以了:

syn keyword pythonStatement False, None, True

syn keyword pythonStatement as assert break continue del exec global syn
keyword pythonStatement lambda nonlocal pass print return with yield syn keyword
pythonStatement class def nextgroup=pythonFunction skipwhite

syn keyword pythonConditional elif else if

syn keyword pythonRepeat for while

syn keyword pythonOperator and in is not or

syn keyword pythonException except finally raise try

syn keyword pythonInclude from import



可以代碼添加到vim中vim語法補全

1、修改_vimrc

2、在_vimrc文件中加入如下這幾行:

let g:pydiction_location='C:/program
files/vim/vimfiles/ftplugin/pydiction/complete-dict'

filetype plugin on

set autoindent

syntax enable

set softtabstop=4

set shiftwidth=4

set number


使用:

如果是開新的python檔案,尚未儲存為 .py,VIM不知道目前編輯的是python,所以要在vim的命令列裡面下這個指令 set
FileType=python ,之後,按tab就會列出method和attribute了

Ⅲ 如何啟用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 寫的,有空大家可以自己完善一下。

Ⅳ 怎樣用vim自動補全python

Pydiction 可以是我們使用Tab鍵自動補全Python代碼在Vim,是一款非常不錯的插件。

Pydiction不需要安裝,所有沒有任何依賴包問題,Pydiction主要包含三個文件。

1
2
3
python_pydiction.vim -- Vim plugin that autocompletes Python code.
complete-dict -- Dictionary file of Python keywords, moles, etc.
pydiction.py -- Python script to add more words to complete-dict.
下載Pydiction

1
2
3
4
5
mkdir ~/.vim
mkidr ~/.vim/bundle
cd ~/.vim/bundle
#這里我們也可以自己下載好上傳到linux系統中
git clone https://github.com/rkulla/pydiction.git
配置Pydiction

1
2
3
4
#- UNIX/LINUX/OSX: Put python_pydiction.vim in ~/.vim/after/ftplugin/
#- WINDOWS: Put python_pydiction.vim in C:\vim\vimfiles\ftplugin\
# Assuming you installed Vim to C:\vim\
cp -r ~/.vim/bundle/pydiction/after/ ~/.vim
新建.vimrc文件

1
vim ~/.vimrc
在.vimrc文件添加如下配置:

1
2
3
filetype plugin on
let g:pydiction_location = '~/.vim/tools/pydiction/complete-dict'
let g:pydiction_menu_height = 3
到此已經可以使用Tab鍵自動補全python代碼了。

Ⅳ 分享!5種常用的Python工具

IDLE


在安裝Python時,默認也會安裝IDLE。這是最優秀的Python工具之一。它可以降低Python入門的門檻。它的主要功能包括Python Shell窗口(互動式解釋器)、自動補齊、高亮顯示語法以及基本的集成調試器。IDLE輕巧易用,方便學習。但是,它不適用於大型項目。許多程序員都將其作為最佳的Python工具。


Scikit-learn


Scikit-learn是數據科學最常使用的Python工具之一。這是一款為機器學習和數據科學而設計的Python工具。該工具主要用於處理分類、回歸、聚類、模型選擇以及預處理等任務。scikit-Learn最出色的功能是在測試數據集上執行基準測試時,表現出的驚人速度。因此,對於程序員和學生來說,Scikit-learn是最優秀的Python工具之一。


Theano


Theano是一款數據科學的Python工具,對於程序員和學生而言,這是一款非常可靠的工具。它是深度學習方面最好的Python工具,因此非常適合深度學習。Theano的設計主旨是用戶友好、模塊化、易於擴展,而且可以與Python配合使用。它能夠以最佳方式表達神經網路。Theano可以在TensorFlow和CNTK等流行的神經網路之上運行。


Selenium


Selenium是最佳的Python自動化工具之一。它適用於Python測試的自動化,常常用作Web應用程序的自動化框架。我們可以利用Selenium,通過許多編程語言(包括Java、C#、Python、ruby以及其他許多程序員和學生使用的語言)來編寫測試腳本。你還可以在Selenium中集成Junit和TestNG等工具,來管理測試用例並生成報告。


Test complete


Testcomplete是另一款非常出色的Python自動化工具。支持Web、移動和桌面自動化測試。更高級的應用需要獲得商業許可,而且它還可以幫助學生提高學業成績。Test complete還可以像機器人框架一樣執行關鍵字驅動的測試。它擁有最出色的錄制以及回放功能,非常實用。


關於分享!5種常用的Python工具,環球青藤小編就和大家分享到這里了,學習是永無止境的,學習一項技能更是受益終身,所以,只要肯努力學,什麼時候開始都不晚。如果您還想繼續了解關於python編程的學習方法及素材等內容,可以點擊本站其他文章學習。

Ⅵ 關於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 寫的,有空大家可以自己完善一下。

Ⅶ 如何在vim中使用tab進行python代碼補全

我這里要介紹的功能叫"new-omni-completion(全能補全)", 你可以用下面的命令看看介紹:

:help new-omni-completion
你還需要在~/.vimrc文件中增加下面兩句:

filetype plugin indent on
打開文件類型檢測, 加了這句才可以用智能補全

set completeopt=longest,menu
關掉智能補全時的預覽窗口

請確定你的Ctags 已經安裝好, 並且生成的tags文件已經可以用了, 那麼我們就要抄傢伙開搞了.
用vim打開源文件

$ vim /home/wooin/vim71/src/main.c (linux下的,文件是一樣的。)
設置tags文件

:set tags=/home/wooin/vim71/tags
隨便找一個有成員變數的對象, 比如"parmp",
進入Insert模式, 將游標放在"->"後面,
然後按下"Ctrl+X Ctrl+O",, 顯示所有匹配的標簽,。

如果你增加了一些成員變數, 全能補全還不能馬上將新成員補全, 需要你重新生成一下tags文件, 但是你不用重啟vim, 只是重新生成一下tags文件就行了,
這時全能補全已經可以自動補全了。
vim中的其他補全方式還有:

Ctrl+X Ctrl+L 整行補全 Ctrl+X Ctrl+N
根據當前文件里關鍵字補全

Ctrl+X Ctrl+K
根據字典補全 Ctrl+X Ctrl+T
根據同義詞字典補全

Ctrl+X Ctrl+I
根據頭文件內關鍵字補全 Ctrl+X Ctrl+]
根據標簽補全

Ctrl+X Ctrl+F
補全文件名 Ctrl+X Ctrl+D
補全宏定義

Ctrl+X Ctrl+V
補全vim命令 Ctrl+X Ctrl+U
用戶自定義補全方式

Ctrl+X Ctrl+S
拼寫建議

是不是還是覺得沒有tab方便?好的,人家開發了一個叫做supertab.vim這個插件。安裝後,
在你的~/.vimrc文件中加上這兩句:

let g:SuperTabRetainCompletionType=2
let g:SuperTabDefaultCompletionType="<C-X><C-O>"
以後當你准備按"Ctrl+X
Ctrl+O"的時候直接按<Tab>就好了,這下你滿足了吧。

我稍微再介紹一下上面那兩句配置信息:

let g:SuperTabDefaultCompletionType="<C-X><C-O>"
" 設置按下<Tab>後默認的補全方式, 默認是<C-P>, 「
現在改為<C-X><C-O>. 關於<C-P>的補全方式,
" 還有其他的補全方式,
你可以看看下面的一些幫助:
" :help ins-completion
" :help compl-omni

let g:SuperTabRetainCompletionType=2
" 0 -
不記錄上次的補全方式
" 1 - 記住上次的補全方式,直到用其他的補全命令改變它
" 2 - 記住上次的補全方式,直到按ESC退出插入模式為止

Ⅷ vim有自動補全功能嗎

YouCompleteMe是Vim的自動補全插件,與同類插件相比,具有如下優勢
1、基於語義補全
2、整合實現了多種插件
clang_complete、AutoComplPop 、Supertab 、neocomplcache 、Syntastic(類似功能,僅僅針對c/c++/obj-c代碼)
3、支持多種語言
c、c++、obj-c、c#、python
對於其他的語言,會調用vim設置的omnifunc來匹配,因此同樣支持php,ruby等語言。
4、YouCompleteMe除了提供了自動補全、自動提示錯誤的功能外,還提供了類似tags的功能
跳轉到定義GoToDefinition
跳轉到聲明GoToDeclaration
以及兩者的合體GoToDefinitionElseDeclaration

科普
Vim作為一款文本編輯器,針對文本自動補全這個功能來說,主要有兩種實現方式:
復制代碼
基於文本(acp,omnicppcompleter)
我們常用的omnicppcompleter,acp,vim自帶的c-x, c-n的實現方式就是基於文本。更通俗的說法,其實就是一個字:猜
其通過文本進行一些正則表達式的匹配,再根據生成的tags(利用ctags生成)來實現自動補全的效果。
基於語義
顧名思義,其是通過分析源文件,經過語法分析以後進行補全。由於對源文件進行分析,基於語義的補全可以做到很精確。但是這顯然是vim所不可能支持的。而且經過這么多年發展,由於語法分析有很高的難度,也一直沒有合適的工具出現。直到,由apple支持的clang/llvm橫空出世。YouCompleteMe也正是在clang/llvm的基礎上進行構建的。

Ⅸ python 怎麼補全linux

Python自動補全有vim編輯下和python交互模式下,下面分別介紹如何在這2種情況下實現Tab鍵自動補全。
一、vim python自動補全插件:pydiction
可以實現下面python代碼的自動補全:
簡單python關鍵詞補全
python 函數補全帶括弧
python 模塊補全
python 模塊內函數,變數補全
from mole import sub-mole 補全
想為vim啟動自動補全需要下載插件,地址如下:
http://vim.sourceforge.net/scripts/script.php?script_id=850
https://github.com/rkulla/pydiction
安裝配置:
wget https://github.com/rkulla/pydiction/archive/master.zip
unzip -q master
mv pydiction-master pydiction
mkdir -p ~/.vim/tools/pydiction
cp -r pydiction/after ~/.vim
cp pydiction/complete-dict ~/.vim/tools/pydiction

確保文件結構如下:
# tree ~/.vim
/root/.vim
├── after
│ └── ftplugin
│ └── python_pydiction.vim
└── tools
└── pydiction
└── complete-dict

創建~/.vimrc,確保其中內容如下:
# cat ~/.vimrc
filetype plugin on
let g:pydiction_location = '~/.vim/tools/pydiction/complete-dict'

用vim編輯一個py文件,import os.,這時候應該出現提示,證明成功

二、python交互模式下Tab自動補齊
創建文件如下:
# cat ~/.pythonstartup
# python startup file
#!/usr/bin/env python
import sys
import readline
import rlcompleter
import atexit
import os
# tab completion
readline.parse_and_bind('tab: complete')
# history file
histfile = os.path.join(os.environ['HOME'], '.pythonhistory')
try:
readline.read_history_file(histfile)
except IOError:
pass
atexit.register(readline.write_history_file, histfile)

del os, histfile, readline, rlcompleter
1

echo 'export PYTHONSTARTUP=~/.pythonstartup' >> ~/.bash_profile

重新登陸shell,輸入python命令進入交互模式,就可以用Tab鍵進行補全。

Ⅹ 如何在Vim中使用tab進行Python代碼補全

這里要介紹的功能叫"new-omni-completion(全能補全)", 你可以用下面的命令看看介紹: :help new-omni-completion 你還需要在~/.vimrc文件中增加下面兩句: filetype plugin indent on 打開文件類型檢測, 加了這句才可以用智能補全 set completeopt

閱讀全文

與vimpython萬能補全相關的資料

熱點內容
c523壓縮比 瀏覽:543
命令語氣的人什麼心態 瀏覽:435
程序員喜歡留指甲嗎 瀏覽:516
七牛雲伺服器收費標准 瀏覽:627
時光相冊加密空間密碼忘記 瀏覽:474
華為雲為用戶提供的服務雲伺服器 瀏覽:634
minecraftlinux伺服器搭建 瀏覽:376
linux命令新建文件 瀏覽:708
長線pdf 瀏覽:607
程序員電腦支持手寫 瀏覽:414
解壓頭戴式耳機推薦 瀏覽:344
紙條app上怎麼樣看對方主頁 瀏覽:883
編譯英語單詞怎麼寫 瀏覽:249
編譯原理和匯編原理的區別 瀏覽:864
如何給加密的pdf解密 瀏覽:770
華為盒子時間同步伺服器地址 瀏覽:95
python處理excel亂碼 瀏覽:391
mysql的命令行 瀏覽:822
jpeg採用什麼演算法 瀏覽:701
程序員紅軸薄膜 瀏覽:306