diff --git a/plugin/UltiSnips.vim b/plugin/UltiSnips.vim index e742a61..2501cd7 100644 --- a/plugin/UltiSnips.vim +++ b/plugin/UltiSnips.vim @@ -17,46 +17,46 @@ endif " The trigger used to expand a snippet. " NOTE: expansion and forward jumping can, but needn't be the same trigger if !exists("g:UltiSnipsExpandTrigger") - let g:UltiSnipsExpandTrigger = "" + let g:UltiSnipsExpandTrigger = "" endif " The trigger used to display all triggers that could possible " match in the current position. if !exists("g:UltiSnipsListSnippets") - let g:UltiSnipsListSnippets = "" + let g:UltiSnipsListSnippets = "" endif " The trigger used to jump forward to the next placeholder. " NOTE: expansion and forward jumping can, but needn't be the same trigger if !exists("g:UltiSnipsJumpForwardTrigger") - let g:UltiSnipsJumpForwardTrigger = "" + let g:UltiSnipsJumpForwardTrigger = "" endif " The trigger to jump backward inside a snippet if !exists("g:UltiSnipsJumpBackwardTrigger") - let g:UltiSnipsJumpBackwardTrigger = "" + let g:UltiSnipsJumpBackwardTrigger = "" endif " Should UltiSnips unmap select mode mappings automagically? if !exists("g:UltiSnipsRemoveSelectModeMappings") - let g:UltiSnipsRemoveSelectModeMappings = 1 + let g:UltiSnipsRemoveSelectModeMappings = 1 end " If UltiSnips should remove Mappings, which should be ignored if !exists("g:UltiSnipsMappingsToIgnore") - let g:UltiSnipsMappingsToIgnore = [] + let g:UltiSnipsMappingsToIgnore = [] endif " UltiSnipsEdit will use this variable to decide if a new window " is opened when editing. default is "normal", allowed are also " "vertical", "horizontal" if !exists("g:UltiSnipsEditSplit") - let g:UltiSnipsEditSplit = 'normal' + let g:UltiSnipsEditSplit = 'normal' endif " A list of directory names that are searched for snippets. if !exists("g:UltiSnipsSnippetDirectories") - let g:UltiSnipsSnippetDirectories = [ "UltiSnips" ] + let g:UltiSnipsSnippetDirectories = [ "UltiSnips" ] endif " }}} @@ -66,35 +66,35 @@ endif command! -nargs=0 UltiSnipsReset :py UltiSnips_Manager.reset() function! UltiSnipsEdit(...) - if a:0 == 1 && a:1 != '' - let type = a:1 - elseif &filetype != '' - let type = split(&filetype, '\.')[0] - else - let type = 'all' - endif + if a:0 == 1 && a:1 != '' + let type = a:1 + elseif &filetype != '' + let type = split(&filetype, '\.')[0] + else + let type = 'all' + endif - if exists('g:UltiSnipsSnippetsDir') - let mode = 'e' - if exists('g:UltiSnipsEditSplit') - if g:UltiSnipsEditSplit == 'vertical' - let mode = 'vs' - elseif g:UltiSnipsEditSplit == 'horizontal' - let mode = 'sp' - endif - endif - exe ':'.mode.' '.g:UltiSnipsSnippetsDir.'/'.type.'.snippets' - else - for dir in g:UltiSnipsSnippetDirectories - for p in reverse(split(&runtimepath, ',')) - if isdirectory(p.'/'.dir) - let g:UltiSnipsSnippetsDir = p.'/'.dir - call UltiSnipsEdit(type) - break - endif - endfor - endfor - endif + if exists('g:UltiSnipsSnippetsDir') + let mode = 'e' + if exists('g:UltiSnipsEditSplit') + if g:UltiSnipsEditSplit == 'vertical' + let mode = 'vs' + elseif g:UltiSnipsEditSplit == 'horizontal' + let mode = 'sp' + endif + endif + exe ':'.mode.' '.g:UltiSnipsSnippetsDir.'/'.type.'.snippets' + else + for dir in g:UltiSnipsSnippetDirectories + for p in reverse(split(&runtimepath, ',')) + if isdirectory(p.'/'.dir) + let g:UltiSnipsSnippetsDir = p.'/'.dir + call UltiSnipsEdit(type) + break + endif + endfor + endfor + endif endfunction " edit snippets, default of current file type or the specified type @@ -104,46 +104,46 @@ command! -nargs=? UltiSnipsEdit :call UltiSnipsEdit() "" FUNCTIONS {{{ function! CompensateForPUM() - """ The CursorMovedI event is not triggered while the popup-menu is visible, - """ and it's by this event that UltiSnips updates its vim-state. The fix is - """ to explicitly check for the presence of the popup menu, and update - """ the vim-state accordingly. - if pumvisible() - py UltiSnips_Manager.cursor_moved() - endif + """ The CursorMovedI event is not triggered while the popup-menu is visible, + """ and it's by this event that UltiSnips updates its vim-state. The fix is + """ to explicitly check for the presence of the popup menu, and update + """ the vim-state accordingly. + if pumvisible() + py UltiSnips_Manager.cursor_moved() + endif endfunction function! UltiSnips_ExpandSnippet() - py UltiSnips_Manager.expand() - return "" + py UltiSnips_Manager.expand() + return "" endfunction function! UltiSnips_ExpandSnippetOrJump() - call CompensateForPUM() - py UltiSnips_Manager.expand_or_jump() - return "" + call CompensateForPUM() + py UltiSnips_Manager.expand_or_jump() + return "" endfunction function! UltiSnips_ListSnippets() - py UltiSnips_Manager.list_snippets() - return "" + py UltiSnips_Manager.list_snippets() + return "" endfunction function! UltiSnips_JumpBackwards() - call CompensateForPUM() - py UltiSnips_Manager.jump_backwards() - return "" + call CompensateForPUM() + py UltiSnips_Manager.jump_backwards() + return "" endfunction function! UltiSnips_JumpForwards() - call CompensateForPUM() - py UltiSnips_Manager.jump_forwards() - return "" + call CompensateForPUM() + py UltiSnips_Manager.jump_forwards() + return "" endfunction function! UltiSnips_AddSnippet(trigger, value, descr, options, ...) - " Takes the same arguments as SnippetManager.add_snippet: - " (trigger, value, descr, options, ft = "all", globals = None) + " Takes the same arguments as SnippetManager.add_snippet: + " (trigger, value, descr, options, ft = "all", globals = None) py << EOB args = vim.eval("a:000") trigger = vim.eval("a:trigger") @@ -153,38 +153,38 @@ options = vim.eval("a:options") UltiSnips_Manager.add_snippet(trigger, value, descr, options, *args) EOB - return "" + return "" endfunction function! UltiSnips_Anon(value, ...) - " Takes the same arguments as SnippetManager.expand_anon: - " (value, trigger="", descr="", options="", globals = None) + " Takes the same arguments as SnippetManager.expand_anon: + " (value, trigger="", descr="", options="", globals = None) py << EOB args = vim.eval("a:000") value = vim.eval("a:value") UltiSnips_Manager.expand_anon(value, *args) EOB - return "" + return "" endfunction function! UltiSnips_MapKeys() - " Map the keys correctly - if g:UltiSnipsExpandTrigger == g:UltiSnipsJumpForwardTrigger - exec "inoremap " . g:UltiSnipsExpandTrigger . " =UltiSnips_ExpandSnippetOrJump()" - exec "snoremap " . g:UltiSnipsExpandTrigger . " :call UltiSnips_ExpandSnippetOrJump()" - else - exec "inoremap " . g:UltiSnipsExpandTrigger . " =UltiSnips_ExpandSnippet()" - exec "snoremap " . g:UltiSnipsExpandTrigger . " :call UltiSnips_ExpandSnippet()" - exec "inoremap " . g:UltiSnipsJumpForwardTrigger . " =UltiSnips_JumpForwards()" - exec "snoremap " . g:UltiSnipsJumpForwardTrigger . " :call UltiSnips_JumpForwards()" - endif - exec "inoremap " . g:UltiSnipsJumpBackwardTrigger . " =UltiSnips_JumpBackwards()" - exec "snoremap " . g:UltiSnipsJumpBackwardTrigger . " :call UltiSnips_JumpBackwards()" - exec "inoremap " . g:UltiSnipsListSnippets . " =UltiSnips_ListSnippets()" - exec "snoremap " . g:UltiSnipsListSnippets . " :call UltiSnips_ListSnippets()" + " Map the keys correctly + if g:UltiSnipsExpandTrigger == g:UltiSnipsJumpForwardTrigger + exec "inoremap " . g:UltiSnipsExpandTrigger . " =UltiSnips_ExpandSnippetOrJump()" + exec "snoremap " . g:UltiSnipsExpandTrigger . " :call UltiSnips_ExpandSnippetOrJump()" + else + exec "inoremap " . g:UltiSnipsExpandTrigger . " =UltiSnips_ExpandSnippet()" + exec "snoremap " . g:UltiSnipsExpandTrigger . " :call UltiSnips_ExpandSnippet()" + exec "inoremap " . g:UltiSnipsJumpForwardTrigger . " =UltiSnips_JumpForwards()" + exec "snoremap " . g:UltiSnipsJumpForwardTrigger . " :call UltiSnips_JumpForwards()" + endif + exec "inoremap " . g:UltiSnipsJumpBackwardTrigger . " =UltiSnips_JumpBackwards()" + exec "snoremap " . g:UltiSnipsJumpBackwardTrigger . " :call UltiSnips_JumpBackwards()" + exec "inoremap " . g:UltiSnipsListSnippets . " =UltiSnips_ListSnippets()" + exec "snoremap " . g:UltiSnipsListSnippets . " :call UltiSnips_ListSnippets()" - " Do not remap this. - snoremap :py UltiSnips_Manager.backspace_while_selected() + " Do not remap this. + snoremap :py UltiSnips_Manager.backspace_while_selected() endf " }}} @@ -207,7 +207,8 @@ au CursorMovedI * py UltiSnips_Manager.cursor_moved() au InsertEnter * py UltiSnips_Manager.entered_insert_mode() call UltiSnips_MapKeys() - + let did_UltiSnips_vim=1 " }}} +" vim: ts=8 sts=4 sw=4