From 7b1f90091269e8959970b7da58e919d84648bdb7 Mon Sep 17 00:00:00 2001 From: Shougo Matsushita Date: Thu, 21 Nov 2013 18:14:07 +0900 Subject: [PATCH] Move register_oneshot_snippet function --- autoload/neosnippet.vim | 27 --------------------------- autoload/neosnippet/mappings.vim | 27 +++++++++++++++++++++++++++ plugin/neosnippet.vim | 4 ++-- 3 files changed, 29 insertions(+), 29 deletions(-) diff --git a/autoload/neosnippet.vim b/autoload/neosnippet.vim index 5ae26b7..9b4d79b 100644 --- a/autoload/neosnippet.vim +++ b/autoload/neosnippet.vim @@ -284,33 +284,6 @@ function! s:indent_snippet(begin, end) "{{{ endtry endfunction"}}} -function! neosnippet#register_oneshot_snippet() "{{{ - let trigger = input('Please input snippet trigger: ', 'oneshot') - if trigger == '' - return - endif - - let selected_text = substitute( - \ neosnippet#get_selected_text(visualmode(), 1), '\n$', '', '') - call neosnippet#delete_selected_text(visualmode(), 1) - - let base_indent = matchstr(selected_text, '^\s*') - - " Delete base_indent. - let selected_text = substitute(selected_text, - \'^' . base_indent, '', 'g') - - let neosnippet = neosnippet#get_current_neosnippet() - let options = neosnippet#parser#_initialize_snippet_options() - let options.word = 1 - - let neosnippet.snippets[trigger] = neosnippet#parser#_initialize_snippet( - \ { 'name' : trigger, 'word' : selected_text, 'options' : options }, - \ '', 0, '', trigger) - - echo 'Registered trigger : ' . trigger -endfunction"}}} - function! neosnippet#_get_snippet_range(begin_line, begin_patterns, end_line, end_patterns) "{{{ let pos = getpos('.') diff --git a/autoload/neosnippet/mappings.vim b/autoload/neosnippet/mappings.vim index 16f2df5..653de7f 100644 --- a/autoload/neosnippet/mappings.vim +++ b/autoload/neosnippet/mappings.vim @@ -85,6 +85,33 @@ function! neosnippet#mappings#_clear_select_mode_mappings() "{{{ snoremap a endfunction"}}} +function! neosnippet#mappings#_register_oneshot_snippet() "{{{ + let trigger = input('Please input snippet trigger: ', 'oneshot') + if trigger == '' + return + endif + + let selected_text = substitute( + \ neosnippet#get_selected_text(visualmode(), 1), '\n$', '', '') + call neosnippet#delete_selected_text(visualmode(), 1) + + let base_indent = matchstr(selected_text, '^\s*') + + " Delete base_indent. + let selected_text = substitute(selected_text, + \'^' . base_indent, '', 'g') + + let neosnippet = neosnippet#get_current_neosnippet() + let options = neosnippet#parser#_initialize_snippet_options() + let options.word = 1 + + let neosnippet.snippets[trigger] = neosnippet#parser#_initialize_snippet( + \ { 'name' : trigger, 'word' : selected_text, 'options' : options }, + \ '', 0, '', trigger) + + echo 'Registered trigger : ' . trigger +endfunction"}}} + function! s:snippets_expand(cur_text, col) "{{{ let cur_word = neosnippet#get_cursor_snippet( \ neosnippet#get_snippets(), diff --git a/plugin/neosnippet.vim b/plugin/neosnippet.vim index 3efa1d3..64231f5 100644 --- a/plugin/neosnippet.vim +++ b/plugin/neosnippet.vim @@ -1,7 +1,7 @@ "============================================================================= " FILE: neosnippet.vim " AUTHOR: Shougo Matsushita -" Last Modified: 19 Nov 2013. +" Last Modified: 21 Nov 2013. " License: MIT license {{{ " Permission is hereby granted, free of charge, to any person obtaining " a copy of this software and associated documentation files (the @@ -63,7 +63,7 @@ xnoremap (neosnippet_expand_target) xnoremap (neosnippet_start_unite_snippet_target) \ unite#sources#snippet_target#start() xnoremap (neosnippet_register_oneshot_snippet) - \ :call neosnippet#register_oneshot_snippet() + \ :call neosnippet#mappings#_register_oneshot_snippet() inoremap (neosnippet_start_unite_snippet) \ unite#sources#snippet#start_complete()