Vim: evita que la navegación con llaves deje marcas

Vim: evita que la navegación con llaves deje marcas

Rizado Cuando se utiliza la navegación con llaves, {, }, para moverse entre párrafos, sobrescribe la marca de "último salto" (a la que se puede acceder a través de ''). Me resultaría más útil si dejara esta marca intacta. ¿Hay alguna forma de configurar vim de esta manera?

Respuesta1

Puedes usar el keepjumpscomando. De :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.

Entonces, en tu caso, querrás

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

O, si quieres que funcione también en el modo visual (lo que probablemente hagas):

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

información relacionada