Vim - Verhindern Sie, dass die Navigation mit geschweiften Klammern Markierungen hinterlässt

Vim - Verhindern Sie, dass die Navigation mit geschweiften Klammern Markierungen hinterlässt

Geschweifte Klammern Wenn Sie die Navigation mit geschweiften Klammern verwenden, {, }, um zwischen Absätzen zu wechseln, wird die Markierung „letzter Sprung“ (die über erreichbar ist '') überschrieben. Ich fände es nützlicher, wenn diese Markierung unverändert bliebe. Gibt es eine Möglichkeit, vim so zu konfigurieren?

Antwort1

Sie können den Befehl verwenden keepjumps. Von :h :keepjumps:

                            *:keepj* *:keepjumps*
:keepj[umps] {command}
            Moving around in {command} does not change the |''|,
            |'.| and |'^| marks, the |jumplist| or the
            |changelist|.
            Useful when making a change or inserting text
            automatically and the user doesn't want to go to this
            position.

In Ihrem Fall würden Sie also wollen

nnoremap } :keepjumps normal! }<cr>
nnoremap { :keepjumps normal! {<cr>

Oder, wenn Sie möchten, dass es auch im visuellen Modus funktioniert (was wahrscheinlich der Fall ist):

xnoremap } :<C-u>keepjumps normal! gv}<cr>
xnoremap { :<C-u>keepjumps normal! gv{<cr>

verwandte Informationen