Obsługa Vim * / dyn

14

Co oznacza znak plus przed */dynsię na :versionwyjście polecenia użytkownika, np:

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

Nie znalazłem na nim żadnej przydatnej dokumentacji. Po uruchomieniu :echo has('python3')Vim zwraca 0. Po uruchomieniu :python3 print('hi')napisane jest, E370: Could not load library python31.dllże powinienem zainstalować Pythona (jak rozumiem).

Po prostu nie widzę różnicy między -*/dyni +*/dyn. Co daje nam znak plus? Jaka jest też różnica w porównaniu z dynfunkcją bez, np. +python?

galymzhan
źródło

Odpowiedzi:

8

+Oznacza, że vim binarny ma tę funkcję. / Dyn oznacza, że ​​jest dynamicznie ładowany i może mieć tę funkcję w zależności od tego, czy może znaleźć dll.

zob :help python-dynamic.

Keith
źródło
Jaka jest różnica między dyn a not-dyn?
galymzhan
2
dyn oznacza, że ​​szuka biblioteki tylko wtedy, gdy spróbujesz użyć tych funkcji (dlatego widzisz błąd tylko przy próbie użycia funkcji python). notdyn oznacza, że ​​zawsze ładuje bibliotekę.
idbrii
Zauważ też, że w moim przypadku vim python / dyn nie działa na Ubuntu 16.10 :( Nadal próbuję wymyślić, jak to zrobić .. Ponieważ dobrze się kompiluje i włączyłem --enable-pythoninterp = tak, więc nie mam pojęcia, dlaczego to idzie dalej z obsługą dyn
Tigraine