File tree Expand file tree Collapse file tree 3 files changed +21
-0
lines changed Expand file tree Collapse file tree 3 files changed +21
-0
lines changed Original file line number Diff line number Diff line change @@ -1545,6 +1545,15 @@ node.open.vertical() *nvim-tree-api.node.open.vertical()*
1545
1545
node.open.horizontal() *nvim-tree-api.node.open.horizontal()*
1546
1546
| nvim-tree-api.node.edit() | , file will be opened in a new horizontal split.
1547
1547
1548
+ node.open.drop() *nvim-tree-api.node.open.tab()*
1549
+ Switch to window with selected file if it exists.
1550
+ Open file in current window otherwise.
1551
+ See: `:h :drop`.
1552
+
1553
+ File: open file using `:drop `
1554
+ Folder: expand or collapse
1555
+ Root: change directory up
1556
+
1548
1557
node.open.tab() *nvim-tree-api.node.open.tab()*
1549
1558
| nvim-tree-api.node.edit() | , file will be opened in a new tab.
1550
1559
Original file line number Diff line number Diff line change @@ -148,6 +148,13 @@ local function open_file_in_tab(filename)
148
148
vim .cmd (" tabe " .. vim .fn .fnameescape (filename ))
149
149
end
150
150
151
+ local function drop (filename )
152
+ if M .quit_on_open then
153
+ view .close ()
154
+ end
155
+ vim .cmd (" drop " .. vim .fn .fnameescape (filename ))
156
+ end
157
+
151
158
local function tab_drop (filename )
152
159
if M .quit_on_open then
153
160
view .close ()
@@ -291,6 +298,10 @@ function M.fn(mode, filename)
291
298
return open_file_in_tab (filename )
292
299
end
293
300
301
+ if mode == " drop" then
302
+ return drop (filename )
303
+ end
304
+
294
305
if mode == " tab_drop" then
295
306
return tab_drop (filename )
296
307
end
Original file line number Diff line number Diff line change @@ -162,6 +162,7 @@ local function open_preview(node)
162
162
end
163
163
164
164
Api .node .open .edit = wrap_node (open_or_expand_or_dir_up " edit" )
165
+ Api .node .open .drop = wrap_node (open_or_expand_or_dir_up " drop" )
165
166
Api .node .open .tab_drop = wrap_node (open_or_expand_or_dir_up " tab_drop" )
166
167
Api .node .open .replace_tree_buffer = wrap_node (open_or_expand_or_dir_up " edit_in_place" )
167
168
Api .node .open .no_window_picker = wrap_node (open_or_expand_or_dir_up " edit_no_picker" )
You can’t perform that action at this time.
0 commit comments