aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--bundle/cmd-escape/autoload/cmd_escape.vim15
-rw-r--r--bundle/cmd-escape/plugin/cmd_escape.vim29
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>