我定义了两个用于在 Vim 中快速插入折叠标记的宏:
nnoremap <leader>mb A {{{<Esc>0
nnoremap <leader>me o# }}}<Esc>0zc
但很快发现它们对不用#
作注释字符串的所有内容都相当不满意。
所以我想出了这个动态地做它,但它不起作用:
nnoremap <leader>mb A {{{<Esc>0
nnoremap <leader>me :call s:InsertFoldEnding()
…
function! s:InsertFoldEnding()
l:line=call line('.')
l:str=&commentstring + '}}}'
call append(l:line, l:str)
endfunction
错误信息:
E81: Using <SID> not in a script context
有什么问题?有没有更好的方法来插入这些折叠?
澄清:
我希望折叠最终看起来像这样:
" Caption {{{
Content
" }}}