In gvim können keine Tasten zwischen F1 und F5 zugeordnet werden

402
Karan Shah

Ich kann keine Schlüssel zwischen F1 und F5 in gvim durch vimrc zuordnen. Alle Tasten nach F5 werden jedoch ordnungsgemäß zugeordnet.

Hier ist der Inhalt meiner Vimrc-Datei.

map <F1> :q!<ESC> map <F4> :E<ESC> map <F3> :sp<ESC> map <F6> :vsp<ESC> map <F7> :tabe %<ESC>:set syntax=systemverilog<ESC>:E<ESC> 

F6 & F7 werden korrekt zugeordnet, wenn ich mein gvim öffne, aber F1, F3 & F4 werden nicht zugeordnet.

Interessanterweise kann ich nach dem Öffnen des gvim auch manuell die Zuordnung durch den Befehl map vornehmen, und ich kann sogar alle diese 3 Tasten zuordnen.

Kann mir bitte jemand dabei helfen?

1
Möglicherweise gibt es ein Plugin, das die Schlüssel nach der Vimrc-Verarbeitung neu zuordnen kann. Versuchen Sie, vim zu starten, und überprüfen Sie nach dem Start `: map, welche Zuordnung auf der Taste vorhanden ist` Zaboj Campula vor 5 Jahren 0
Ja. Ich habe das durch "nmap" überprüft und es wird "angezeigt" nur. Karan Shah vor 5 Jahren 0
Wenn es keine Zuordnung gibt, zeigt vim "Keine Zuordnung gefunden" an, sodass in Ihrem Fall eine Zuordnung von F1 nach F1 erfolgt. Prüfen Sie, wer dieses Mapping gemacht hat: verbose nmap` Zaboj Campula vor 5 Jahren 0
Ja, vielen Dank dafür. Ich habe es überprüft. Meine `vimrc`-Daten wurden von der` gvimrc`-Datei überschrieben. Also habe ich mein `vimrc` in` gvimrc` umbenannt und es funktioniert jetzt. 1. Ist es die richtige Lösung? 2. Nach dem Umbenennen funktioniert der Befehl `: E` in gvim nicht. Karan Shah vor 5 Jahren 0
Hallo, das: E-Problem ist auch gelöst, wenn ich sowohl die .vimrc- als auch die .gvimrc-Datei im Ausgangsverzeichnis belasse. Karan Shah vor 5 Jahren 0

1 Antwort auf die Frage

0
Zaboj Campula

Die Tastenzuordnung .vimrckann durch andere Initialisierungsdateien überschrieben werden. Sie können beispielsweise überprüfen, welche Zuordnung an den F1Schlüssel gebunden ist :

:map <F1> 

Wenn etwas anderes als in vorhanden ist, wird .vimrcdas Mapping ersetzt oder entfernt. Die ausführliche Option zeigt, woher die Schlüsselzuordnung kommt:

:verbose map <F1> ... Last set from ... 

Das Mapping wurde .gvimrcin diesem Fall überschrieben . Vim Prozess .vimrczuerst und dann .gvimrcdas Key Mapping im .gvimrcImmer gewinnen. .gvimrcsollte eine für die grafische Umgebung spezifische Konfiguration enthalten, z. B. Menüerweiterungen, Farbschemata, spezielle Mauseinstellungen und alle anderen Konfigurationsoptionen, die für den Terminalmodus nicht relevant sind.

Die Lösung für diesen Fall ist das Entfernen von Tastenzuordnungen, .gvimrcdamit die Zuordnung nicht überschrieben wird .vimrc.