diff --git a/plugin/minibufexpl.vim b/plugin/minibufexpl.vim index e2b3348..69574cd 100644 --- a/plugin/minibufexpl.vim +++ b/plugin/minibufexpl.vim @@ -1542,7 +1542,9 @@ function! BuildBufferList(curBufNum) call add(l:tabList, l:tab) endfor - if t:miniBufExplSortBy == "name" + if t:miniBufExplSortBy == "number" + call sort(l:tabList, "NumCmp") + elseif t:miniBufExplSortBy == "name" call sort(l:tabList, "NameCmp") elseif t:miniBufExplSortBy == "mru" call sort(l:tabList, "MRUCmp") @@ -2000,6 +2002,21 @@ function! MRUCmp(tab1, tab2) return index(s:MRUList, l:buf1) - index(s:MRUList, l:buf2) endfunction +" }}} +" NumCmp - compares tabs based on filename {{{ +" +function! NumCmp(tab1, tab2) + let l:num1 = str2nr(matchstr(a:tab1, ".*:", 1)) + let l:num2 = str2nr(matchstr(a:tab2, ".*:", 1)) + if l:num1 < l:num2 + return -1 + elseif l:num1 > l:num2 + return 1 + else + return 0 + endif +endfunction + " }}} " HasEligibleBuffers - Are there enough MBE eligible buffers to open the MBE window? {{{ "