22
									
								
								LICENSE
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								LICENSE
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,22 @@
 | 
				
			|||||||
 | 
					MIT License
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Copyright (c) 2008-2010 Maxim Kim
 | 
				
			||||||
 | 
					              2013-2017 Daniel Schemala
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Permission is hereby granted, free of charge, to any person obtaining a copy
 | 
				
			||||||
 | 
					of this software and associated documentation files (the "Software"), to deal
 | 
				
			||||||
 | 
					in the Software without restriction, including without limitation the rights
 | 
				
			||||||
 | 
					to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 | 
				
			||||||
 | 
					copies of the Software, and to permit persons to whom the Software is
 | 
				
			||||||
 | 
					furnished to do so, subject to the following conditions:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The above copyright notice and this permission notice shall be included in all
 | 
				
			||||||
 | 
					copies or substantial portions of the Software.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 | 
				
			||||||
 | 
					IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
				
			||||||
 | 
					FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 | 
				
			||||||
 | 
					AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 | 
				
			||||||
 | 
					LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 | 
				
			||||||
 | 
					OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 | 
				
			||||||
 | 
					SOFTWARE.
 | 
				
			||||||
@@ -8,6 +8,13 @@ if exists("g:loaded_vimwiki_auto") || &cp
 | 
				
			|||||||
endif
 | 
					endif
 | 
				
			||||||
let g:loaded_vimwiki_auto = 1
 | 
					let g:loaded_vimwiki_auto = 1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					" s:safesubstitute
 | 
				
			||||||
 | 
					function! s:safesubstitute(text, search, replace, mode) "{{{
 | 
				
			||||||
 | 
					  " Substitute regexp but do not interpret replace
 | 
				
			||||||
 | 
					  let escaped = escape(a:replace, '\&')
 | 
				
			||||||
 | 
					  return substitute(a:text, a:search, escaped, a:mode)
 | 
				
			||||||
 | 
					endfunction " }}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
" s:vimwiki_get_known_syntaxes
 | 
					" s:vimwiki_get_known_syntaxes
 | 
				
			||||||
function! s:vimwiki_get_known_syntaxes() " {{{
 | 
					function! s:vimwiki_get_known_syntaxes() " {{{
 | 
				
			||||||
  " Getting all syntaxes that different wikis could have
 | 
					  " Getting all syntaxes that different wikis could have
 | 
				
			||||||
@@ -465,7 +472,7 @@ function! vimwiki#base#generate_links() "{{{
 | 
				
			|||||||
    let abs_filepath = vimwiki#path#abs_path_of_link(link)
 | 
					    let abs_filepath = vimwiki#path#abs_path_of_link(link)
 | 
				
			||||||
    if !s:is_diary_file(abs_filepath)
 | 
					    if !s:is_diary_file(abs_filepath)
 | 
				
			||||||
      call add(lines, bullet.
 | 
					      call add(lines, bullet.
 | 
				
			||||||
            \ substitute(g:vimwiki_WikiLinkTemplate1, '__LinkUrl__', '\='."'".link."'", ''))
 | 
					            \ s:safesubstitute(g:vimwiki_WikiLinkTemplate1, '__LinkUrl__', link, ''))
 | 
				
			||||||
    endif
 | 
					    endif
 | 
				
			||||||
  endfor
 | 
					  endfor
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -677,13 +684,13 @@ function! s:jump_to_anchor(anchor) "{{{
 | 
				
			|||||||
  let segments = split(anchor, '#', 0)
 | 
					  let segments = split(anchor, '#', 0)
 | 
				
			||||||
  for segment in segments
 | 
					  for segment in segments
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    let anchor_header = substitute(
 | 
					    let anchor_header = s:safesubstitute(
 | 
				
			||||||
          \ g:vimwiki_{VimwikiGet('syntax')}_header_match,
 | 
					          \ g:vimwiki_{VimwikiGet('syntax')}_header_match,
 | 
				
			||||||
          \ '__Header__', "\\='".segment."'", '')
 | 
					          \ '__Header__', segment, '')
 | 
				
			||||||
    let anchor_bold = substitute(g:vimwiki_{VimwikiGet('syntax')}_bold_match,
 | 
					    let anchor_bold = s:safesubstitute(g:vimwiki_{VimwikiGet('syntax')}_bold_match,
 | 
				
			||||||
          \ '__Text__', "\\='".segment."'", '')
 | 
					          \ '__Text__', segment, '')
 | 
				
			||||||
    let anchor_tag = substitute(g:vimwiki_{VimwikiGet('syntax')}_tag_match,
 | 
					    let anchor_tag = s:safesubstitute(g:vimwiki_{VimwikiGet('syntax')}_tag_match,
 | 
				
			||||||
          \ '__Tag__', "\\='".segment."'", '')
 | 
					          \ '__Tag__', segment, '')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if         !search(anchor_tag, 'Wc')
 | 
					    if         !search(anchor_tag, 'Wc')
 | 
				
			||||||
          \ && !search(anchor_header, 'Wc')
 | 
					          \ && !search(anchor_header, 'Wc')
 | 
				
			||||||
@@ -840,7 +847,7 @@ function! vimwiki#base#edit_file(command, filename, anchor, ...) "{{{
 | 
				
			|||||||
  " then
 | 
					  " then
 | 
				
			||||||
  " [[test*file]]...
 | 
					  " [[test*file]]...
 | 
				
			||||||
  " you'll have E77: Too many file names
 | 
					  " you'll have E77: Too many file names
 | 
				
			||||||
  let fname = escape(a:filename, '% *|#')
 | 
					  let fname = escape(a:filename, '% *|#`')
 | 
				
			||||||
  let dir = fnamemodify(a:filename, ":p:h")
 | 
					  let dir = fnamemodify(a:filename, ":p:h")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  let ok = vimwiki#path#mkdir(dir, 1)
 | 
					  let ok = vimwiki#path#mkdir(dir, 1)
 | 
				
			||||||
@@ -1176,8 +1183,8 @@ function! vimwiki#base#update_listing_in_buffer(strings, start_header,
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  " write new listing
 | 
					  " write new listing
 | 
				
			||||||
  let new_header = whitespaces_in_first_line
 | 
					  let new_header = whitespaces_in_first_line
 | 
				
			||||||
        \ . substitute(g:vimwiki_rxH1_Template,
 | 
					        \ . s:safesubstitute(g:vimwiki_rxH1_Template,
 | 
				
			||||||
        \ '__Header__', '\='."'".a:start_header."'", '')
 | 
					        \ '__Header__', a:start_header, '')
 | 
				
			||||||
  call append(start_lnum - 1, new_header)
 | 
					  call append(start_lnum - 1, new_header)
 | 
				
			||||||
  let start_lnum += 1
 | 
					  let start_lnum += 1
 | 
				
			||||||
  let lines_diff += 1 + len(a:strings)
 | 
					  let lines_diff += 1 + len(a:strings)
 | 
				
			||||||
@@ -1273,7 +1280,7 @@ function! vimwiki#base#follow_link(split, reuse, move_cursor, ...) "{{{
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
      " remove the extension from the filename if exists, because non-vimwiki
 | 
					      " remove the extension from the filename if exists, because non-vimwiki
 | 
				
			||||||
      " markdown files usually include the extension in links
 | 
					      " markdown files usually include the extension in links
 | 
				
			||||||
      let lnk = substitute(lnk, VimwikiGet('ext').'$', '', '')
 | 
					      let lnk = substitute(lnk, '\'.VimwikiGet('ext').'$', '', '')
 | 
				
			||||||
    endif
 | 
					    endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    let current_tab_page = tabpagenr()
 | 
					    let current_tab_page = tabpagenr()
 | 
				
			||||||
@@ -1326,7 +1333,13 @@ function! vimwiki#base#goto_index(wnum, ...) "{{{
 | 
				
			|||||||
  endif
 | 
					  endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  if a:0
 | 
					  if a:0
 | 
				
			||||||
 | 
					    if a:1 == 1
 | 
				
			||||||
      let cmd = 'tabedit'
 | 
					      let cmd = 'tabedit'
 | 
				
			||||||
 | 
					    elseif a:1 == 2
 | 
				
			||||||
 | 
					      let cmd = 'split'
 | 
				
			||||||
 | 
					    elseif a:1 == 3
 | 
				
			||||||
 | 
					      let cmd = 'vsplit'
 | 
				
			||||||
 | 
					    endif
 | 
				
			||||||
  else
 | 
					  else
 | 
				
			||||||
    let cmd = 'edit'
 | 
					    let cmd = 'edit'
 | 
				
			||||||
  endif
 | 
					  endif
 | 
				
			||||||
@@ -1826,9 +1839,9 @@ function! vimwiki#base#table_of_contents(create)
 | 
				
			|||||||
  for [lvl, link, desc] in headers
 | 
					  for [lvl, link, desc] in headers
 | 
				
			||||||
    let esc_link = substitute(link, "'", "''", 'g')
 | 
					    let esc_link = substitute(link, "'", "''", 'g')
 | 
				
			||||||
    let esc_desc = substitute(desc, "'", "''", 'g')
 | 
					    let esc_desc = substitute(desc, "'", "''", 'g')
 | 
				
			||||||
    let link = substitute(g:vimwiki_WikiLinkTemplate2, '__LinkUrl__',
 | 
					    let link = s:safesubstitute(g:vimwiki_WikiLinkTemplate2, '__LinkUrl__',
 | 
				
			||||||
          \ '\='."'".'#'.esc_link."'", '')
 | 
					          \ '#'.esc_link, '')
 | 
				
			||||||
    let link = substitute(link, '__LinkDescription__', '\='."'".esc_desc."'", '')
 | 
					    let link = s:safesubstitute(link, '__LinkDescription__', esc_desc, '')
 | 
				
			||||||
    call add(lines, startindent.repeat(indentstring, lvl-1).bullet.link)
 | 
					    call add(lines, startindent.repeat(indentstring, lvl-1).bullet.link)
 | 
				
			||||||
  endfor
 | 
					  endfor
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -1849,13 +1862,13 @@ endfunction
 | 
				
			|||||||
function! vimwiki#base#apply_template(template, rxUrl, rxDesc, rxStyle) "{{{
 | 
					function! vimwiki#base#apply_template(template, rxUrl, rxDesc, rxStyle) "{{{
 | 
				
			||||||
  let lnk = a:template
 | 
					  let lnk = a:template
 | 
				
			||||||
  if a:rxUrl != ""
 | 
					  if a:rxUrl != ""
 | 
				
			||||||
    let lnk = substitute(lnk, '__LinkUrl__', '\='."'".a:rxUrl."'", 'g')
 | 
					    let lnk = s:safesubstitute(lnk, '__LinkUrl__', a:rxUrl, 'g')
 | 
				
			||||||
  endif
 | 
					  endif
 | 
				
			||||||
  if a:rxDesc != ""
 | 
					  if a:rxDesc != ""
 | 
				
			||||||
    let lnk = substitute(lnk, '__LinkDescription__', '\='."'".a:rxDesc."'", 'g')
 | 
					    let lnk = s:safesubstitute(lnk, '__LinkDescription__', a:rxDesc, 'g')
 | 
				
			||||||
  endif
 | 
					  endif
 | 
				
			||||||
  if a:rxStyle != ""
 | 
					  if a:rxStyle != ""
 | 
				
			||||||
    let lnk = substitute(lnk, '__LinkStyle__', '\='."'".a:rxStyle."'", 'g')
 | 
					    let lnk = s:safesubstitute(lnk, '__LinkStyle__', a:rxStyle, 'g')
 | 
				
			||||||
  endif
 | 
					  endif
 | 
				
			||||||
  return lnk
 | 
					  return lnk
 | 
				
			||||||
endfunction " }}}
 | 
					endfunction " }}}
 | 
				
			||||||
@@ -1894,8 +1907,8 @@ function! vimwiki#base#normalize_link_helper(str, rxUrl, rxDesc, template) " {{{
 | 
				
			|||||||
  if descr == ""
 | 
					  if descr == ""
 | 
				
			||||||
    let descr = s:clean_url(url)
 | 
					    let descr = s:clean_url(url)
 | 
				
			||||||
  endif
 | 
					  endif
 | 
				
			||||||
  let lnk = substitute(template, '__LinkDescription__', '\="'.descr.'"', '')
 | 
					  let lnk = s:safesubstitute(template, '__LinkDescription__', descr, '')
 | 
				
			||||||
  let lnk = substitute(lnk, '__LinkUrl__', '\="'.url.'"', '')
 | 
					  let lnk = s:safesubstitute(lnk, '__LinkUrl__', url, '')
 | 
				
			||||||
  return lnk
 | 
					  return lnk
 | 
				
			||||||
endfunction " }}}
 | 
					endfunction " }}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -1903,7 +1916,7 @@ endfunction " }}}
 | 
				
			|||||||
function! vimwiki#base#normalize_imagelink_helper(str, rxUrl, rxDesc, rxStyle, template) "{{{
 | 
					function! vimwiki#base#normalize_imagelink_helper(str, rxUrl, rxDesc, rxStyle, template) "{{{
 | 
				
			||||||
  let lnk = vimwiki#base#normalize_link_helper(a:str, a:rxUrl, a:rxDesc, a:template)
 | 
					  let lnk = vimwiki#base#normalize_link_helper(a:str, a:rxUrl, a:rxDesc, a:template)
 | 
				
			||||||
  let style = matchstr(a:str, a:rxStyle)
 | 
					  let style = matchstr(a:str, a:rxStyle)
 | 
				
			||||||
  let lnk = substitute(lnk, '__LinkStyle__', '\="'.style.'"', '')
 | 
					  let lnk = s:safesubstitute(lnk, '__LinkStyle__', style, '')
 | 
				
			||||||
  return lnk
 | 
					  return lnk
 | 
				
			||||||
endfunction " }}}
 | 
					endfunction " }}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -1995,8 +2008,8 @@ function! s:normalize_link_syntax_v() " {{{
 | 
				
			|||||||
    if s:is_diary_file(expand("%:p"))
 | 
					    if s:is_diary_file(expand("%:p"))
 | 
				
			||||||
      let sub = s:normalize_link_in_diary(@")
 | 
					      let sub = s:normalize_link_in_diary(@")
 | 
				
			||||||
    else
 | 
					    else
 | 
				
			||||||
      let sub = substitute(g:vimwiki_WikiLinkTemplate1,
 | 
					      let sub = s:safesubstitute(g:vimwiki_WikiLinkTemplate1,
 | 
				
			||||||
            \ '__LinkUrl__', '\=' . "'" . @" . "'", '')
 | 
					            \ '__LinkUrl__', @", '')
 | 
				
			||||||
    endif
 | 
					    endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    " Put substitution in register " and change text
 | 
					    " Put substitution in register " and change text
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -65,7 +65,7 @@ fun! s:read_captions(files) "{{{
 | 
				
			|||||||
  let result = {}
 | 
					  let result = {}
 | 
				
			||||||
  for fl in a:files
 | 
					  for fl in a:files
 | 
				
			||||||
    " remove paths and extensions
 | 
					    " remove paths and extensions
 | 
				
			||||||
    let fl_key = fnamemodify(fl, ':t:r')
 | 
					    let fl_key = substitute(fnamemodify(fl, ':t'), VimwikiGet('ext').'$', '', '')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if filereadable(fl)
 | 
					    if filereadable(fl)
 | 
				
			||||||
      for line in readfile(fl, '', s:vimwiki_max_scan_for_caption)
 | 
					      for line in readfile(fl, '', s:vimwiki_max_scan_for_caption)
 | 
				
			||||||
@@ -174,10 +174,15 @@ function! vimwiki#diary#make_note(wnum, ...) "{{{
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
  call vimwiki#path#mkdir(VimwikiGet('path', idx).VimwikiGet('diary_rel_path', idx))
 | 
					  call vimwiki#path#mkdir(VimwikiGet('path', idx).VimwikiGet('diary_rel_path', idx))
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  if a:0 && a:1 == 1
 | 
					 | 
				
			||||||
    let cmd = 'tabedit'
 | 
					 | 
				
			||||||
  else
 | 
					 | 
				
			||||||
  let cmd = 'edit'
 | 
					  let cmd = 'edit'
 | 
				
			||||||
 | 
					  if a:0
 | 
				
			||||||
 | 
					    if a:1 == 1
 | 
				
			||||||
 | 
					      let cmd = 'tabedit'
 | 
				
			||||||
 | 
					    elseif a:1 == 2
 | 
				
			||||||
 | 
					      let cmd = 'split'
 | 
				
			||||||
 | 
					    elseif a:1 == 3
 | 
				
			||||||
 | 
					      let cmd = 'vsplit'
 | 
				
			||||||
 | 
					    endif
 | 
				
			||||||
  endif
 | 
					  endif
 | 
				
			||||||
  if a:0>1
 | 
					  if a:0>1
 | 
				
			||||||
    let link = 'diary:'.a:2
 | 
					    let link = 'diary:'.a:2
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -876,6 +876,8 @@ function! s:process_tag_list(line, lists) "{{{
 | 
				
			|||||||
      let n = len(g:vimwiki_listsyms_list)
 | 
					      let n = len(g:vimwiki_listsyms_list)
 | 
				
			||||||
      if completion == 0
 | 
					      if completion == 0
 | 
				
			||||||
        let st_tag = '<li class="done0">'
 | 
					        let st_tag = '<li class="done0">'
 | 
				
			||||||
 | 
					      elseif completion == -1 && chk[1] == g:vimwiki_listsym_rejected
 | 
				
			||||||
 | 
					        let st_tag = '<li class="rejected">'
 | 
				
			||||||
      elseif completion > 0 && completion < n
 | 
					      elseif completion > 0 && completion < n
 | 
				
			||||||
        let completion = float2nr(round(completion / (n-1.0) * 3.0 + 0.5 ))
 | 
					        let completion = float2nr(round(completion / (n-1.0) * 3.0 + 0.5 ))
 | 
				
			||||||
        let st_tag = '<li class="done'.completion.'">'
 | 
					        let st_tag = '<li class="done'.completion.'">'
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -693,6 +693,9 @@ function! s:get_rate(item) "{{{
 | 
				
			|||||||
    return -1
 | 
					    return -1
 | 
				
			||||||
  endif
 | 
					  endif
 | 
				
			||||||
  let state = a:item.cb
 | 
					  let state = a:item.cb
 | 
				
			||||||
 | 
					  if state == g:vimwiki_listsym_rejected
 | 
				
			||||||
 | 
					    return -1
 | 
				
			||||||
 | 
					  endif
 | 
				
			||||||
  let n=len(g:vimwiki_listsyms_list)
 | 
					  let n=len(g:vimwiki_listsyms_list)
 | 
				
			||||||
  return index(g:vimwiki_listsyms_list, state) * 100/(n-1)
 | 
					  return index(g:vimwiki_listsyms_list, state) * 100/(n-1)
 | 
				
			||||||
endfunction "}}}
 | 
					endfunction "}}}
 | 
				
			||||||
@@ -735,6 +738,8 @@ function! s:rate_to_state(rate) "{{{
 | 
				
			|||||||
    let state = g:vimwiki_listsyms_list[n-1]
 | 
					    let state = g:vimwiki_listsyms_list[n-1]
 | 
				
			||||||
  elseif a:rate == 0
 | 
					  elseif a:rate == 0
 | 
				
			||||||
    let state = g:vimwiki_listsyms_list[0]
 | 
					    let state = g:vimwiki_listsyms_list[0]
 | 
				
			||||||
 | 
					  elseif a:rate == -1
 | 
				
			||||||
 | 
					    let state = g:vimwiki_listsym_rejected
 | 
				
			||||||
  else
 | 
					  else
 | 
				
			||||||
    let index = float2nr(ceil(a:rate/100.0*(n-2)))
 | 
					    let index = float2nr(ceil(a:rate/100.0*(n-2)))
 | 
				
			||||||
    let state = g:vimwiki_listsyms_list[index]
 | 
					    let state = g:vimwiki_listsyms_list[index]
 | 
				
			||||||
@@ -759,8 +764,11 @@ function! s:update_state(item) "{{{
 | 
				
			|||||||
      break
 | 
					      break
 | 
				
			||||||
    endif
 | 
					    endif
 | 
				
			||||||
    if child_item.cb != ''
 | 
					    if child_item.cb != ''
 | 
				
			||||||
 | 
					      let rate = s:get_rate(child_item)
 | 
				
			||||||
 | 
					      if rate != -1
 | 
				
			||||||
        let count_children_with_cb += 1
 | 
					        let count_children_with_cb += 1
 | 
				
			||||||
      let sum_children_rate += s:get_rate(child_item)
 | 
					        let sum_children_rate += rate
 | 
				
			||||||
 | 
					      endif
 | 
				
			||||||
    endif
 | 
					    endif
 | 
				
			||||||
    let child_item = s:get_next_child_item(a:item, child_item)
 | 
					    let child_item = s:get_next_child_item(a:item, child_item)
 | 
				
			||||||
  endwhile
 | 
					  endwhile
 | 
				
			||||||
@@ -835,6 +843,46 @@ function! s:change_cb(from_line, to_line, new_rate) "{{{
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
endfunction "}}}
 | 
					endfunction "}}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					"Toggles checkbox between two states in the lines of the given range,
 | 
				
			||||||
 | 
					"creates chceckboxes if there aren't any.
 | 
				
			||||||
 | 
					function! s:toggle_create_cb(from_line, to_line, state1, state2) "{{{
 | 
				
			||||||
 | 
					  let from_item = s:get_corresponding_item(a:from_line)
 | 
				
			||||||
 | 
					  if from_item.type == 0
 | 
				
			||||||
 | 
					    return
 | 
				
			||||||
 | 
					  endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  if from_item.cb == ''
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    "if from_line has no CB, make a CB in every selected line
 | 
				
			||||||
 | 
					    let parent_items_of_lines = []
 | 
				
			||||||
 | 
					    for cur_ln in range(from_item.lnum, a:to_line)
 | 
				
			||||||
 | 
					      let cur_item = s:get_item(cur_ln)
 | 
				
			||||||
 | 
					      let success = s:create_cb(cur_item)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      if success
 | 
				
			||||||
 | 
					        let cur_parent_item = s:get_parent(cur_item)
 | 
				
			||||||
 | 
					        if index(parent_items_of_lines, cur_parent_item) == -1
 | 
				
			||||||
 | 
					          call insert(parent_items_of_lines, cur_parent_item)
 | 
				
			||||||
 | 
					        endif
 | 
				
			||||||
 | 
					      endif
 | 
				
			||||||
 | 
					    endfor
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    for parent_item in parent_items_of_lines
 | 
				
			||||||
 | 
					      call s:update_state(parent_item)
 | 
				
			||||||
 | 
					    endfor
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  else
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    "if from_line has CB, toggle it and set all siblings to the same new state
 | 
				
			||||||
 | 
					    let rate_first_line = s:get_rate(from_item)
 | 
				
			||||||
 | 
					    let new_rate = rate_first_line == a:state1 ? a:state2 : a:state1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    call s:change_cb(a:from_line, a:to_line, new_rate)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					endfunction "}}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
"Decrement checkbox between [ ] and [X]
 | 
					"Decrement checkbox between [ ] and [X]
 | 
				
			||||||
"in the lines of the given range
 | 
					"in the lines of the given range
 | 
				
			||||||
function! vimwiki#lst#decrement_cb(from_line, to_line) "{{{
 | 
					function! vimwiki#lst#decrement_cb(from_line, to_line) "{{{
 | 
				
			||||||
@@ -872,41 +920,13 @@ endfunction "}}}
 | 
				
			|||||||
"Toggles checkbox between [ ] and [X] or creates one
 | 
					"Toggles checkbox between [ ] and [X] or creates one
 | 
				
			||||||
"in the lines of the given range
 | 
					"in the lines of the given range
 | 
				
			||||||
function! vimwiki#lst#toggle_cb(from_line, to_line) "{{{
 | 
					function! vimwiki#lst#toggle_cb(from_line, to_line) "{{{
 | 
				
			||||||
  let from_item = s:get_corresponding_item(a:from_line)
 | 
					  return s:toggle_create_cb(a:from_line, a:to_line, 100, 0)
 | 
				
			||||||
  if from_item.type == 0
 | 
					endfunction "}}}
 | 
				
			||||||
    return
 | 
					 | 
				
			||||||
  endif
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  if from_item.cb == ''
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    "if from_line has no CB, make a CB in every selected line
 | 
					 | 
				
			||||||
    let parent_items_of_lines = []
 | 
					 | 
				
			||||||
    for cur_ln in range(from_item.lnum, a:to_line)
 | 
					 | 
				
			||||||
      let cur_item = s:get_item(cur_ln)
 | 
					 | 
				
			||||||
      let success = s:create_cb(cur_item)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      if success
 | 
					 | 
				
			||||||
        let cur_parent_item = s:get_parent(cur_item)
 | 
					 | 
				
			||||||
        if index(parent_items_of_lines, cur_parent_item) == -1
 | 
					 | 
				
			||||||
          call insert(parent_items_of_lines, cur_parent_item)
 | 
					 | 
				
			||||||
        endif
 | 
					 | 
				
			||||||
      endif
 | 
					 | 
				
			||||||
    endfor
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    for parent_item in parent_items_of_lines
 | 
					 | 
				
			||||||
      call s:update_state(parent_item)
 | 
					 | 
				
			||||||
    endfor
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  else
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    "if from_line has CB, toggle it and set all siblings to the same new state
 | 
					 | 
				
			||||||
    let rate_first_line = s:get_rate(from_item)
 | 
					 | 
				
			||||||
    let new_rate = rate_first_line == 100 ? 0 : 100
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    call s:change_cb(a:from_line, a:to_line, new_rate)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  endif
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					"Toggles checkbox between [ ] and [-] or creates one
 | 
				
			||||||
 | 
					"in the lines of the given range
 | 
				
			||||||
 | 
					function! vimwiki#lst#toggle_rejected_cb(from_line, to_line) "{{{
 | 
				
			||||||
 | 
					  return s:toggle_create_cb(a:from_line, a:to_line, -1, 0)
 | 
				
			||||||
endfunction "}}}
 | 
					endfunction "}}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
function! vimwiki#lst#remove_cb(first_line, last_line) "{{{
 | 
					function! vimwiki#lst#remove_cb(first_line, last_line) "{{{
 | 
				
			||||||
@@ -1553,6 +1573,10 @@ function! vimwiki#lst#setup_marker_infos() "{{{
 | 
				
			|||||||
  else
 | 
					  else
 | 
				
			||||||
    "regex that matches nothing
 | 
					    "regex that matches nothing
 | 
				
			||||||
    let g:vimwiki_rxListNumber = '$^'
 | 
					    let g:vimwiki_rxListNumber = '$^'
 | 
				
			||||||
 | 
					  endif
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  "the user can set the listsyms as string, but vimwiki needs a list
 | 
				
			||||||
 | 
					  let g:vimwiki_listsyms_list = split(g:vimwiki_listsyms, '\zs')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  if match(g:vimwiki_listsyms, g:vimwiki_listsym_rejected) != -1
 | 
					  if match(g:vimwiki_listsyms, g:vimwiki_listsym_rejected) != -1
 | 
				
			||||||
    echomsg "Warning: g:vimwiki_listsyms and g:vimwiki_listsym_rejected overlap"
 | 
					    echomsg "Warning: g:vimwiki_listsyms and g:vimwiki_listsym_rejected overlap"
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -6,6 +6,13 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
" MISC helper functions {{{
 | 
					" MISC helper functions {{{
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					" s:safesubstitute
 | 
				
			||||||
 | 
					function! s:safesubstitute(text, search, replace, mode) "{{{
 | 
				
			||||||
 | 
					  " Substitute regexp but do not interpret replace
 | 
				
			||||||
 | 
					  let escaped = escape(a:replace, '\&')
 | 
				
			||||||
 | 
					  return substitute(a:text, a:search, escaped, a:mode)
 | 
				
			||||||
 | 
					endfunction " }}}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
" vimwiki#markdown_base#reset_mkd_refs
 | 
					" vimwiki#markdown_base#reset_mkd_refs
 | 
				
			||||||
function! vimwiki#markdown_base#reset_mkd_refs() "{{{
 | 
					function! vimwiki#markdown_base#reset_mkd_refs() "{{{
 | 
				
			||||||
  call VimwikiClear('markdown_refs')
 | 
					  call VimwikiClear('markdown_refs')
 | 
				
			||||||
@@ -139,8 +146,8 @@ function! s:normalize_link_syntax_v() " {{{
 | 
				
			|||||||
  try
 | 
					  try
 | 
				
			||||||
    norm! gvy
 | 
					    norm! gvy
 | 
				
			||||||
    let visual_selection = @"
 | 
					    let visual_selection = @"
 | 
				
			||||||
    let link = substitute(g:vimwiki_Weblink1Template, '__LinkUrl__', '\='."'".visual_selection."'", '')
 | 
					    let link = Safesubstitute(g:vimwiki_Weblink1Template, '__LinkUrl__', visual_selection, '')
 | 
				
			||||||
    let link = substitute(link, '__LinkDescription__', '\='."'".visual_selection."'", '')
 | 
					    let link = Safesubstitute(link, '__LinkDescription__', visual_selection, '')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    call setreg('"', link, 'v')
 | 
					    call setreg('"', link, 'v')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -27,6 +27,13 @@ del {text-decoration: line-through; color: #777777;}
 | 
				
			|||||||
.tag {background-color: #eeeeee; font-family: monospace; padding: 2px;}
 | 
					.tag {background-color: #eeeeee; font-family: monospace; padding: 2px;}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* classes for items of todo lists */
 | 
					/* classes for items of todo lists */
 | 
				
			||||||
 | 
					.rejected {
 | 
				
			||||||
 | 
					    /* list-style: none; */
 | 
				
			||||||
 | 
					    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAMAAAAMCGV4AAAACXBIWXMAAADFAAAAxQEdzbqoAAAAB3RJTUUH4QgEFhAtuWgv9wAAAPZQTFRFmpqam5iYnJaWnJeXnpSUn5OTopCQpoqKpouLp4iIqIiIrYCAt3V1vW1tv2xsmZmZmpeXnpKS/x4e/x8f/yAg/yIi/yQk/yUl/yYm/ygo/ykp/yws/zAw/zIy/zMz/zQ0/zU1/zY2/zw8/0BA/0ZG/0pK/1FR/1JS/1NT/1RU/1VV/1ZW/1dX/1pa/15e/19f/2Zm/2lp/21t/25u/3R0/3p6/4CA/4GB/4SE/4iI/46O/4+P/52d/6am/6ur/66u/7Oz/7S0/7e3/87O/9fX/9zc/93d/+Dg/+vr/+3t/+/v//Dw//Ly//X1//f3//n5//z8////gzaKowAAAA90Uk5T/Pz8/Pz8/Pz8/Pz8/f39ppQKWQAAAAFiS0dEEnu8bAAAAACuSURBVAhbPY9ZF4FQFEZPSKbIMmWep4gMGTKLkIv6/3/GPbfF97b3w17rA0kQOPgvAeHW6uJ6+5h7HqLdwowgOzejXRXBdx6UdSru216xuOMBHHNU0clTzeSUA6EhF8V8kqroluMiU6HKcuf4phGPr1o2q9kYZWwNq1qfRRmTaXpqsyjj17KkWCxKBUBgXWueHIyiAIg18gsse4KHkLF5IKIY10WQgv7fOy4ST34BRiopZ8WLNrgAAAAASUVORK5CYII=);
 | 
				
			||||||
 | 
					    background-repeat: no-repeat;
 | 
				
			||||||
 | 
					    background-position: 0 .2em;
 | 
				
			||||||
 | 
					    padding-left: 1.5em;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
.done0 {
 | 
					.done0 {
 | 
				
			||||||
    /* list-style: none; */
 | 
					    /* list-style: none; */
 | 
				
			||||||
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAAxQAAAMUBHc26qAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAA7SURBVCiR7dMxEgAgCANBI3yVRzF5KxNbW6wsuH7LQ2YKQK1mkswBVERYF5Os3UV3gwd/jF2SkXy66gAZkxS6BniubAAAAABJRU5ErkJggg==);
 | 
					    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAPCAYAAAA71pVKAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAAxQAAAMUBHc26qAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAA7SURBVCiR7dMxEgAgCANBI3yVRzF5KxNbW6wsuH7LQ2YKQK1mkswBVERYF5Os3UV3gwd/jF2SkXy66gAZkxS6BniubAAAAABJRU5ErkJggg==);
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -455,6 +455,13 @@ gLI                     Change the symbol of the current list to
 | 
				
			|||||||
                        To remap: >
 | 
					                        To remap: >
 | 
				
			||||||
                        noremap glo :VimwikiChangeSymbolTo I)<CR>
 | 
					                        noremap glo :VimwikiChangeSymbolTo I)<CR>
 | 
				
			||||||
                        noremap glO :VimwikiChangeSymbolInListTo I)<CR>
 | 
					                        noremap glO :VimwikiChangeSymbolInListTo I)<CR>
 | 
				
			||||||
 | 
					<
 | 
				
			||||||
 | 
					                        *vimwiki_glx*
 | 
				
			||||||
 | 
					glx                     Toggle checkbox of a list item disabled/off.
 | 
				
			||||||
 | 
					                        Maps to |:VimwikiToggleRejectedListItem|.
 | 
				
			||||||
 | 
					                        See |vimwiki-todo-lists|.
 | 
				
			||||||
 | 
					                        To remap: >
 | 
				
			||||||
 | 
					                        :map <Leader>tx <Plug>VimwikiToggleRejectedListItem
 | 
				
			||||||
<
 | 
					<
 | 
				
			||||||
                        *vimwiki_gqq*  *vimwiki_gww*
 | 
					                        *vimwiki_gqq*  *vimwiki_gww*
 | 
				
			||||||
gqq                     Format table. If you made some changes to a table
 | 
					gqq                     Format table. If you made some changes to a table
 | 
				
			||||||
@@ -656,6 +663,10 @@ Vimwiki file.
 | 
				
			|||||||
    Toggle checkbox of a list item on/off.
 | 
					    Toggle checkbox of a list item on/off.
 | 
				
			||||||
    See |vimwiki-todo-lists|.
 | 
					    See |vimwiki-todo-lists|.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					*:VimwikiToggleRejectedListItem*
 | 
				
			||||||
 | 
					    Toggle checkbox of a list item disabled/off.
 | 
				
			||||||
 | 
					    See |vimwiki-todo-lists|.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
*:VimwikiListChangeLevel* CMD
 | 
					*:VimwikiListChangeLevel* CMD
 | 
				
			||||||
    Change the nesting level, or symbol, for a single-line list item.
 | 
					    Change the nesting level, or symbol, for a single-line list item.
 | 
				
			||||||
    CMD may be ">>" or "<<" to change the indentation of the item, or
 | 
					    CMD may be ">>" or "<<" to change the indentation of the item, or
 | 
				
			||||||
@@ -1233,14 +1244,9 @@ LaTeX code).
 | 
				
			|||||||
Note: the highlighting in Vim is automatic. For the rendering in HTML, you
 | 
					Note: the highlighting in Vim is automatic. For the rendering in HTML, you
 | 
				
			||||||
have two alternative options:
 | 
					have two alternative options:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
1. using the MathJax server for rendering (needs internet connection).
 | 
					1. installing MathJax locally (Recommended: faster, no internet required).
 | 
				
			||||||
Add to your HTML template the following line:
 | 
					Choose a folder on your hard drive and save MathJax in it. Then add to your
 | 
				
			||||||
 | 
					HTML template the following line:
 | 
				
			||||||
<script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
2. installing MathJax locally (faster, no internet required). Choose a
 | 
					 | 
				
			||||||
folder on your hard drive and save MathJax in it. Then add to your HTML
 | 
					 | 
				
			||||||
template the following line:
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
<script type="text/javascript" src="<mathjax_folder>/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
 | 
					<script type="text/javascript" src="<mathjax_folder>/MathJax.js?config=TeX-AMS-MML_HTMLorMML"></script>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -1255,6 +1261,11 @@ template folder. For instance, a sensible folder structure could be:
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
In this case, <mathjax_folder> would be "../mathjax" (without quotes).
 | 
					In this case, <mathjax_folder> would be "../mathjax" (without quotes).
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					2. Loading MathJax from a CDN-server (needs internet connection).
 | 
				
			||||||
 | 
					Add to your HTML template the following line:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.2/config/TeX-AMS-MML_HTMLorMML.js"></script>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
------------------------------------------------------------------------------
 | 
					------------------------------------------------------------------------------
 | 
				
			||||||
5.9. Blockquotes                                  *vimwiki-syntax-blockquotes*
 | 
					5.9. Blockquotes                                  *vimwiki-syntax-blockquotes*
 | 
				
			||||||
@@ -1625,6 +1636,10 @@ Use gl<Space> (see |vimwiki_gl<Space>|) to remove a single checkbox and
 | 
				
			|||||||
gL<Space> (see |vimwiki_gL<Space>|) to remove all checkboxes of the list the
 | 
					gL<Space> (see |vimwiki_gL<Space>|) to remove all checkboxes of the list the
 | 
				
			||||||
cursor is in.
 | 
					cursor is in.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					You can mark an item as rejected ("won't do") with
 | 
				
			||||||
 | 
					|vimwiki_glx|. A rejected item will not influence the status of it's
 | 
				
			||||||
 | 
					parents.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
==============================================================================
 | 
					==============================================================================
 | 
				
			||||||
9. Tables                                                     *vimwiki-tables*
 | 
					9. Tables                                                     *vimwiki-tables*
 | 
				
			||||||
@@ -2349,6 +2364,19 @@ You can set it to some more fancy symbols like this:
 | 
				
			|||||||
   let g:vimwiki_listsyms = '✗○◐●✓'
 | 
					   let g:vimwiki_listsyms = '✗○◐●✓'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					------------------------------------------------------------------------------
 | 
				
			||||||
 | 
					*g:vimwiki_listsym_rejected*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Character that is used to show that an item of a todo list will not be done.
 | 
				
			||||||
 | 
					Default value is '-'.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					The character used here may not be part of g:vimwiki_listsyms.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					You can set it to some more fancy symbols like this:
 | 
				
			||||||
 | 
					>
 | 
				
			||||||
 | 
					   let g:vimwiki_listsym_rejected = '✗'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
------------------------------------------------------------------------------
 | 
					------------------------------------------------------------------------------
 | 
				
			||||||
*g:vimwiki_use_mouse*
 | 
					*g:vimwiki_use_mouse*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -2858,6 +2886,19 @@ Contributors and their Github usernames in roughly chronological order:
 | 
				
			|||||||
    - @wangzq
 | 
					    - @wangzq
 | 
				
			||||||
    - Jinzhou Zhang (@lotabout)
 | 
					    - Jinzhou Zhang (@lotabout)
 | 
				
			||||||
    - Michael Riley (@optik-aper)
 | 
					    - Michael Riley (@optik-aper)
 | 
				
			||||||
 | 
					    - Irfan Sharif (@irfansharif)
 | 
				
			||||||
 | 
					    - John Conroy (@jconroy77)
 | 
				
			||||||
 | 
					    - Christian Rondeau (@christianrondeau)
 | 
				
			||||||
 | 
					    - Alex Thorne (@thornecc)
 | 
				
			||||||
 | 
					    - Shafqat Bhuiyan (@priomsrb)
 | 
				
			||||||
 | 
					    - Bradley Cicenas (@bcicen)
 | 
				
			||||||
 | 
					    - Michael Thessel (@MichaelThessel)
 | 
				
			||||||
 | 
					    - Michael F. Schönitzer (@nudin)
 | 
				
			||||||
 | 
					    - @sqlwwx
 | 
				
			||||||
 | 
					    - Guilherme Salazar (@salazar)
 | 
				
			||||||
 | 
					    - Daniel Trnka (@trnila)
 | 
				
			||||||
 | 
					    - Yuchen Pei (@ycpei)
 | 
				
			||||||
 | 
					    - @maqiv
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
==============================================================================
 | 
					==============================================================================
 | 
				
			||||||
@@ -3105,10 +3146,11 @@ http://code.google.com/p/vimwiki/issues/list
 | 
				
			|||||||
==============================================================================
 | 
					==============================================================================
 | 
				
			||||||
16. License                                                  *vimwiki-license*
 | 
					16. License                                                  *vimwiki-license*
 | 
				
			||||||
 | 
					
 | 
				
			||||||
The MIT Licence
 | 
					The MIT License
 | 
				
			||||||
http://www.opensource.org/licenses/mit-license.php
 | 
					http://www.opensource.org/licenses/mit-license.php
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Copyright (c) 2008-2010 Maxim Kim
 | 
					Copyright (c) 2008-2010 Maxim Kim
 | 
				
			||||||
 | 
					              2013-2017 Daniel Schemala
 | 
				
			||||||
 | 
					
 | 
				
			||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
 | 
					Permission is hereby granted, free of charge, to any person obtaining a copy
 | 
				
			||||||
of this software and associated documentation files (the "Software"), to deal
 | 
					of this software and associated documentation files (the "Software"), to deal
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -295,6 +295,7 @@ command! -buffer -range -nargs=1 VimwikiChangeSymbolTo call vimwiki#lst#change_m
 | 
				
			|||||||
command! -buffer -range -nargs=1 VimwikiListChangeSymbolI call vimwiki#lst#change_marker(<line1>, <line2>, <f-args>, 'i')
 | 
					command! -buffer -range -nargs=1 VimwikiListChangeSymbolI call vimwiki#lst#change_marker(<line1>, <line2>, <f-args>, 'i')
 | 
				
			||||||
command! -buffer -nargs=1 VimwikiChangeSymbolInListTo call vimwiki#lst#change_marker_in_list(<f-args>)
 | 
					command! -buffer -nargs=1 VimwikiChangeSymbolInListTo call vimwiki#lst#change_marker_in_list(<f-args>)
 | 
				
			||||||
command! -buffer -range VimwikiToggleListItem call vimwiki#lst#toggle_cb(<line1>, <line2>)
 | 
					command! -buffer -range VimwikiToggleListItem call vimwiki#lst#toggle_cb(<line1>, <line2>)
 | 
				
			||||||
 | 
					command! -buffer -range VimwikiToggleRejectedListItem call vimwiki#lst#toggle_rejected_cb(<line1>, <line2>)
 | 
				
			||||||
command! -buffer -range VimwikiIncrementListItem call vimwiki#lst#increment_cb(<line1>, <line2>)
 | 
					command! -buffer -range VimwikiIncrementListItem call vimwiki#lst#increment_cb(<line1>, <line2>)
 | 
				
			||||||
command! -buffer -range VimwikiDecrementListItem call vimwiki#lst#decrement_cb(<line1>, <line2>)
 | 
					command! -buffer -range VimwikiDecrementListItem call vimwiki#lst#decrement_cb(<line1>, <line2>)
 | 
				
			||||||
command! -buffer -range -nargs=+ VimwikiListChangeLvl call vimwiki#lst#change_level(<line1>, <line2>, <f-args>)
 | 
					command! -buffer -range -nargs=+ VimwikiListChangeLvl call vimwiki#lst#change_level(<line1>, <line2>, <f-args>)
 | 
				
			||||||
@@ -442,10 +443,18 @@ if !hasmapto('<Plug>VimwikiToggleListItem')
 | 
				
			|||||||
    vmap <silent><buffer> <C-@> <Plug>VimwikiToggleListItem
 | 
					    vmap <silent><buffer> <C-@> <Plug>VimwikiToggleListItem
 | 
				
			||||||
  endif
 | 
					  endif
 | 
				
			||||||
endif
 | 
					endif
 | 
				
			||||||
 | 
					if !hasmapto('<Plug>VimwikiToggleRejectedListItem')
 | 
				
			||||||
 | 
					  nmap <silent><buffer> glx <Plug>VimwikiToggleRejectedListItem
 | 
				
			||||||
 | 
					  vmap <silent><buffer> glx <Plug>VimwikiToggleRejectedListItem
 | 
				
			||||||
 | 
					endif
 | 
				
			||||||
nnoremap <silent><script><buffer>
 | 
					nnoremap <silent><script><buffer>
 | 
				
			||||||
      \ <Plug>VimwikiToggleListItem :VimwikiToggleListItem<CR>
 | 
					      \ <Plug>VimwikiToggleListItem :VimwikiToggleListItem<CR>
 | 
				
			||||||
vnoremap <silent><script><buffer>
 | 
					vnoremap <silent><script><buffer>
 | 
				
			||||||
      \ <Plug>VimwikiToggleListItem :VimwikiToggleListItem<CR>
 | 
					      \ <Plug>VimwikiToggleListItem :VimwikiToggleListItem<CR>
 | 
				
			||||||
 | 
					nnoremap <silent><script><buffer>
 | 
				
			||||||
 | 
					      \ <Plug>VimwikiToggleRejectedListItem :VimwikiToggleRejectedListItem<CR>
 | 
				
			||||||
 | 
					vnoremap <silent><script><buffer>
 | 
				
			||||||
 | 
					      \ <Plug>VimwikiToggleRejectedListItem :VimwikiToggleRejectedListItem<CR>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if !hasmapto('<Plug>VimwikiIncrementListItem')
 | 
					if !hasmapto('<Plug>VimwikiIncrementListItem')
 | 
				
			||||||
  nmap <silent><buffer> gln <Plug>VimwikiIncrementListItem
 | 
					  nmap <silent><buffer> gln <Plug>VimwikiIncrementListItem
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -373,6 +373,7 @@ call s:default('hl_cb_checked', 0)
 | 
				
			|||||||
call s:default('list_ignore_newline', 1)
 | 
					call s:default('list_ignore_newline', 1)
 | 
				
			||||||
call s:default('text_ignore_newline', 1)
 | 
					call s:default('text_ignore_newline', 1)
 | 
				
			||||||
call s:default('listsyms', ' .oOX')
 | 
					call s:default('listsyms', ' .oOX')
 | 
				
			||||||
 | 
					call s:default('listsym_rejected', '-')
 | 
				
			||||||
call s:default('use_calendar', 1)
 | 
					call s:default('use_calendar', 1)
 | 
				
			||||||
call s:default('table_mappings', 1)
 | 
					call s:default('table_mappings', 1)
 | 
				
			||||||
call s:default('table_auto_fmt', 1)
 | 
					call s:default('table_auto_fmt', 1)
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -79,7 +79,7 @@ let g:vimwiki_rxListDefine = '::\(\s\|$\)'
 | 
				
			|||||||
call vimwiki#lst#setup_marker_infos()
 | 
					call vimwiki#lst#setup_marker_infos()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
let g:vimwiki_rxListItemWithoutCB = '^\s*\%(\('.g:vimwiki_rxListBullet.'\)\|\('.g:vimwiki_rxListNumber.'\)\)\s'
 | 
					let g:vimwiki_rxListItemWithoutCB = '^\s*\%(\('.g:vimwiki_rxListBullet.'\)\|\('.g:vimwiki_rxListNumber.'\)\)\s'
 | 
				
			||||||
let g:vimwiki_rxListItem = g:vimwiki_rxListItemWithoutCB . '\+\%(\[\(['.g:vimwiki_listsyms.']\)\]\s\)\?'
 | 
					let g:vimwiki_rxListItem = g:vimwiki_rxListItemWithoutCB . '\+\%(\[\(['.g:vimwiki_listsyms.g:vimwiki_listsym_rejected.']\)\]\s\)\?'
 | 
				
			||||||
let g:vimwiki_rxListItemAndChildren = '^\(\s*\)\%('.g:vimwiki_rxListBullet.'\|'.g:vimwiki_rxListNumber.'\)\s\+\['.g:vimwiki_listsyms_list[-1].'\]\s.*\%(\n\%(\1\s.*\|^$\)\)*'
 | 
					let g:vimwiki_rxListItemAndChildren = '^\(\s*\)\%('.g:vimwiki_rxListBullet.'\|'.g:vimwiki_rxListNumber.'\)\s\+\['.g:vimwiki_listsyms_list[-1].'\]\s.*\%(\n\%(\1\s.*\|^$\)\)*'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
" Preformatted text
 | 
					" Preformatted text
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -76,7 +76,7 @@ let g:vimwiki_rxListDefine = '::\%(\s\|$\)'
 | 
				
			|||||||
call vimwiki#lst#setup_marker_infos()
 | 
					call vimwiki#lst#setup_marker_infos()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
let g:vimwiki_rxListItemWithoutCB = '^\s*\%(\('.g:vimwiki_rxListBullet.'\)\|\('.g:vimwiki_rxListNumber.'\)\)\s'
 | 
					let g:vimwiki_rxListItemWithoutCB = '^\s*\%(\('.g:vimwiki_rxListBullet.'\)\|\('.g:vimwiki_rxListNumber.'\)\)\s'
 | 
				
			||||||
let g:vimwiki_rxListItem = g:vimwiki_rxListItemWithoutCB . '\+\%(\[\(['.g:vimwiki_listsyms.']\)\]\s\)\?'
 | 
					let g:vimwiki_rxListItem = g:vimwiki_rxListItemWithoutCB . '\+\%(\[\(['.g:vimwiki_listsyms.g:vimwiki_listsym_rejected.']\)\]\s\)\?'
 | 
				
			||||||
let g:vimwiki_rxListItemAndChildren = '^\(\s*\)\%('.g:vimwiki_rxListBullet.'\|'.g:vimwiki_rxListNumber.'\)\s\+\['.g:vimwiki_listsyms_list[-1].'\]\s.*\%(\n\%(\1\s.*\|^$\)\)*'
 | 
					let g:vimwiki_rxListItemAndChildren = '^\(\s*\)\%('.g:vimwiki_rxListBullet.'\|'.g:vimwiki_rxListNumber.'\)\s\+\['.g:vimwiki_listsyms_list[-1].'\]\s.*\%(\n\%(\1\s.*\|^$\)\)*'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
" Preformatted text
 | 
					" Preformatted text
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -57,7 +57,7 @@ let g:vimwiki_rxListDefine = '^\%(;\|:\)\s'
 | 
				
			|||||||
call vimwiki#lst#setup_marker_infos()
 | 
					call vimwiki#lst#setup_marker_infos()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
let g:vimwiki_rxListItemWithoutCB = '^\s*\%(\('.g:vimwiki_rxListBullet.'\)\|\('.g:vimwiki_rxListNumber.'\)\)\s'
 | 
					let g:vimwiki_rxListItemWithoutCB = '^\s*\%(\('.g:vimwiki_rxListBullet.'\)\|\('.g:vimwiki_rxListNumber.'\)\)\s'
 | 
				
			||||||
let g:vimwiki_rxListItem = g:vimwiki_rxListItemWithoutCB . '\+\%(\[\(['.g:vimwiki_listsyms.']\)\]\s\)\?'
 | 
					let g:vimwiki_rxListItem = g:vimwiki_rxListItemWithoutCB . '\+\%(\[\(['.g:vimwiki_listsyms.g:vimwiki_listsym_rejected.']\)\]\s\)\?'
 | 
				
			||||||
let g:vimwiki_rxListItemAndChildren = '^\('.g:vimwiki_rxListBullet.'\)\s\+\['.g:vimwiki_listsyms_list[-1].'\]\s.*\%(\n\%(\1\%('.g:vimwiki_rxListBullet.'\).*\|^$\|\s.*\)\)*'
 | 
					let g:vimwiki_rxListItemAndChildren = '^\('.g:vimwiki_rxListBullet.'\)\s\+\['.g:vimwiki_listsyms_list[-1].'\]\s.*\%(\n\%(\1\%('.g:vimwiki_rxListBullet.'\).*\|^$\|\s.*\)\)*'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
" Preformatted text
 | 
					" Preformatted text
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user