欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vim及其用于Python的自動(dòng)補(bǔ)全功能

 更新時(shí)間:2023年09月28日 11:01:56   作者:跡憶客  
Vim是一款功能強(qiáng)大的文本編輯器,常被作為Python開發(fā)環(huán)境的首選,這篇文章主要介紹了用于?Python?的?Vim?自動(dòng)完成,需要的朋友可以參考下

Vim(Vi Improved的縮寫)是一款功能強(qiáng)大的文本編輯器,常被作為Python開發(fā)環(huán)境的首選。本文將探討Vim及其用于Python的自動(dòng)補(bǔ)全功能。

Vim和Python

Vim在全球開發(fā)者中一直存在,并以其持續(xù)不斷的技術(shù)進(jìn)步而聞名。Vim遵循一種關(guān)于功能的特定思想,最好用"鍵盤的效率"來解釋。

這意味著Vim的設(shè)計(jì)理念是,就像一個(gè)用筆和紙的作家一樣,軟件開發(fā)者應(yīng)該能夠高效地編寫代碼,而不被其他瑣事干擾,比如滾動(dòng)或查找選項(xiàng)等。對(duì)于開發(fā)者來說,鍵盤就是他們的筆。

Vim采用結(jié)構(gòu)化的命令語言,最初在其中操作可能會(huì)令人生畏。在真正掌握在像Vim這樣的無干擾環(huán)境中進(jìn)行編程的藝術(shù)之前,確實(shí)需要熟悉許多鍵盤命令。

然而,這些命令存在于一個(gè)邏輯且易于理解的堆棧中,這使得我們更快地適應(yīng)它們。

Vim的特點(diǎn)

Vim和Python組合起來是一個(gè)強(qiáng)大的工具,是許多軟件開發(fā)者的首選。

Vim易于設(shè)置為一個(gè)集成開發(fā)環(huán)境(IDE),提供了許多插件。這些插件可以幫助軟件開發(fā)者定制Vim,并創(chuàng)建最適合其開發(fā)需求的環(huán)境。

盡管本文無法涵蓋所有可用功能來充分利用Vim作為IDE的功能,但我們可以列出一些最受歡迎的功能:

  • 分割布局: 我們可以使用命令 sp <文件名>在當(dāng)前文件下方打開一個(gè)新文件。
  • 代碼折疊: 我們可以折疊那些在當(dāng)前階段不需要完整查看的類或方法。
  • 緩沖區(qū): Vim通過緩沖區(qū)方便我們?cè)L問最近打開的文件。只需使用b <緩沖區(qū)名稱或編號(hào)>打開文件,使用ls列出所有緩沖區(qū)。
  • UTF-8支持: 我們可以通過設(shè)置UTF-8編碼來確保Vim使用UTF-8。可以使用以下腳本進(jìn)行設(shè)置:set encoding=utf-8。
  • 標(biāo)記不必要的空格: 在使用類似Vim這樣的編輯器時(shí),開發(fā)過程中可能會(huì)出現(xiàn)額外的空格。我們可以讓Vim標(biāo)記這些空格,以便輕松發(fā)現(xiàn)并刪除它們。
au BufRead,BufNewFile *.py,*.pyw,*.c,*.h match BadWhitespace /\s\+$/

自動(dòng)縮進(jìn): 在使用Python作為開發(fā)語言時(shí),縮進(jìn)是開發(fā)階段的關(guān)鍵部分。自動(dòng)縮進(jìn)功能幫助開發(fā)者不必過多擔(dān)心由于額外或無縮進(jìn)而導(dǎo)致的錯(cuò)誤。

有時(shí),當(dāng)方法的定義超過一行時(shí),自動(dòng)縮進(jìn)可能不起作用。我們可以通過設(shè)置indentpython.vim來解決這個(gè)問題:

Plugin 'vim-scripts/indentpython.vim'

語法檢查: 任何現(xiàn)代IDE的一個(gè)標(biāo)志就是它能夠保持對(duì)任何開發(fā)語言的語法檢查。我們可以通過添加語法插件和flake8插件來為Vim設(shè)置語法檢查,以添加pep8功能。

Syntactic插件:

```bash Plugin 'vim-syntastic/syntastic' ```

Flake8插件:

```bash Plugin 'nvie/vim-flake8' #添加pep8 ``` 1. PEP8: 我們可以設(shè)置Vim的pep8檢查,以保持編碼標(biāo)準(zhǔn)的審查。

Vim的Python自動(dòng)補(bǔ)全

實(shí)現(xiàn)Python自動(dòng)補(bǔ)全的最佳插件是YouCompleteMe。雖然YouCompleteMe使用了其他各種自動(dòng)補(bǔ)全庫(如Jedi),但它是目前最適合最新Python版本的插件。

我們可以使用Vundle在我們的環(huán)境中安裝和設(shè)置YouCompleteMe,如下所示:

Bundle 'Valloric/YouCompleteMe'

關(guān)于所有操作系統(tǒng)類型的完整安裝說明可以在詳盡的文檔中找到。

下面是在64位Linux系統(tǒng)上進(jìn)行設(shè)置的步驟:

首先,運(yùn)行以下命令安裝所有的自動(dòng)補(bǔ)全包。下面的命令將通過Vundle安裝YCM插件,CMake、Vim和Python。如果您已經(jīng)安裝了這些包,它們將不會(huì)被重新安裝。

apt install build-essential cmake vim-nox python3-dev

接下來,使用以下命令安裝mono-complete、go、node、java和npm:

apt install mono-complete golang nodejs default-jdk npm

現(xiàn)在,我們只需編譯YCM,方法如下:

cd ~/.vim/bundle/YouCompleteMe
python3 install.py --all

安裝過程非常簡單,但我們可以進(jìn)行自定義配置,如下所示:

let g:ycm_autoclose_preview_window_after_completion=1
map <leader>g  :YcmCompleter GoToDefinitionElseDeclaration<CR>

這個(gè)腳本確保一旦完成自動(dòng)補(bǔ)全,窗口就會(huì)關(guān)閉,并在腳本的第二行創(chuàng)建一個(gè)GoTo定義的快捷方式。

到此這篇關(guān)于用于 Python 的 Vim 自動(dòng)完成的文章就介紹到這了,更多相關(guān)Python Vim 自動(dòng)完成內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python 如何讓特征值滯后一行

    Python 如何讓特征值滯后一行

    這篇文章主要介紹了Python 如何讓特征值滯后一行的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Python計(jì)算開方、立方、圓周率,精確到小數(shù)點(diǎn)后任意位的方法

    Python計(jì)算開方、立方、圓周率,精確到小數(shù)點(diǎn)后任意位的方法

    今天小編就為大家分享一篇Python計(jì)算開方、立方、圓周率,精確到小數(shù)點(diǎn)后任意位的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • Python包和模塊的分發(fā)詳細(xì)介紹

    Python包和模塊的分發(fā)詳細(xì)介紹

    這篇文章主要介紹了Python包和模塊的分發(fā),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-06-06
  • NumPy中的維度Axis詳解

    NumPy中的維度Axis詳解

    今天小編就為大家分享一篇NumPy中的維度Axis詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • 最新評(píng)論