mirror of
https://github.com/amix/vimrc
synced 2025-08-01 02:15:01 +08:00
Updated plugins
This commit is contained in:
@ -7,7 +7,12 @@
|
||||
in an unordered list. The format is:
|
||||
- **.PATCH**: Pull Request Title (PR Author) [PR Number](Link to PR)
|
||||
-->
|
||||
#### 6.5
|
||||
- **.0**: `NERDTreeToggle <start-directory>` always sets NERDTree root. (PhilRunninger) [#1083](https://github.com/preservim/nerdtree/pull/1083)
|
||||
#### 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)
|
||||
- **.1**: Ensure backward compatibility. v:t_func is not available before Vim 8.0 (Phil Runninger)
|
||||
|
@ -169,8 +169,11 @@ function! nerdtree#exec(cmd, ignoreAll) abort
|
||||
if a:ignoreAll
|
||||
set eventignore=all
|
||||
endif
|
||||
exec a:cmd
|
||||
let &eventignore = old_ei
|
||||
try
|
||||
exec a:cmd
|
||||
finally
|
||||
let &eventignore = old_ei
|
||||
endtry
|
||||
endfunction
|
||||
|
||||
" FUNCTION: nerdtree#has_opt(options, name) {{{2
|
||||
|
@ -284,15 +284,16 @@ endfunction
|
||||
" FUNCTION: s:findAndRevealPath(pathStr) {{{1
|
||||
function! s:findAndRevealPath(pathStr) abort
|
||||
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)
|
||||
call nerdtree#echoWarning('no file for the current buffer')
|
||||
return
|
||||
endif
|
||||
|
||||
if !filereadable(l:pathStr)
|
||||
let l:pathStr = fnamemodify(l:pathStr, ':h')
|
||||
endif
|
||||
|
||||
try
|
||||
let l:pathStr = g:NERDTreePath.Resolve(l:pathStr)
|
||||
let l:pathObj = g:NERDTreePath.New(l:pathStr)
|
||||
|
@ -122,8 +122,9 @@ The following features and functionality are provided by the NERDTree:
|
||||
|
||||
:NERDTreeToggle [<start-directory> | <bookmark>] *:NERDTreeToggle*
|
||||
If a NERDTree already exists for this tab, it is reopened and rendered
|
||||
again. If no NERDTree exists for this tab then this command acts the
|
||||
same as the |:NERDTree| command.
|
||||
again. If <start-directory> or <bookmark> is given, the root of NERDTree
|
||||
is set to that path. If no NERDTree exists for this tab then this command
|
||||
acts the same as the |:NERDTree| command.
|
||||
|
||||
:NERDTreeToggleVCS [<start-directory> | <bookmark>] *:NERDTreeToggleVCS*
|
||||
Like |:NERDTreeToggle|, but searches up the directory tree to find the top of
|
||||
|
@ -333,14 +333,17 @@ function! s:Creator._tabpagevar(tabnr, var)
|
||||
let old_ei = &eventignore
|
||||
set eventignore=all
|
||||
|
||||
exec 'tabnext ' . a:tabnr
|
||||
let v = -1
|
||||
if exists('t:' . a:var)
|
||||
exec 'let v = t:' . a:var
|
||||
endif
|
||||
exec 'tabnext ' . currentTab
|
||||
try
|
||||
exec 'tabnext ' . a:tabnr
|
||||
let v = -1
|
||||
if exists('t:' . a:var)
|
||||
exec 'let v = t:' . a:var
|
||||
endif
|
||||
exec 'tabnext ' . currentTab
|
||||
|
||||
let &eventignore = old_ei
|
||||
finally
|
||||
let &eventignore = old_ei
|
||||
endtry
|
||||
|
||||
return v
|
||||
endfunction
|
||||
@ -352,17 +355,20 @@ function! s:Creator.ToggleTabTree(dir)
|
||||
endfunction
|
||||
|
||||
" FUNCTION: s:Creator.toggleTabTree(dir) {{{1
|
||||
" Toggles the NERD tree. I.e the NERD tree is open, it is closed, if it is
|
||||
" closed it is restored or initialized (if it doesnt exist)
|
||||
" Toggles the NERD tree. I.e if the NERD tree is open, it is closed. If it is
|
||||
" closed, it is restored or initialized. If dir is not empty, it will be set
|
||||
" as the new root.
|
||||
"
|
||||
" Args:
|
||||
" dir: the full path for the root node (is only used if the NERD tree is being
|
||||
" initialized.
|
||||
" dir: the full path for the root node (is used if the NERD tree is being
|
||||
" initialized, or to change the root to a new dir.)
|
||||
function! s:Creator.toggleTabTree(dir)
|
||||
if g:NERDTree.ExistsForTab()
|
||||
if !g:NERDTree.IsOpen()
|
||||
call self._createTreeWin()
|
||||
if !&hidden
|
||||
if !empty(a:dir)
|
||||
call self.createTabTree(a:dir)
|
||||
elseif !&hidden
|
||||
call b:NERDTree.render()
|
||||
endif
|
||||
call b:NERDTree.ui.restoreScreenState()
|
||||
|
@ -141,12 +141,12 @@ function! s:renameBuffer(bufNum, newNodeName, isDirectory)
|
||||
let editStr = g:NERDTreePath.New(a:newNodeName).str({'format': 'Edit'})
|
||||
endif
|
||||
" 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
|
||||
" display a buffer for a new filename.
|
||||
let s:originalTabNumber = tabpagenr()
|
||||
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(s:originalWindowNumber . 'wincmd w', 1)
|
||||
" 3. We don't need a previous buffer anymore
|
||||
@ -196,6 +196,11 @@ function! NERDTreeMoveNode()
|
||||
let curNode = g:NERDTreeFileNode.GetSelected()
|
||||
let prompt = s:inputPrompt('move')
|
||||
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 ==# ''
|
||||
call nerdtree#echo('Node Renaming Aborted.')
|
||||
|
Reference in New Issue
Block a user