let lexima_accept_pum_with_enter = 0 " iterm専用 if g:IsMacNeovim() && !g:IsMacNeovimInWork() && !g:IsMacNeovimInWezterm() call lexima#add_rule({ \ 'char': '', \ 'at': '^「.*\%#.*」', \ 'input': '「」', \ 'filetype': ['shd'] \ }) endif let s:rules = [] " changelog {{{1 call lexima#add_rule({ \ 'at' : '\%#]', \ 'char' : ':', \ 'input' : ':', \ 'filetype': ['changelog'] \ }) let s:rules += [ \ { 'filetype': 'changelog', 'char': '#', 'at': '^\%#\%(#\)\@!', 'input': '#' }, \ { 'filetype': 'changelog', 'char': '#', 'at': '#\s\%#', 'input': '#', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^#\s\%#', 'input': '' }, \ { 'filetype': 'changelog', 'char': '', 'at': '##\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^#\s\%#', 'input': '' }, \ { 'filetype': 'changelog', 'char': '', 'at': '##\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '-', 'at': '^\s*\%#', 'input': '-', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s*-\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s*-\s\w.*\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s\+-\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s\+-\s\w.*\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^-\s\w.*\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^-\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s\+-\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^-\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s\+-\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^-\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s\+-\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s*-\s\w.*\%#', 'input': '-', }, \ { 'filetype': 'changelog', 'char': '[', 'at': '^\s*-\s\%#', 'input': '[]', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s*-\s\[\%#\]\s', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^-\s\[\%#\]\s', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s\+-\s\[\%#\]\s', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s*-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s*-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s*-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'changelog', 'char': 'x', 'at': '^\s*-\s\[\%#\]', 'input': 'x', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s\+-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s*-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s*-\s\[\(\s\|x\)\]\s\w.*\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\w.*\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^-\s\[\(\s\|x\)\]\s\w.*\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'changelog', 'char': '', 'at': '^\s*-\s\[\(\s\|x\)\]\s\w.*\%#', 'input': '-[]', }, \ ] " }}}1 " php {{{1 call lexima#add_rule({ \ 'at' : '->\%#', \ 'char' : '', \ 'input' : '', \ 'filetype': ['php'] \ }) call lexima#add_rule({ \ 'at' : '^ *\%#', \ 'char' : '>', \ 'input' : '->', \ 'filetype': ['php'] \ }) call lexima#add_rule({ \ 'at' : ')\%#', \ 'char' : '>', \ 'input' : '->', \ 'filetype': ['php'] \ }) let s:rules += [ \ { 'filetype': 'php', 'char': '$' , 'at': '$\%#', 'input': 'this->' }, \ { 'filetype': 'php', 'char': '>' , 'at': '$.*\%#', 'input': '->' }, \ { 'filetype': 'php', 'char': '>' , 'at': '.*)\%#', 'input': '->' }, \ { 'filetype': 'php', 'char': '>' , 'at': '.*\%#''', 'input': ' => ' }, \ ] " }}}1 " text {{{1 let s:rules += [ \ { 'filetype': 'text', 'char': '#', 'at': '^\%#\%(#\)\@!', 'input': '#' }, \ { 'filetype': 'text', 'char': '#', 'at': '#\s\%#', 'input': '#', }, \ { 'filetype': 'text', 'char': '', 'at': '^#\s\%#', 'input': '' }, \ { 'filetype': 'text', 'char': '', 'at': '##\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^#\s\%#', 'input': '' }, \ { 'filetype': 'text', 'char': '', 'at': '##\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '-', 'at': '^\s*\%#', 'input': '-', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s*-\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s*-\s\w.*\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s\+-\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s\+-\s\w.*\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^-\s\w.*\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^-\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s\+-\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^-\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s\+-\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^-\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s\+-\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s*-\s\w.*\%#', 'input': '-', }, \ { 'filetype': 'text', 'char': '[', 'at': '^\s*-\s\%#', 'input': '[]', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s*-\s\[\%#\]\s', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^-\s\[\%#\]\s', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s\+-\s\[\%#\]\s', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s*-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s*-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s*-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'text', 'char': 'x', 'at': '^\s*-\s\[\%#\]', 'input': 'x', }, \ { 'filetype': 'text', 'char': '', 'at': '^-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s\+-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s*-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s*-\s\[\(\s\|x\)\]\s\w.*\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\w.*\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^-\s\[\(\s\|x\)\]\s\w.*\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'text', 'char': '', 'at': '^\s*-\s\[\(\s\|x\)\]\s\w.*\%#', 'input': '-[]', }, \ ] " }}}1 " markdown {{{1 let s:rules += [ \ { 'filetype': 'markdown', 'char': '#', 'at': '^\%#\%(#\)\@!', 'input': '#' }, \ { 'filetype': 'markdown', 'char': '#', 'at': '#\s\%#', 'input': '#', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^#\s\%#', 'input': '' }, \ { 'filetype': 'markdown', 'char': '', 'at': '##\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^#\s\%#', 'input': '' }, \ { 'filetype': 'markdown', 'char': '', 'at': '##\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '-', 'at': '^\s*\%#', 'input': '-', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s*-\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s*-\s\w.*\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s\+-\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s\+-\s\w.*\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^-\s\w.*\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^-\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s\+-\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^-\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s\+-\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^-\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s\+-\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s*-\s\w.*\%#', 'input': '-', }, \ { 'filetype': 'markdown', 'char': '[', 'at': '^\s*-\s\%#', 'input': '[]', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s*-\s\[\%#\]\s', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^-\s\[\%#\]\s', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s\+-\s\[\%#\]\s', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s*-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s*-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s*-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'markdown', 'char': 'x', 'at': '^\s*-\s\[\%#\]', 'input': 'x', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s\+-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s*-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s*-\s\[\(\s\|x\)\]\s\w.*\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\w.*\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^-\s\[\(\s\|x\)\]\s\w.*\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'markdown', 'char': '', 'at': '^\s*-\s\[\(\s\|x\)\]\s\w.*\%#', 'input': '-[]', }, \ ] " }}}1 " octo {{{1 let s:rules += [ \ { 'filetype': 'octo', 'char': '#', 'at': '^\%#\%(#\)\@!', 'input': '#' }, \ { 'filetype': 'octo', 'char': '#', 'at': '#\s\%#', 'input': '#', }, \ { 'filetype': 'octo', 'char': '', 'at': '^#\s\%#', 'input': '' }, \ { 'filetype': 'octo', 'char': '', 'at': '##\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^#\s\%#', 'input': '' }, \ { 'filetype': 'octo', 'char': '', 'at': '##\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '-', 'at': '^\s*\%#', 'input': '-', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s*-\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s*-\s\w.*\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s\+-\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s\+-\s\w.*\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^-\s\w.*\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^-\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s\+-\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^-\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s\+-\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^-\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s\+-\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s*-\s\w.*\%#', 'input': '-', }, \ { 'filetype': 'octo', 'char': '[', 'at': '^\s*-\s\%#', 'input': '[]', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s*-\s\[\%#\]\s', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^-\s\[\%#\]\s', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s\+-\s\[\%#\]\s', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s*-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s*-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s*-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'octo', 'char': 'x', 'at': '^\s*-\s\[\%#\]', 'input': 'x', }, \ { 'filetype': 'octo', 'char': '', 'at': '^-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s\+-\s\[\%#\]', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s*-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s*-\s\[\(\s\|x\)\]\s\w.*\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\w.*\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^-\s\[\(\s\|x\)\]\s\w.*\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s\+-\s\[\(\s\|x\)\]\s\%#', 'input': '', }, \ { 'filetype': 'octo', 'char': '', 'at': '^\s*-\s\[\(\s\|x\)\]\s\w.*\%#', 'input': '-[]', }, \ ] " }}}1 for s:rule in s:rules call lexima#add_rule(s:rule) endfor " general {{{ call lexima#add_rule({ \ 'at' : '\%#)', \ 'char' : ';', \ 'input' : ';', \ }) call lexima#add_rule({ \ 'at' : ')\%#', \ 'char' : '>', \ 'input' : ' => ', \ }) call lexima#add_rule({ \ 'at' : '\%#]', \ 'char' : ';', \ 'input' : ';', \ }) call lexima#add_rule({ \ 'at' : '\%#'']', \ 'char' : ';', \ 'input' : ';', \ }) call lexima#add_rule({ \ 'at' : '".*\%#"', \ 'char' : ';', \ 'input' : ';', \ }) call lexima#add_rule({ \ 'at' : "\%#'", \ 'char' : ';', \ 'input' : ';', \ }) call lexima#add_rule({ \ 'at' : '\%#")', \ 'char' : ';', \ 'input' : ';', \ }) call lexima#add_rule({ \ 'at' : '\%#"]', \ 'char' : ';', \ 'input' : ';', \ }) call lexima#add_rule({ \ 'at' : '\%#''', \ 'char' : ';', \ 'input' : ';', \ }) call lexima#add_rule({ \ 'at' : '\%#'')', \ 'char' : ';', \ 'input' : ';', \ }) call lexima#add_rule({ \ 'at' : '\%#''', \ 'char' : '<', \ 'input' : ', ', \ }) call lexima#add_rule({ \ 'at' : '\%#''', \ 'char' : '=', \ 'input' : ' = ', \ }) call lexima#add_rule({ \ 'at' : '\%#'')', \ 'char' : '=', \ 'input' : ' = ', \ }) call lexima#add_rule({ \ 'at' : '\%#")', \ 'char' : '=', \ 'input' : ' = ', \ }) call lexima#add_rule({ \ 'at' : '\%#'']', \ 'char' : '=', \ 'input' : ' = ', \ }) call lexima#add_rule({ \ 'at' : '\%#"]', \ 'char' : '=', \ 'input' : ' = ', \ }) call lexima#add_rule({ \ 'at' : '\%#', \ 'char' : '=', \ 'input' : ' = ', \ }) call lexima#add_rule({'char': '=', 'at': ' = \%#', 'input': '='}) call lexima#add_rule({'char': '=', 'at': '=\%#', 'input': ' == '}) call lexima#add_rule({'char': '=', 'at': ' == \%#', 'input': '=== '}) call lexima#add_rule({'char': '=', 'at': ' === \%#', 'input': '= '}) call lexima#add_rule({ \ 'at' : '\%#', \ 'char' : '%', \ 'input' : ' % ', \ }) call lexima#add_rule({'char': '%', 'at': ' % \%#', 'input': '%'}) call lexima#add_rule({'char': '%', 'at': '%\%#', 'input': ' % '}) call lexima#add_rule({ \ 'at' : '\%#', \ 'char' : '&', \ 'input' : ' & ', \ }) call lexima#add_rule({'char': '&', 'at': ' & \%#', 'input': ' && '}) call lexima#add_rule({'char': '&', 'at': ' && \%#', 'input': '&'}) call lexima#add_rule({'char': '&', 'at': '&\%#', 'input': ' & '}) call lexima#add_rule({ \ 'at' : '\%#', \ 'char' : ',', \ 'input' : ', ', \ }) call lexima#add_rule({'char': ',', 'at': ', \%#', 'input': ','}) call lexima#add_rule({'char': ',', 'at': ',\%#', 'input': ', '}) call lexima#add_rule({ \ 'at' : '\%#', \ 'char' : '!', \ 'input' : '!', \ }) call lexima#add_rule({'char': '!', 'at': '!\%#', 'input': ' !== '}) call lexima#add_rule({'char': '!', 'at': ' !== \%#', 'input': '!'}) call lexima#add_rule({ \ 'at' : '\%#', \ 'char' : '+', \ 'input' : '+', \ }) call lexima#add_rule({'char': '+', 'at': '+\%#', 'input': ' + '}) call lexima#add_rule({'char': '+', 'at': ' + \%#', 'input': '++'}) call lexima#add_rule({'char': '+', 'at': '++\%#', 'input': '+'}) call lexima#add_rule({ \ 'at' : '\%#', \ 'char' : '/', \ 'input' : '/', \ }) call lexima#add_rule({'char': '/', 'at': '/\%#', 'input': ' / '}) call lexima#add_rule({'char': '/', 'at': ' / \%#', 'input': '// '}) call lexima#add_rule({'char': '/', 'at': '// \%#', 'input': '//'}) call lexima#add_rule({'char': '/', 'at': '//\%#', 'input': '/'}) " }}}1 function! s:lexima_alter_command(original, altanative) abort let input_space = '' .. a:altanative .. '' let input_cr = '' .. a:altanative .. '' let rule = { \ 'mode': ':', \ 'at': '^\(''<,''>\)\?' .. a:original .. '\%#', \ } call lexima#add_rule(extend(rule, { 'char': '', 'input': input_space })) call lexima#add_rule(extend(rule, { 'char': '', 'input': input_cr })) endfunction command! -nargs=+ LeximaAlterCommand call lexima_alter_command() LeximaAlterCommand omm OpenMindMap