88" ===========================================================================
99
1010let s: previous_buffer = ' '
11- let s: positions = [' top' , ' bottom' , ' left' , ' right' , ' tab' ]
12- let s: default_position = ' bottom'
1311
14- func ! executor#exec (start_line, end_line, open_result, ... ) abort
12+ func ! executor#exec (start_line, end_line, open_result, mods, ... ) abort
1513 if ! exists (' g:loaded_buffr' )
1614 call s: show_error (' Please, install vim-buffr plugin first' ) | return
1715 endif
1816
1917 let l: command = join (a: 000 )
2018 let l: selection = getline (a: start_line , a: end_line )
2119
22- if g: executor_exec_async && ( v: version >= 800 )
23- call executor#async#exec (l: command , l: selection , a: open_result )
20+ if v: version >= 800
21+ call executor#async#exec (l: command , l: selection , a: open_result, a: mods )
2422 else
25- call executor#default#exec (l: command , l: selection , a: open_result )
23+ call executor#default#exec (l: command , l: selection , a: open_result, a: mods )
2624 endif
2725endfunc
2826
29- func ! executor#open_result (result, command ) abort
27+ func ! executor#open_result (result, command , mods ) abort
3028 let l: buffer_name = s: buffer_name (a: command )
31- call s: open_buffer (l: buffer_name )
29+ call s: open_buffer (l: buffer_name, a: mods )
3230 call append (0 , a: result )
3331 silent normal ! Gddgg
3432endfunc
3533
36- func ! s: open_buffer (buffer_name) abort
34+ func ! s: open_buffer (buffer_name, mods ) abort
3735 let l: buffer_name = a: buffer_name
3836
3937 if g: executor_reuse_buffer
@@ -43,10 +41,7 @@ func! s:open_buffer(buffer_name) abort
4341 let s: previous_buffer = a: buffer_name
4442 endif
4543
46- call buffr#open_or_create_buffer ({
47- \ ' position' : s: buffer_position (),
48- \ ' name' : l: buffer_name
49- \ })
44+ call buffr#open_or_create_buffer (l: buffer_name , a: mods )
5045 call s: set_buffer_defaults ()
5146
5247 if g: executor_reuse_buffer
@@ -63,10 +58,6 @@ func! s:buffer_name(command) abort
6358 return l: name
6459endfunc
6560
66- func ! s: buffer_position () abort
67- return index (s: positions , g: executor_position ) < 0 ? s: default_position : g: executor_position
68- endfunc
69-
7061func ! s: set_buffer_defaults () abort
7162 setlocal buftype = nofile
7263 setlocal bufhidden = wipe
0 commit comments