diff options
Diffstat (limited to 'autoload/put_blank_lines.vim')
-rw-r--r-- | autoload/put_blank_lines.vim | 24 |
1 files changed, 11 insertions, 13 deletions
diff --git a/autoload/put_blank_lines.vim b/autoload/put_blank_lines.vim index 6251283..5d48193 100644 --- a/autoload/put_blank_lines.vim +++ b/autoload/put_blank_lines.vim @@ -1,19 +1,17 @@ -" Put lines above -function! put_blank_lines#Above() abort - set operatorfunc=put_blank_lines#AboveOpfunc +" Entry point +function! put_blank_lines#(above) abort + let &operatorfunc = 'put_blank_lines#' + \ . (a:above ? 'Above' : 'Below') return 'g@^' endfunction -function! put_blank_lines#AboveOpfunc(type) abort - silent put! =repeat(nr2char(10), v:count1) - ']+1 -endfunction -" Put lines below -function! put_blank_lines#Below() abort - set operatorfunc=put_blank_lines#BelowOpfunc - return 'g@^' +" Operator functions +let s:space = nr2char(10) +function! put_blank_lines#Above(type) abort + silent put! =repeat(s:space, v:count1) + ']+1 endfunction -function! put_blank_lines#BelowOpfunc(type) abort - silent put =repeat(nr2char(10), v:count1) +function! put_blank_lines#Below(type) abort + silent put =repeat(s:space, v:count1) '[-1 endfunction |