1

Curly When using curly braces navigation, {, }, to move between paragraph, overwrites the "last jump" mark (the one accessible via ''). I would find it more useful if it left this mark untouched. Is there any way to configure vim like this?

1 Answer 1

2

You can use the keepjumps command. From :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.

So in your case, you'd want

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

Or, if you want it to work for visual mode too (which your probably do):

xnoremap } :<C-u>keepjumps normal! gv}<cr>
xnoremap { :<C-u>keepjumps normal! gv{<cr>
4
  • Hmm. Looks promising, but this gives the error "E169: Command to recursive" when I press { or }.
    – nijoakim
    Apr 11, 2017 at 8:19
  • @nijoakim Did you do nmap or nnoremap? That shouldn't be an issue as long as you do nnoremap.
    – DJMcMayhem
    Apr 11, 2017 at 14:06
  • @DJMacMayhem: I tried them both. I also copied the text exactly as you wrote it. Can you confirm it works for you?
    – nijoakim
    Apr 12, 2017 at 7:15
  • @nijoakim Oh, I see what the issue is now. See my edit. Does that work for you?
    – DJMcMayhem
    Apr 12, 2017 at 7:19

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .