Frage Unterschied zwischen Benutzer abgeschlossen und omni vollständig in vim


Ich benutze Neokomplex in Vim 7.3. Bei der Eingabe von Code erwarte ich, dass er auf der Klasse der Variablen basierende Komplettierungen vorschlägt:

$db = new MembersDatabase();
$db-> /* Sugest addMember, printMembers, __construct */

Stattdessen gibt vim nur aus

-- User defined completion (^U^N^P) Pattern not found

Wenn ich jedoch treffe <C-x><C-o> omni completion erscheint und zeigt mir, was ich erwarte.

Ist es nicht Neokomplex soll das schlauer sein? Kann ich nur den Benutzer komplett deaktivieren, da (in diesem Fall) Omni offensichtlich ist, was ich will.

Zusätzliche Frage, auf einigen Screenshots für Neokomplex Sie zeigen Methodensignaturen, wenn sie Vervollständigungen vorschlagen. Wie kann ich diese aktivieren?

Link zu meiner vim-Konfiguration  Pastibin von .vimrc


4
2017-12-02 08:36


Ursprung




Antworten:


let g:neocomplcache_omni_patterns.php = '[^. \t]->\h\w*\|\h\w*::'

soll das Plugin nach einem Klick in den Omnicompletion Modus kicken -> oder ein ::. Sie sollten ein Problem auf GitHub veröffentlichen.

Außerdem sehe ich in keinem dieser Screenshots Methodensignaturen, aber das PHP-Omnicompletion-Skript tut dies bereits im kleinen Vorschaufenster.


1
2017-12-02 14:57