ich bearbeite in vim eine Datei mit sehr langen Zeilen, die mittels wrap und
linebreak auch genau so angezeigt werden, wie ich das will. Allerdings
nervt es mich, daß Cursorbefehle immer auf die "physischen" und nicht auf
die angezeigten Zeilen bezogen werden. Wenn ich etwa den Cursor eine Zeile
nach oben oder unten bewege, muß ich ihn erst mal "suchen", weil er bezogen
auf die Anzeige mehrere Zeilen springt. Wie kann ich vim dazu bewegen,
Cursor-Befehle, auf die angezeigten, nicht die "physikalischen" Zeilen zu
beziehen?
Gruß
gp
> Wie kann ich vim dazu bewegen, Cursor-Befehle, auf die
> angezeigten, nicht die "physikalischen" Zeilen zu beziehen?
Durch Voranstellen von "g" vor der Richtungsangabe, nach unten also
"gj".
Grusz,
Peter Blancke
--
Hoc est enim verbum meum!
>> Wie kann ich vim dazu bewegen, Cursor-Befehle, auf die
>> angezeigten, nicht die "physikalischen" Zeilen zu beziehen?
>
> Durch Voranstellen von "g" vor der Richtungsangabe, nach unten also
> "gj".
Das ist schon eine deutliche Verbesserung, danke.
Kann ich das nicht auch mit einer generellen Voreinstellung (immer,
wenn "wrap on" ist) machen? Denn für eine einfache Cursorbewegung ist eine
mehrfache Tastatureingabe doch immer noch etwas unpraktisch.
Gruß und Dank
Georg
Z.B. mit sowas in der .vimrc:
nnoremap j gj
nnoremap k gk
vnoremap j gj
vnoremap k gk
nnoremap <Down> gj
nnoremap <Up> gk
vnoremap <Down> gj
vnoremap <Up> gk
inoremap <Down> <C-o>gj
inoremap <Up> <C-o>gk
Das mappt sowohl jk sowieo die beiden Pfeiltasten entsprechend.
> nnoremap j gj
> nnoremap k gk
> vnoremap j gj
> vnoremap k gk
> nnoremap <Down> gj
> nnoremap <Up> gk
> vnoremap <Down> gj
> vnoremap <Up> gk
> inoremap <Down> <C-o>gj
> inoremap <Up> <C-o>gk
Ja, das funzt. Prima!
georg