commit 435861ee69becb4f6c780bf7daedb18fdf160815
parent a0e49c9b117d68dbc3e308b79529f8a3ab18e0f8
Author: Hieu Nguyen <hieu.nguyen@iteratec.de>
Date: Mon, 9 Apr 2018 19:08:09 +0200
Support revealing file and executing file with xdg-open for Linux
Diffstat:
1 file changed, 23 insertions(+), 0 deletions(-)
diff --git a/nerdtree_plugin/fs_menu.vim b/nerdtree_plugin/fs_menu.vim
@@ -29,6 +29,11 @@ if has("gui_mac") || has("gui_macvim") || has("mac")
call NERDTreeAddMenuItem({'text': '(q)uicklook the current node', 'shortcut': 'q', 'callback': 'NERDTreeQuickLook'})
endif
+if executable("xdg-open")
+ call NERDTreeAddMenuItem({'text': '(r)eveal the current node in file manager', 'shortcut': 'r', 'callback': 'NERDTreeRevealFileLinux'})
+ call NERDTreeAddMenuItem({'text': '(o)pen the current node with system editor', 'shortcut': 'o', 'callback': 'NERDTreeExecuteFileLinux'})
+endif
+
if g:NERDTreePath.CopyingSupported()
call NERDTreeAddMenuItem({'text': '(c)opy the current node', 'shortcut': 'c', 'callback': 'NERDTreeCopyNode'})
endif
@@ -337,4 +342,22 @@ function! NERDTreeExecuteFile()
endif
endfunction
+" FUNCTION: NERDTreeRevealFileLinux() {{{1
+function! NERDTreeRevealFileLinux()
+ let treenode = g:NERDTreeFileNode.GetSelected()
+ let parentnode = treenode.parent
+ if parentnode != {}
+ call system("xdg-open '" . parentnode.path.str() . "' &")
+ endif
+endfunction
+
+" FUNCTION: NERDTreeExecuteFileLinux() {{{1
+function! NERDTreeExecuteFileLinux()
+ let treenode = g:NERDTreeFileNode.GetSelected()
+ if treenode != {}
+ call system("xdg-open '" . treenode.path.str() . "' &")
+ endif
+endfunction
+
" vim: set sw=4 sts=4 et fdm=marker:
+