Skip to content

Commit 617afb8

Browse files
committed
Merge branch 'feature'
2 parents c681831 + 9ec2d61 commit 617afb8

File tree

1 file changed

+26
-1
lines changed

1 file changed

+26
-1
lines changed

plugin/vimux.vim

+26-1
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,11 @@ endfunction
6666

6767
function! VimuxOpenRunner()
6868
let nearestIndex = _VimuxNearestIndex()
69+
let lastIndex = _VimuxLastIndex()
6970

70-
if _VimuxOption("g:VimuxUseNearest", 1) == 1 && nearestIndex != -1
71+
if _VimuxOption("g:VimuxUseLast", 1) == 1 && lastIndex != -1
72+
let g:VimuxRunnerIndex = lastIndex
73+
elseif _VimuxOption("g:VimuxUseNearest", 1) == 1 && nearestIndex != -1
7174
let g:VimuxRunnerIndex = nearestIndex
7275
else
7376
if _VimuxRunnerType() == "pane"
@@ -182,6 +185,28 @@ function! _VimuxNearestIndex()
182185
return -1
183186
endfunction
184187

188+
function! _VimuxLastIndex()
189+
190+
let currentID = _VimuxTmuxPaneIndex()
191+
192+
call _VimuxTmux("last-pane")
193+
let lastID = _VimuxTmuxPaneIndex()
194+
call _VimuxTmux("last-pane")
195+
196+
if currentID != lastID
197+
if _VimuxRunnerType() == "window"
198+
return lastID
199+
elseif _VimuxRunnerType() == "pane"
200+
if split(currentID, "\\.")[0] == split(lastID, "\\.")[0]
201+
return lastID
202+
endif
203+
endif
204+
endif
205+
206+
return -1
207+
208+
endfunction
209+
185210
function! _VimuxRunnerType()
186211
return _VimuxOption("g:VimuxRunnerType", "pane")
187212
endfunction

0 commit comments

Comments
 (0)