it-swarm.com.de

Autovervollständigung in Vim

Nach einem langen "Training" bin ich endlich zu Vim gewechselt; Ich habe jedoch Probleme mit der automatischen Vervollständigung. Wie kann ich während der Eingabe einen Code vorschlagen?

Normalerweise entwickle ich PHP, Ruby, HTML, C und CSS.

202
diegocstn

Sie können ein Plugin wie AutoComplPop verwenden, um die automatische Code-Vervollständigung während der Eingabe zu erhalten.

2015 Edit: Ich persönlich benutze YouCompleteMe now.

119
michaelmichael

Benutzen Ctrl-N um im Einfügemodus eine Liste mit Word-Vorschlägen abzurufen. Geben Sie :help i_CTRL-N ein, um die Dokumentation von Vim zu dieser Funktionalität anzuzeigen.

Hier ist ein Beispiel für den Import des Python-Wörterbuchs in Vim.

376
Orbit

Sie können mit der integrierten omnifunc-Einstellung beginnen.

Einfach gesagt:

filetype plugin on
au FileType php setl ofu=phpcomplete#CompletePHP
au FileType Ruby,eruby setl ofu=rubycomplete#Complete
au FileType html,xhtml setl ofu=htmlcomplete#CompleteTags
au FileType c setl ofu=ccomplete#CompleteCpp
au FileType css setl ofu=csscomplete#CompleteCSS

geben Sie an der Unterseite Ihres .vimrc im Einfügemodus <Ctrl-X><Ctrl-O> ein.

Ich verlasse mich immer auf diese CSS-Fertigstellung.

9
ernix

Es gibt auch https://github.com/Valloric/YouCompleteMe und es enthält Dinge wie Jedi und hat auch Fuzzy-Match. Bisher war YCM das Schnellste unter dem, was ich versucht habe.

Edit: Es gibt auch einige neue wie https://github.com/maralla/completor.vim

6
Nishant

Ich habe kürzlich ein Projekt namens OniVim entdeckt, das ein elektronenbasiertes Front-End für NeoVim ist, das mit einer sehr netten Autovervollständigung für mehrere Sprachen ausgeliefert wird. Sie haben die volle Kraft von vim zu Ihrer Verfügung, wenn die GUI Ihre Bedürfnisse nicht erfüllt. Es ist noch in der frühen Entwicklung, aber es verbessert sich schnell und es gibt eine wirklich aktive Community. Ich benutze vim seit über 10 Jahren und habe vor ein paar Wochen angefangen, Oni zu testen. Obwohl es hier und da einige Fehler gibt, ist es mir nicht im Weg. Ich würde es neuen Vim-Usern empfehlen, die immer noch ihre Vim-Finger bekommen!

enter image description here

OniVim: https://www.onivim.io/

5
Parker Ault

Wenn Sie VIM Version 8+ verwenden, geben Sie einfach Ctrl + n oder Ctrl + p ein.

3
Ângelo Polotto

Ich habe neocomplcache für ungefähr ein halbes Jahr benutzt. Es ist ein Plugin, das einen Wort-Cache in all Ihren Puffern sammelt und Ihnen diese dann zur automatischen Vervollständigung zur Verfügung stellt.

Der vorherige Link enthält eine Reihe von Screenshots auf der Projektseite. Neocomplcache bietet auch eine Vielzahl von Konfigurationsoptionen, von denen es auf der Projektseite auch grundlegende Beispiele gibt.

Wenn Sie mehr Tiefe benötigen, können Sie den entsprechenden Abschnitt in meinem vimrc - betrachten, indem Sie einfach nach dem Word-Neocomplcache suchen.

3
sp3ctum

Wenn Sie nur die automatische Vervollständigung Ihrer aktuellen Puffer aus dem Zwischenspeicher möchten, ist supertab einfacher zu installieren als neocomplete und kann mit vorinstalliertem Mac vim out-box ohne MacVim arbeiten.

Weitere Alternativen finden Sie unter vim awesome .

1
tning

Hier ist link ! für PHP. 

drücken Sie Strg + x gefolgt von Strg + o, während Sie einige PHP - Funktionen schreiben. 

Vielen Dank an Oseems Solutions für das Tutorial

1
Brian Kenya

Für PHP sind Padawan with Deoplete hervorragende Lösungen für eine robuste PHP - Autovervollständigung in Neovim. Ich habe viele Dinge ausprobiert und Padawan arbeitet wie ein Zauber!

Für Vim können Sie Neocomplete anstelle von Deoplete verwenden.

Ich habe einen Artikel geschrieben, wie man eine Vim PHP IDE macht, wenn jemand interessiert ist. Natürlich ist Padawan dabei. 

0
Matthieu