Vim - Issue calling repeat#set from function on nomodifiable file
I'm using Tim Pope's repeat.vim plugin and am having some trouble invoking repeat#set correctly. I want to create two mappings for quickly navigating between sections of a help doc, which are delineated by rows of equals signs. My function for going to the next section below works and is repeatable. function! s:NextHelpSection() execute "normal /^===\<CR>" nohlsearch normal zt endfunction nnoremap <buffer> <silent> <LocalLeader>n \ :<C-u>call <SID>NextHelpSection()<CR> \:<C-u>call repeat#set("\<LocalLeader>n")<CR> My function for going to the previous section works on its own but fails when I try to repeat it with E21: Cannot make changes, 'modifiable' is off. function! s:PrevHelpSection() execute "normal ?^===\<CR>" nohlsearch normal zt call repeat#set("\<LocalLeader>p") endfunction nnoremap <buffer> <silent> <LocalLeader>p :<C-u>call <SID>PrevHelpSection()<CR> The difference between the two is just where I call repeat#set, whether it's inside the function or afterwards. Why should this matter? Why would this second version fail? It's cleaner, so I'd prefer to write it this way if possible.
Why does slime-vim indent improperly while paredit is on?
how do I call esnext in vim?
How to make Vim ignore file extensions when opening files through the command line/shell?
Vim key mapping for emmet-vim
Turn off gitgutter within vimrc
eclim .classpath commands :NewSrcEntry not recognized?
Difference between * and ** in Vim file search patterns
run external command from within vim
vividchalk scheme only displays properly if different colorscheme applied first
Find and replace only part of a single line in Vim
mac string search in files
vim update complete popup as I type
vim comment syntax coloring that resets based on columns value without linebreaks
vim syntax doesn't work at all
what does the function! mean in vimscript?
Make NERD Commenter prepend before spaces [duplicate]