" For each level, contains the regexp that matches at that level only.
let s:levelRegexpDict = {
- \ 1: '\v^(\s*#[^#]|.+\n\=+$)',
- \ 2: '\v^(\s*##[^#]|.+\n-+$)',
- \ 3: '\v^\s*###[^#]',
- \ 4: '\v^\s*####[^#]',
- \ 5: '\v^\s*#####[^#]',
- \ 6: '\v^\s*######[^#]'
+ \ 1: '\v^(#[^#]|.+\n\=+$)',
+ \ 2: '\v^(##[^#]|.+\n-+$)',
+ \ 3: '\v^###[^#]',
+ \ 4: '\v^####[^#]',
+ \ 5: '\v^#####[^#]',
+ \ 6: '\v^######[^#]'
\ }
" Maches any header level of any type.
" This could be deduced from `s:levelRegexpDict`, but it is more
" efficient to have a single regexp for this.
"
-let s:headersRegexp = '\v^(\s*#|.+\n(\=+|-+)$)'
+let s:headersRegexp = '\v^(#|.+\n(\=+|-+)$)'
" Returns the line number of the first header before `line`, called the
" current header.
" Menmonic: Current
call <sid>MapNormVis('<Plug>(Markdown_MoveToCurHeader)', '<sid>Markdown_MoveToCurHeader')
-if ! exists('g:vim_markdown_no_default_key_mappings')
-\ || !g:vim_markdown_no_default_key_mappings
- nmap ]] <Plug>(Markdown_MoveToNextHeader)
- nmap [[ <Plug>(Markdown_MoveToPreviousHeader)
- nmap ][ <Plug>(Markdown_MoveToNextSiblingHeader)
- nmap [] <Plug>(Markdown_MoveToPreviousSiblingHeader)
- nmap ]u <Plug>(Markdown_MoveToParentHeader)
- nmap ]c <Plug>(Markdown_MoveToCurHeader)
+if !get(g:, 'vim_markdown_no_default_key_mappings', 0)
+ nmap <buffer> ]] <Plug>(Markdown_MoveToNextHeader)
+ nmap <buffer> [[ <Plug>(Markdown_MoveToPreviousHeader)
+ nmap <buffer> ][ <Plug>(Markdown_MoveToNextSiblingHeader)
+ nmap <buffer> [] <Plug>(Markdown_MoveToPreviousSiblingHeader)
+ nmap <buffer> ]u <Plug>(Markdown_MoveToParentHeader)
+ nmap <buffer> ]c <Plug>(Markdown_MoveToCurHeader)
- vmap ]] <Plug>(Markdown_MoveToNextHeader)
- vmap [[ <Plug>(Markdown_MoveToPreviousHeader)
- vmap ][ <Plug>(Markdown_MoveToNextSiblingHeader)
- vmap [] <Plug>(Markdown_MoveToPreviousSiblingHeader)
- vmap ]u <Plug>(Markdown_MoveToParentHeader)
- vmap ]c <Plug>(Markdown_MoveToCurHeader)
+ vmap <buffer> ]] <Plug>(Markdown_MoveToNextHeader)
+ vmap <buffer> [[ <Plug>(Markdown_MoveToPreviousHeader)
+ vmap <buffer> ][ <Plug>(Markdown_MoveToNextSiblingHeader)
+ vmap <buffer> [] <Plug>(Markdown_MoveToPreviousSiblingHeader)
+ vmap <buffer> ]u <Plug>(Markdown_MoveToParentHeader)
+ vmap <buffer> ]c <Plug>(Markdown_MoveToCurHeader)
endif
command! -buffer Toc call s:Markdown_Toc()