diff options
-rw-r--r-- | bundle/cmd-escape/autoload/cmd_escape.vim | 15 | ||||
-rw-r--r-- | bundle/cmd-escape/plugin/cmd_escape.vim | 29 |
2 files changed, 20 insertions, 24 deletions
diff --git a/bundle/cmd-escape/autoload/cmd_escape.vim b/bundle/cmd-escape/autoload/cmd_escape.vim new file mode 100644 index 0000000..dd87b64 --- /dev/null +++ b/bundle/cmd-escape/autoload/cmd_escape.vim @@ -0,0 +1,15 @@ +let s:active = 0 + +" Toggles the <Space> key between normal self-insert and inserting an escaped +" space ('\ ') in command mode. +function cmd_escape#Toggle() + if s:active + cunmap <Space> + let s:active = 0 + else + cnoremap <Space> \<Space> + let s:active = 1 + endif + + return '' +endfunction diff --git a/bundle/cmd-escape/plugin/cmd_escape.vim b/bundle/cmd-escape/plugin/cmd_escape.vim index c37e335..f9952d4 100644 --- a/bundle/cmd-escape/plugin/cmd_escape.vim +++ b/bundle/cmd-escape/plugin/cmd_escape.vim @@ -1,25 +1,6 @@ -let s:active = 0 +if exists('g:loaded_cmd_escape') + finish +endif +let g:loaded_cmd_escape = 1 -function! s:Activate() - cnoremap <Space> \<Space> - let s:active = 1 -endfunction - -function! s:Deactivate() - cunmap <Space> - let s:active = 0 -endfunction - -function s:Toggle() - if s:active - cunmap <Space> - let s:active = 0 - else - cnoremap <Space> \<Space> - let s:active = 1 - endif - - return '' -endfunction - -cnoremap <C-x><Space> <C-r>=<SID>Toggle()<CR> +cnoremap <C-x><Space> <C-r>=cmd_escape#Toggle()<CR> |