let s:save_cpo = &cpo set cpo&vim function! omochice#listitem#toggle_listitem(marker) abort const l:lnum = line('.') let l:line = getline(l:lnum) if l:line =~# $'^\s*{a:marker}' " `- text` => `text` let l:line = substitute(l:line, $'{a:marker}\s*', '', '') call setline(l:lnum, l:line) else let l:line = substitute(l:line, '\(\S\)', $'{a:marker} \1', '') call setline(l:lnum, l:line) endif endfunction let &cpo = s:save_cpo unlet s:save_cpo