Merge branch 'master' into fix-multibyte-path
This commit is contained in:
commit
abf200397f
@ -288,7 +288,7 @@ function! s:Bookmark.str()
|
||||
let pathStr = self.path.str({'format': 'UI'})
|
||||
if strdisplaywidth(pathStr) > pathStrMaxLen
|
||||
while strdisplaywidth(pathStr) > pathStrMaxLen && strchars(pathStr) > 0
|
||||
let pathStr = substitute(pathStr, '.\{1}', '', '')
|
||||
let pathStr = substitute(pathStr, '^.', '', '')
|
||||
endwhile
|
||||
let pathStr = '<' . pathStr
|
||||
endif
|
||||
|
@ -15,29 +15,35 @@ function! s:MenuController.New(menuItems)
|
||||
return newMenuController
|
||||
endfunction
|
||||
|
||||
"FUNCTION: MenuController.showMenu() {{{1
|
||||
"start the main loop of the menu and get the user to choose/execute a menu
|
||||
"item
|
||||
" FUNCTION: MenuController.showMenu() {{{1
|
||||
" Enter the main loop of the NERDTree menu, prompting the user to select
|
||||
" a menu item.
|
||||
function! s:MenuController.showMenu()
|
||||
call self._saveOptions()
|
||||
|
||||
try
|
||||
let self.selection = 0
|
||||
let l:done = 0
|
||||
|
||||
let done = 0
|
||||
while !done
|
||||
while !l:done
|
||||
redraw!
|
||||
call self._echoPrompt()
|
||||
let key = nr2char(getchar())
|
||||
let done = self._handleKeypress(key)
|
||||
|
||||
let l:key = nr2char(getchar())
|
||||
let l:done = self._handleKeypress(l:key)
|
||||
endwhile
|
||||
finally
|
||||
call self._restoreOptions()
|
||||
|
||||
" Redraw when "Ctrl-C" or "Esc" is received.
|
||||
if !l:done || self.selection == -1
|
||||
redraw!
|
||||
endif
|
||||
endtry
|
||||
|
||||
if self.selection != -1
|
||||
let m = self._current()
|
||||
call m.execute()
|
||||
let l:m = self._current()
|
||||
call l:m.execute()
|
||||
endif
|
||||
endfunction
|
||||
|
||||
|
@ -721,7 +721,7 @@ function! s:Path.str(...)
|
||||
let limit = options['truncateTo']
|
||||
if strdisplaywidth(toReturn) > limit-1
|
||||
while strdisplaywidth(toReturn) > limit-1 && strchars(toReturn) > 0
|
||||
let toReturn = substitute(toReturn, '.\{1}', '', '')
|
||||
let toReturn = substitute(toReturn, '^.', '', '')
|
||||
endwhile
|
||||
if len(split(toReturn, '/')) > 1
|
||||
let toReturn = '</' . join(split(toReturn, '/')[1:], '/') . '/'
|
||||
|
Loading…
x
Reference in New Issue
Block a user