Remove code duplication in "findAndRevealPath"

This commit is contained in:
Jason Franklin
2017-12-21 08:28:28 -05:00
parent 509122df20
commit 496d9a17d8

View File

@@ -270,13 +270,13 @@ function! s:findAndRevealPath(path)
endif endif
try try
let p = g:NERDTreePath.New(l:path) let l:p = g:NERDTreePath.New(l:path)
catch /^NERDTree.InvalidArgumentsError/ catch /^NERDTree.InvalidArgumentsError/
call nerdtree#echo("no file for the current buffer") call nerdtree#echo('no file for the current buffer')
return return
endtry endtry
if p.isUnixHiddenPath() if l:p.isUnixHiddenPath()
let showhidden=g:NERDTreeShowHidden let showhidden=g:NERDTreeShowHidden
let g:NERDTreeShowHidden = 1 let g:NERDTreeShowHidden = 1
endif endif
@@ -285,36 +285,29 @@ function! s:findAndRevealPath(path)
try try
let cwd = g:NERDTreePath.New(getcwd()) let cwd = g:NERDTreePath.New(getcwd())
catch /^NERDTree.InvalidArgumentsError/ catch /^NERDTree.InvalidArgumentsError/
call nerdtree#echo("current directory does not exist.") call nerdtree#echo('current directory does not exist.')
let cwd = p.getParent() let cwd = l:p.getParent()
endtry endtry
if p.isUnder(cwd) if l:p.isUnder(cwd)
call g:NERDTreeCreator.CreateTabTree(cwd.str()) call g:NERDTreeCreator.CreateTabTree(cwd.str())
else else
call g:NERDTreeCreator.CreateTabTree(p.getParent().str()) call g:NERDTreeCreator.CreateTabTree(l:p.getParent().str())
endif endif
else else
if !p.isUnder(g:NERDTreeFileNode.GetRootForTab().path) NERDTreeFocus
if !g:NERDTree.IsOpen()
call g:NERDTreeCreator.ToggleTabTree('') if !l:p.isUnder(g:NERDTreeFileNode.GetRootForTab().path)
else
call g:NERDTree.CursorToTreeWin()
endif
call b:NERDTree.ui.setShowHidden(g:NERDTreeShowHidden) call b:NERDTree.ui.setShowHidden(g:NERDTreeShowHidden)
call s:chRoot(g:NERDTreeDirNode.New(p.getParent(), b:NERDTree)) call s:chRoot(g:NERDTreeDirNode.New(l:p.getParent(), b:NERDTree))
else
if !g:NERDTree.IsOpen()
call g:NERDTreeCreator.ToggleTabTree("")
endif
endif endif
endif endif
call g:NERDTree.CursorToTreeWin()
let node = b:NERDTree.root.reveal(p) let node = b:NERDTree.root.reveal(l:p)
call b:NERDTree.render() call b:NERDTree.render()
call node.putCursorHere(1,0) call node.putCursorHere(1,0)
if p.isUnixHiddenFile() if l:p.isUnixHiddenFile()
let g:NERDTreeShowHidden = showhidden let g:NERDTreeShowHidden = showhidden
endif endif
endfunction endfunction