Wie ändere ich in vim die Zeile mit der linken und rechten Pfeiltaste?

25

In Vim funktionieren meine Pfeiltasten ordnungsgemäß und bewegen sich erwartungsgemäß nach oben, unten, links und rechts, mit einer Ausnahme. Am Anfang einer Zeile bewirkt der Pfeil nach links nichts, anstatt zum letzten Zeichen der vorherigen Zeile zu springen. Am Ende einer Zeile bewirkt der Pfeil nach rechts nichts, anstatt zum ersten Zeichen der nächsten Zeile zu springen.

Gibt es eine Einstellung, die ich ändern kann, um das erwartete Verhalten zu erzielen?

Nohat
quelle
4
Ich denke, dass die meisten VIM-Benutzer empfehlen würden, die Pfeiltasten nicht zu verwenden.
User12612
@ user12612 warum genau?
Luchonacho
@luchonacho Ich denke, die Idee ist, dass ernsthafte VIM-Benutzer glauben, dass Ihre Finger die Startzeile Ihrer Tastatur nicht verlassen sollten, um zu navigieren, wo Sie sich in Ihrem Text befinden.
Am

Antworten:

26

Nach einigem weiteren Googeln fand ich die Antwort darin, die whichwrapOption zu verwenden.

Ich habe die folgende Zeile zu meiner .vimrc hinzugefügt:

set whichwrap+=<,>,[,]

Die Optionen <und >aktivieren die gewünschte Einstellung für den Normalmodus und [und ]die gewünschte Einstellung für den Einfügemodus.

Nohat
quelle
1
(Warum war dies nicht der Standard auf meinem System Einstellung ist ein Geheimnis)
nohat
Dies scheint das Verhalten der h j k lTasten nicht zu beeinflussen .
Sebastián Grignoli
Richtig, es gibt andere Werte für h und j. Siehe :help 'whichwrap'oder vimhelp.appspot.com/options.txt.html#%27whichwrap%27 . k und ich treffen nicht wirklich zu, da wir am Anfang / Ende von Zeilen über Links- / Rechtsverhalten sprechen.
Adam Monsen
9

Fügen Sie dies zu Ihrer .vimrc hinzu:

set whichwrap+=<,>,h,l,[,]
gpista
quelle
0

Dies ist das Standardverhalten. Sie können jedoch immer Home und End verwenden, um zum Anfang und Ende einer Zeile zu springen.

Lachs
quelle
5
OP möchte das Standardverhalten ändern. Das ist der Grund, warum er hier gefragt hat.
Akira
0

Sie können dies umgehen, indem Sie w und b verwenden, die Zeilen umbrechen.

hasen
quelle
Aber b nimmt Ihnen das erste Zeichen des letzten Wortes der vorherigen Zeile. Gibt es wirklich keine Möglichkeit, den Pfeil nach links zum letzten Zeichen der vorherigen Zeile zu bewegen, wenn sich das erste Zeichen einer Zeile befindet?
Keine Kommentare
Ja, ich weiß, es ist keine echte Lösung.
Hasen