aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Ryder <tom@sanctum.geek.nz>2019-05-25 20:45:31 +1200
committerTom Ryder <tom@sanctum.geek.nz>2019-05-25 20:45:31 +1200
commit6307e42f88cf689b083fe474086444f0537bd02b (patch)
treed3b2b6ac2eda5063f3af8f71b66a972f2c2cab87
parentMerge branch 'release/v1.1.0' into develop (diff)
downloadvim-paste-open-6307e42f88cf689b083fe474086444f0537bd02b.tar.gz
vim-paste-open-6307e42f88cf689b083fe474086444f0537bd02b.zip
Move functions out to autoload
-rw-r--r--autoload/paste_open.vim33
-rw-r--r--plugin/paste_open.vim38
2 files changed, 35 insertions, 36 deletions
diff --git a/autoload/paste_open.vim b/autoload/paste_open.vim
new file mode 100644
index 0000000..fa4c032
--- /dev/null
+++ b/autoload/paste_open.vim
@@ -0,0 +1,33 @@
+" Initialise paste cache variable
+let s:paste_save = &paste
+
+" Start paste mode, establish hook to end it
+function! paste_open#Start() abort
+
+ " Cache the current paste setting, and set it if not already
+ let s:paste_save = &paste
+ if !&paste
+ set paste
+ endif
+
+ " Set up grouped hook to end paste mode
+ augroup paste_open
+ autocmd!
+ autocmd InsertLeave * call paste_open#Finish()
+ augroup END
+
+endfunction
+
+" End paste mode
+function! paste_open#Finish() abort
+
+ " Clear hook and now-unneeded group
+ autocmd! paste_open
+ augroup! paste_open
+
+ " Restore previous paste setting
+ if !s:paste_save
+ set nopaste
+ endif
+
+endfunction
diff --git a/plugin/paste_open.vim b/plugin/paste_open.vim
index 0264e00..e3102ad 100644
--- a/plugin/paste_open.vim
+++ b/plugin/paste_open.vim
@@ -15,44 +15,10 @@ if v:version < 700
endif
let loaded_paste_open = 1
-" Initialise paste cache variable
-let s:paste_save = &paste
-
-" Start paste mode, establish hook to end it
-function! s:Start() abort
-
- " Cache the current paste setting, and set it if not already
- let s:paste_save = &paste
- if !&paste
- set paste
- endif
-
- " Set up grouped hook to end paste mode
- augroup paste_open
- autocmd!
- autocmd InsertLeave * call s:Finish()
- augroup END
-
-endfunction
-
-" End paste mode
-function! s:Finish() abort
-
- " Clear hook and now-unneeded group
- autocmd! paste_open
- augroup! paste_open
-
- " Restore previous paste setting
- if !s:paste_save
- set nopaste
- endif
-
-endfunction
-
" Set up mappings
nnoremap <silent> <unique>
\ <Plug>(PasteOpenBelow)
- \ :<C-U>call <SID>Start()<CR>o
+ \ :<C-U>call paste_open#Start()<CR>o
nnoremap <silent> <unique>
\ <Plug>(PasteOpenAbove)
- \ :<C-U>call <SID>Start()<CR>O
+ \ :<C-U>call paste_open#Start()<CR>O