[GELÖST] VIM: File Explorer funktioniert nicht bei Aufruf mit "-u"

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
Antworten
DrZook
Beiträge: 2
Registriert: 29.08.2023 11:32:28

[GELÖST] VIM: File Explorer funktioniert nicht bei Aufruf mit "-u"

Beitrag von DrZook » 29.08.2023 11:50:07

Hallo zusammen,

ich habe ein merkwürdiges Verhalten bei VIM festgestellt.

Wenn ich VIM mit

vim -u {PathtoVIMRC}

aufrufe, bekomme ich, wenn ich den File Explorer mit ":E" aufrufen will, immer die Fehlermeldung "E492: Not an editor command: E".
Dabei ist es egal, ob es eine komplexe RC, eine sehr einfache oder auch NONE ist. Bei einem Aufruf ohne "-u" klappt ":E" immer ohne Probleme.

Das Verhalten ist auf Debian Testing mit VIM 9.0 und RHEL 7.9 mit VIM 7.4 gleich.

(Warum der Aufruf mit "-u"? Auf Kundensystemen arbeiten wir mit einem Systemuser und jeder hat unterschiedliche Vorlieben für seine .vimrc)

Was habe ich übersehen oder nicht verstanden?

Beste Grüße aus Braunschweig!
Zuletzt geändert von DrZook am 29.08.2023 12:24:22, insgesamt 1-mal geändert.

Benutzeravatar
Meillo
Moderator
Beiträge: 8818
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: VIM: File Explorer funktioniert nicht bei Aufruf mit "-u"

Beitrag von Meillo » 29.08.2023 11:56:36

DrZook hat geschrieben: ↑ zum Beitrag ↑
29.08.2023 11:50:07
Was habe ich übersehen oder nicht verstanden?
Vermutlich den letzten Satz hiervon:
Manpage vim(1) hat geschrieben: -u {vimrc} Use the commands in the file {vimrc} for ini‐
tializations. All the other initializations
are skipped.
Ich denke, dass der Fileexplorer in irgendeiner System-Config-Datei aktiviert wird. Wenn du das in deiner explizit angegebenen vimrc nicht selbst machst, dann ist er nicht aktiviert. Du solltest also mal schauen, wie man den Fileexplorer aktivieren muss und diese Befehle in deine angegebene vimrc eintragen.
Use ed once in a while!

JTH
Moderator
Beiträge: 3023
Registriert: 13.08.2008 17:01:41
Wohnort: Berlin

Re: VIM: File Explorer funktioniert nicht bei Aufruf mit "-u"

Beitrag von JTH » 29.08.2023 12:01:59

Cool, über :E und co. bin ich noch nicht gestolpert, hab netrw bisher nur zum seltenen Öffnen von Dateien von Remote benutzt. Wieder was gelernt, danke :THX:

Zu deiner Frage:
Wegen der Meldung würd ich ja annehmen, dass netrw, was hinter :E und co. steckt, nicht aktiviert ist. Laut :help netrw-activate gibt es da aber gar nicht viele Kriterien für:
:help netrw-activate hat geschrieben: Network-oriented file transfers are available by default whenever Vim's 'nocompatible' mode is enabled. Netrw's script files reside in your system's plugin, autoload, and syntax directories; just the plugin/netrwPlugin.vim script is sourced automatically whenever you bring up vim. The main script in autoload/netrw.vim is only loaded when you actually use netrw. I suggest that, at a minimum, you have at least the following in your <.vimrc> customization file:

Code: Alles auswählen

set nocp                                                              
if version >= 600                                                     
  filetype plugin indent on                                           
endif
Die naheliegendste Frage wär also, was in deiner vimrc steckt. Steht da womöglich ein explizites, kontraproduktives

Code: Alles auswählen

set compatible
drin?
Manchmal bekannt als Just (another) Terminal Hacker.

rodney
Beiträge: 336
Registriert: 09.12.2016 04:15:59

Re: VIM: File Explorer funktioniert nicht bei Aufruf mit "-u"

Beitrag von rodney » 29.08.2023 12:05:39

:E bzw :Explore gehoeren zum (in vim enthalten) netrw-plugin. In der Hilfe :help initialization steht:

Code: Alles auswählen

...
If Vim was started with "-u filename", the file "filename" is used.
All following initializations until 4. are skipped. $MYVIMRC is not
set.
"vim -u NORC" can be used to skip these initializations without
reading a file.  "vim -u NONE" also skips loading plugins.  |-u|
...
d.h. das netrw-plugin wird nicht geladen und somit kennt vim den Befehl :E[xplore] nicht (siehe :help E492)

Stumpfe Loesung: Aufrufen von vim mit: vim -u <configdatei> -c "set nocompatible | runtime! plugin/netrwPlugin.vim"

JTH
Moderator
Beiträge: 3023
Registriert: 13.08.2008 17:01:41
Wohnort: Berlin

Re: VIM: File Explorer funktioniert nicht bei Aufruf mit "-u"

Beitrag von JTH » 29.08.2023 12:25:31

Hab spaßeshalber mal herumprobiert:

Mit einer einzeiligen vimrc mit

Code: Alles auswählen

set nocompatible
und Aufruf

Code: Alles auswählen

vim -u nocp.vimrc
funktioniert anschließend :E. Mit dem Gegenbeispiel set compatible oder einem beliebigen anderen set … funktioniert netrw nicht.

Es braucht also wohl in diesem Fall mit -u ein explizites set compatible, aber zumindest kein manuelles Laden des netrw-Plugins. Normalerweise löst ja die Existenz einer .vimrc schon ein automatisches set nocompatible aus – das gilt wohl mit -u nicht, wie Meillo und rodney schon angedeutet haben.
Manchmal bekannt als Just (another) Terminal Hacker.

DrZook
Beiträge: 2
Registriert: 29.08.2023 11:32:28

Re: [GELÖST] VIM: File Explorer funktioniert nicht bei Aufruf mit "-u"

Beitrag von DrZook » 29.08.2023 12:33:37

Danke!

Dass "-u" VIM in den Compatible Modus versetzt, war überraschend.

Ein schlichtes "set nocp" in der .vimrc reicht :-)

:hail: :hail:

Antworten