Vim * / dyn-Unterstützung

14

Was bedeutet das Pluszeichen vor */dynder :versionAusgabe des Befehls, zB:

+python/dyn +python3/dyn +ruby/dyn +tcl/dyn

Ich habe keine nützliche Dokumentation gefunden. Wenn ich :echo has('python3')Vim starte, wird 0 zurückgegeben. Wenn ich :python3 print('hi')es starte, E370: Could not load library python31.dllheißt das, dass ich Python installieren soll (soweit ich weiß ).

Also kann ich den Unterschied zwischen -*/dynund einfach nicht erkennen+*/dyn . Was gibt uns das Pluszeichen? Was ist auch der Unterschied zu dyn-less +python?

galymzhan
quelle

Antworten:

8

Das +bedeutet, dass vim binary diese Funktion hat. / Dyn bedeutet, dass es dynamisch geladen wird und die Funktion möglicherweise nicht hat, je nachdem, ob die DLL gefunden wird oder nicht.

sehen :help python-dynamic.

Keith
quelle
Und was ist der Unterschied zwischen Dyn und Not-Dyn?
Galymzhan
2
dyn bedeutet, dass nur dann nach der Bibliothek gesucht wird, wenn Sie versuchen, diese Funktionen zu verwenden (daher wird nur dann ein Fehler angezeigt, wenn Sie versuchen, Python-Funktionen zu verwenden). notdyn bedeutet, dass die Bibliothek immer geladen wird.
Idbrii
Beachten Sie auch, dass in meinem Fall vim python / dyn unter Ubuntu 16.10 nicht funktioniert :( Ich versuche immer noch herauszufinden, wie das funktioniert. Weil es gut kompiliert und ich --enable-pythoninterp = yes aktiviert habe, also keine Ahnung, warum es geht mit dyn Unterstützung voraus
Tigraine