mirror of
https://github.com/preservim/nerdtree.git
synced 2025-11-08 11:23:48 -05:00
Compare commits
12 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f7b09634ba | ||
|
|
c2c4a6564f | ||
|
|
881c265438 | ||
|
|
26740d1157 | ||
|
|
6d5e185cef | ||
|
|
3a3636b7cb | ||
|
|
5fbf0d7dba | ||
|
|
901aba632b | ||
|
|
a046ba5c5b | ||
|
|
97e4b47aa3 | ||
|
|
ee79ecfb67 | ||
|
|
b579c7751d |
@@ -8,6 +8,10 @@
|
|||||||
- **.PATCH**: Pull Request Title (PR Author) [PR Number](Link to PR)
|
- **.PATCH**: Pull Request Title (PR Author) [PR Number](Link to PR)
|
||||||
-->
|
-->
|
||||||
#### 6.4
|
#### 6.4
|
||||||
|
- **.6**: NERDTreeFind shows expected message if file doesn't exist e.g. with vim-startify (andys8). [#1081](https://github.com/preservim/nerdtree/pull/1081)
|
||||||
|
- **.5**: Ensure events are (or aren't) being ignored correctly. (PhilRunninger) [#1080](https://github.com/preservim/nerdtree/pull/1080)
|
||||||
|
- **.4**: Prevent overwriting existing files/dirs on node move. (PhilRunninger) [#1079](https://github.com/preservim/nerdtree/pull/1079)
|
||||||
|
- **.3**: Fix regex that finds keyword for minimal menu. (PhilRunninger) [#1075](https://github.com/preservim/nerdtree/pull/1075)
|
||||||
- **.2**: Lint vimscript, fix errors and warnings, add CI job to review PRs (Caleb Maclennan) [#1071](https://github.com/preservim/nerdtree/pull/1071)
|
- **.2**: Lint vimscript, fix errors and warnings, add CI job to review PRs (Caleb Maclennan) [#1071](https://github.com/preservim/nerdtree/pull/1071)
|
||||||
- **.1**: Ensure backward compatibility. v:t_func is not available before Vim 8.0 (Phil Runninger)
|
- **.1**: Ensure backward compatibility. v:t_func is not available before Vim 8.0 (Phil Runninger)
|
||||||
- **.0**: Allow use of function references as callbacks (HiPhish) [#1067](https://github.com/preservim/nerdtree/pull/1067)
|
- **.0**: Allow use of function references as callbacks (HiPhish) [#1067](https://github.com/preservim/nerdtree/pull/1067)
|
||||||
|
|||||||
@@ -169,8 +169,11 @@ function! nerdtree#exec(cmd, ignoreAll) abort
|
|||||||
if a:ignoreAll
|
if a:ignoreAll
|
||||||
set eventignore=all
|
set eventignore=all
|
||||||
endif
|
endif
|
||||||
exec a:cmd
|
try
|
||||||
let &eventignore = old_ei
|
exec a:cmd
|
||||||
|
finally
|
||||||
|
let &eventignore = old_ei
|
||||||
|
endtry
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
" FUNCTION: nerdtree#has_opt(options, name) {{{2
|
" FUNCTION: nerdtree#has_opt(options, name) {{{2
|
||||||
|
|||||||
@@ -284,15 +284,16 @@ endfunction
|
|||||||
" FUNCTION: s:findAndRevealPath(pathStr) {{{1
|
" FUNCTION: s:findAndRevealPath(pathStr) {{{1
|
||||||
function! s:findAndRevealPath(pathStr) abort
|
function! s:findAndRevealPath(pathStr) abort
|
||||||
let l:pathStr = !empty(a:pathStr) ? a:pathStr : expand('%:p')
|
let l:pathStr = !empty(a:pathStr) ? a:pathStr : expand('%:p')
|
||||||
if !filereadable(l:pathStr)
|
|
||||||
let l:pathStr = fnamemodify(l:pathStr, ':h')
|
|
||||||
endif
|
|
||||||
|
|
||||||
if empty(l:pathStr)
|
if empty(l:pathStr)
|
||||||
call nerdtree#echoWarning('no file for the current buffer')
|
call nerdtree#echoWarning('no file for the current buffer')
|
||||||
return
|
return
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
if !filereadable(l:pathStr)
|
||||||
|
let l:pathStr = fnamemodify(l:pathStr, ':h')
|
||||||
|
endif
|
||||||
|
|
||||||
try
|
try
|
||||||
let l:pathStr = g:NERDTreePath.Resolve(l:pathStr)
|
let l:pathStr = g:NERDTreePath.Resolve(l:pathStr)
|
||||||
let l:pathObj = g:NERDTreePath.New(l:pathStr)
|
let l:pathObj = g:NERDTreePath.New(l:pathStr)
|
||||||
|
|||||||
@@ -333,14 +333,17 @@ function! s:Creator._tabpagevar(tabnr, var)
|
|||||||
let old_ei = &eventignore
|
let old_ei = &eventignore
|
||||||
set eventignore=all
|
set eventignore=all
|
||||||
|
|
||||||
exec 'tabnext ' . a:tabnr
|
try
|
||||||
let v = -1
|
exec 'tabnext ' . a:tabnr
|
||||||
if exists('t:' . a:var)
|
let v = -1
|
||||||
exec 'let v = t:' . a:var
|
if exists('t:' . a:var)
|
||||||
endif
|
exec 'let v = t:' . a:var
|
||||||
exec 'tabnext ' . currentTab
|
endif
|
||||||
|
exec 'tabnext ' . currentTab
|
||||||
|
|
||||||
let &eventignore = old_ei
|
finally
|
||||||
|
let &eventignore = old_ei
|
||||||
|
endtry
|
||||||
|
|
||||||
return v
|
return v
|
||||||
endfunction
|
endfunction
|
||||||
|
|||||||
@@ -62,7 +62,7 @@ function! s:MenuController._echoPrompt()
|
|||||||
|
|
||||||
if self.isMinimal()
|
if self.isMinimal()
|
||||||
let selection = self.menuItems[self.selection].text
|
let selection = self.menuItems[self.selection].text
|
||||||
let keyword = matchstr(selection, '\([^ ]*')
|
let keyword = matchstr(selection, '[^ ]*([^ ]*')
|
||||||
|
|
||||||
let shortcuts = map(copy(self.menuItems), "v:val['shortcut']")
|
let shortcuts = map(copy(self.menuItems), "v:val['shortcut']")
|
||||||
let shortcuts[self.selection] = ' ' . keyword . ' '
|
let shortcuts[self.selection] = ' ' . keyword . ' '
|
||||||
|
|||||||
@@ -141,12 +141,12 @@ function! s:renameBuffer(bufNum, newNodeName, isDirectory)
|
|||||||
let editStr = g:NERDTreePath.New(a:newNodeName).str({'format': 'Edit'})
|
let editStr = g:NERDTreePath.New(a:newNodeName).str({'format': 'Edit'})
|
||||||
endif
|
endif
|
||||||
" 1. ensure that a new buffer is loaded
|
" 1. ensure that a new buffer is loaded
|
||||||
call nerdtree#exec('badd ' . quotedFileName, 1)
|
call nerdtree#exec('badd ' . quotedFileName, 0)
|
||||||
" 2. ensure that all windows which display the just deleted filename
|
" 2. ensure that all windows which display the just deleted filename
|
||||||
" display a buffer for a new filename.
|
" display a buffer for a new filename.
|
||||||
let s:originalTabNumber = tabpagenr()
|
let s:originalTabNumber = tabpagenr()
|
||||||
let s:originalWindowNumber = winnr()
|
let s:originalWindowNumber = winnr()
|
||||||
call nerdtree#exec('tabdo windo if winbufnr(0) ==# ' . a:bufNum . " | exec ':e! " . editStr . "' | endif", 1)
|
call nerdtree#exec('tabdo windo if winbufnr(0) ==# ' . a:bufNum . " | exec ':e! " . editStr . "' | endif", 0)
|
||||||
call nerdtree#exec('tabnext ' . s:originalTabNumber, 1)
|
call nerdtree#exec('tabnext ' . s:originalTabNumber, 1)
|
||||||
call nerdtree#exec(s:originalWindowNumber . 'wincmd w', 1)
|
call nerdtree#exec(s:originalWindowNumber . 'wincmd w', 1)
|
||||||
" 3. We don't need a previous buffer anymore
|
" 3. We don't need a previous buffer anymore
|
||||||
@@ -196,6 +196,11 @@ function! NERDTreeMoveNode()
|
|||||||
let curNode = g:NERDTreeFileNode.GetSelected()
|
let curNode = g:NERDTreeFileNode.GetSelected()
|
||||||
let prompt = s:inputPrompt('move')
|
let prompt = s:inputPrompt('move')
|
||||||
let newNodePath = input(prompt, curNode.path.str(), 'file')
|
let newNodePath = input(prompt, curNode.path.str(), 'file')
|
||||||
|
while filereadable(newNodePath)
|
||||||
|
call nerdtree#echoWarning('This destination already exists. Try again.')
|
||||||
|
let newNodePath = input(prompt, curNode.path.str(), 'file')
|
||||||
|
endwhile
|
||||||
|
|
||||||
|
|
||||||
if newNodePath ==# ''
|
if newNodePath ==# ''
|
||||||
call nerdtree#echo('Node Renaming Aborted.')
|
call nerdtree#echo('Node Renaming Aborted.')
|
||||||
|
|||||||
Reference in New Issue
Block a user