diff options
author | Sam Chudnick <sam@chudnick.com> | 2023-06-11 07:54:59 -0400 |
---|---|---|
committer | Sam Chudnick <sam@chudnick.com> | 2023-06-11 07:54:59 -0400 |
commit | 3adcf542289a0883924ae9b9be8b898c36702c95 (patch) | |
tree | f02166ef4c95161ffa994eb1a3e5729c93c2c66b /.vim/pack/vendor/start/nerdtree/doc | |
parent | dfcc303e7cc284a45f55bae81ed888dc256432b8 (diff) |
Add some Vim plugins
Diffstat (limited to '.vim/pack/vendor/start/nerdtree/doc')
-rw-r--r-- | .vim/pack/vendor/start/nerdtree/doc/NERDTree.txt | 1534 | ||||
-rw-r--r-- | .vim/pack/vendor/start/nerdtree/doc/tags | 143 |
2 files changed, 1677 insertions, 0 deletions
diff --git a/.vim/pack/vendor/start/nerdtree/doc/NERDTree.txt b/.vim/pack/vendor/start/nerdtree/doc/NERDTree.txt new file mode 100644 index 0000000..55c25cd --- /dev/null +++ b/.vim/pack/vendor/start/nerdtree/doc/NERDTree.txt | |||
@@ -0,0 +1,1534 @@ | |||
1 | *NERDTree.txt* A tree explorer plugin to rule the Vim world. Bwahahaha!! | ||
2 | |||
3 | # #### #### ~ | ||
4 | ### \/#|### |/#### ~ | ||
5 | d8 888 ##\/#/ \||/##/_/##/_# ~ | ||
6 | d88 888 ee ,e e, ### \/###|/ \/ # ### ~ | ||
7 | d88888 888 88b d88 88b ##_\_#\_\## | #/###_/_#### ~ | ||
8 | 888 888 888 888 , ## #### # \ #| / #### ##/## ~ | ||
9 | 888 888 888 "YeeP" __#_--###`. |{,###---###-~ ~ | ||
10 | \ % @% ~ | ||
11 | Y88b Y88 888'Y88 888 88e 888 88e \%@% 88P'888'Y88 ~ | ||
12 | Y88b Y8 888 ,'Y 888 888D 888 888b %o% P' 888 'Y 888,8, ,e e, ,e e, ~ | ||
13 | b Y88b Y 888C8 888 88" 888 8888D %@% 888 888 " d88 88b d88 88b ~ | ||
14 | 8b Y88b 888 ",d 888 b, 888 888P %@% 888 888 888 , 888 , ~ | ||
15 | 88b Y88b 888,d88 888 88b, 888 88" %@% 888 888 "YeeP" "YeeP" ~ | ||
16 | , -=-%{@%-^- _ ~ | ||
17 | ejm `} Reference Manual ~ | ||
18 | { ~ | ||
19 | ============================================================================== | ||
20 | CONTENTS *NERDTree-contents* | ||
21 | |||
22 | 1.Intro...................................|NERDTree| | ||
23 | 2.Functionality provided..................|NERDTreeFunctionality| | ||
24 | 2.1.Global commands...................|NERDTreeGlobalCommands| | ||
25 | 2.2.Bookmarks.........................|NERDTreeBookmarks| | ||
26 | 2.2.1.The bookmark table..........|NERDTreeBookmarkTable| | ||
27 | 2.2.2.Bookmark commands...........|NERDTreeBookmarkCommands| | ||
28 | 2.2.3.Invalid bookmarks...........|NERDTreeInvalidBookmarks| | ||
29 | 2.3.NERDTree mappings.................|NERDTreeMappings| | ||
30 | 2.4.The NERDTree menu.................|NERDTreeMenu| | ||
31 | 3.Settings................................|NERDTreeSettings| | ||
32 | 3.1.Settings summary..................|NERDTreeSettingsSummary| | ||
33 | 3.2.Settings details..................|NERDTreeSettingsDetails| | ||
34 | 4.The NERDTree API........................|NERDTreeAPI| | ||
35 | 4.1.Key map API.......................|NERDTreeKeymapAPI| | ||
36 | 4.2.Menu API..........................|NERDTreeMenuAPI| | ||
37 | 4.3.Menu API..........................|NERDTreeAddPathFilter()| | ||
38 | 4.4.Path Listener API.................|NERDTreePathListenerAPI| | ||
39 | 5.About...................................|NERDTreeAbout| | ||
40 | 6.License.................................|NERDTreeLicense| | ||
41 | |||
42 | ============================================================================== | ||
43 | 1. Intro *NERDTree* | ||
44 | |||
45 | What is this "NERDTree"?? | ||
46 | |||
47 | The NERDTree allows you to explore your filesystem and to open files and | ||
48 | directories. It presents the filesystem to you in the form of a tree which you | ||
49 | manipulate with the keyboard and/or mouse. It also allows you to perform | ||
50 | simple filesystem operations. | ||
51 | |||
52 | The following features and functionality are provided by the NERDTree: | ||
53 | * Files and directories are displayed in a hierarchical tree structure | ||
54 | * Different highlighting is provided for the following types of nodes: | ||
55 | * files | ||
56 | * directories | ||
57 | * sym-links | ||
58 | * windows .lnk files | ||
59 | * read-only files | ||
60 | * executable files | ||
61 | * Many (customisable) mappings are provided to manipulate the tree: | ||
62 | * Mappings to open/close/explore directory nodes | ||
63 | * Mappings to open files in new/existing windows/tabs | ||
64 | * Mappings to change the current root of the tree | ||
65 | * Mappings to navigate around the tree | ||
66 | * ... | ||
67 | * Directories and files can be bookmarked. | ||
68 | * Most NERDTree navigation can also be done with the mouse | ||
69 | * Filtering of tree content (can be toggled at runtime) | ||
70 | * custom file filters to prevent e.g. vim backup files being displayed | ||
71 | * optional displaying of hidden files (. files) | ||
72 | * files can be "turned off" so that only directories are displayed | ||
73 | * The position and size of the NERDTree window can be customised | ||
74 | * The order in which the nodes in the tree are listed can be customised. | ||
75 | * A model of your filesystem is created/maintained as you explore it. This | ||
76 | has several advantages: | ||
77 | * All filesystem information is cached and is only re-read on demand | ||
78 | * If you revisit a part of the tree that you left earlier in your | ||
79 | session, the directory nodes will be opened/closed as you left them | ||
80 | * The script remembers the cursor position and window position in the NERD | ||
81 | tree so you can toggle it off (or just close the tree window) and then | ||
82 | reopen it (with NERDTreeToggle) the NERDTree window will appear exactly | ||
83 | as you left it | ||
84 | * You can have a separate NERDTree for each tab, share trees across tabs, | ||
85 | or a mix of both. | ||
86 | * By default the script overrides the default file browser (netrw), so if | ||
87 | you :edit a directory a (slightly modified) NERDTree will appear in the | ||
88 | current window | ||
89 | * A programmable menu system is provided (simulates right clicking on a | ||
90 | node) | ||
91 | * one default menu plugin is provided to perform basic filesystem | ||
92 | operations (create/delete/move/copy files/directories) | ||
93 | * There's an API for adding your own keymappings | ||
94 | |||
95 | |||
96 | ============================================================================== | ||
97 | 2. Functionality provided *NERDTreeFunctionality* | ||
98 | |||
99 | ------------------------------------------------------------------------------ | ||
100 | 2.1. Global Commands *NERDTreeGlobalCommands* | ||
101 | |||
102 | :NERDTree [<start-directory> | <bookmark>] *:NERDTree* | ||
103 | Opens a fresh NERDTree. The root of the tree depends on the argument | ||
104 | given. There are 3 cases: If no argument is given, the current directory | ||
105 | will be used. If a directory is given, that will be used. If a bookmark | ||
106 | name is given, the corresponding directory will be used. For example: > | ||
107 | :NERDTree /home/marty/vim7/src | ||
108 | :NERDTree foo (foo is the name of a bookmark) | ||
109 | < | ||
110 | :NERDTreeVCS [<start-directory> | <bookmark>] *:NERDTreeVCS* | ||
111 | Like |:NERDTree|, but searches up the directory tree to find the top of | ||
112 | the version control system repository, and roots the NERDTree there. It | ||
113 | works with Git, Subversion, Mercurial, Bazaar, and Darcs repositories. A | ||
114 | couple of examples: > | ||
115 | :NERDTreeVCS /home/marty/nerdtree/doc (opens /home/marty/nerdtree) | ||
116 | :NERDTreeVCS (opens root of repository containing CWD) | ||
117 | < | ||
118 | :NERDTreeFromBookmark <bookmark> *:NERDTreeFromBookmark* | ||
119 | Opens a fresh NERDTree with the root initialized to the directory for | ||
120 | <bookmark>. The only reason to use this command over :NERDTree is for | ||
121 | the completion (which is for bookmarks rather than directories). | ||
122 | |||
123 | :NERDTreeToggle [<start-directory> | <bookmark>] *:NERDTreeToggle* | ||
124 | If a NERDTree already exists for this tab, it is reopened and rendered | ||
125 | again. If <start-directory> or <bookmark> is given, the root of NERDTree | ||
126 | is set to that path. If no NERDTree exists for this tab then this command | ||
127 | acts the same as the |:NERDTree| command. | ||
128 | |||
129 | :NERDTreeToggleVCS [<start-directory> | <bookmark>] *:NERDTreeToggleVCS* | ||
130 | Like |:NERDTreeToggle|, but searches up the directory tree to find the top of | ||
131 | the version control system repository, and roots the NERDTree there. It | ||
132 | works with Git, Subversion, Mercurial, Bazaar, and Darcs repositories. A | ||
133 | couple of examples: > | ||
134 | :NERDTreeToggleVCS /home/marty/nerdtree/doc (opens /home/marty/nerdtree) | ||
135 | :NERDTreeToggleVCS (opens root of repository containing CWD) | ||
136 | |||
137 | :NERDTreeFocus *:NERDTreeFocus* | ||
138 | Opens (or reopens) the NERDTree if it is not currently visible; | ||
139 | otherwise, the cursor is moved to the already-open NERDTree. | ||
140 | |||
141 | :NERDTreeMirror *:NERDTreeMirror* | ||
142 | Shares an existing NERDTree, from another tab, in the current tab. | ||
143 | Changes made to one tree are reflected in both as they are actually the | ||
144 | same buffer. | ||
145 | |||
146 | If only one other NERDTree exists, that tree is automatically mirrored. | ||
147 | If more than one exists, the script will ask which tree to mirror. | ||
148 | |||
149 | :NERDTreeClose *:NERDTreeClose* | ||
150 | Close the NERDTree in this tab. | ||
151 | |||
152 | :NERDTreeFind [<path>] *:NERDTreeFind* | ||
153 | Without the optional argument, find and reveal the file for the active | ||
154 | buffer in the NERDTree window. With the <path> argument, find and | ||
155 | reveal the specified path. | ||
156 | |||
157 | Focus will be shifted to the NERDTree window, and the cursor will be | ||
158 | placed on the tree node for the determined path. If a NERDTree for the | ||
159 | current tab does not exist, a new one will be initialized. | ||
160 | |||
161 | :NERDTreeCWD *:NERDTreeCWD* | ||
162 | Change the NERDTree root to the current working directory. If no | ||
163 | NERDTree exists for this tab, a new one is opened. | ||
164 | |||
165 | :NERDTreeRefreshRoot *:NERDTreeRefreshRoot* | ||
166 | Refreshes the NERDTree root node. | ||
167 | |||
168 | ------------------------------------------------------------------------------ | ||
169 | 2.2. Bookmarks *NERDTreeBookmarks* | ||
170 | |||
171 | Bookmarks in the NERDTree are a way to tag files or directories of interest. | ||
172 | For example, you could use bookmarks to tag all of your project directories. | ||
173 | |||
174 | ------------------------------------------------------------------------------ | ||
175 | 2.2.1. The Bookmark Table *NERDTreeBookmarkTable* | ||
176 | |||
177 | If the bookmark table is active (see |NERDTree-B| and | ||
178 | |NERDTreeShowBookmarks|), it will be rendered above the tree. You can double | ||
179 | click bookmarks or use the |NERDTree-o| mapping to activate them. See also, | ||
180 | |NERDTree-t| and |NERDTree-T| | ||
181 | |||
182 | ------------------------------------------------------------------------------ | ||
183 | 2.2.2. Bookmark commands *NERDTreeBookmarkCommands* | ||
184 | |||
185 | Note: The following commands are only available within the NERDTree buffer. | ||
186 | |||
187 | :Bookmark [<name>] | ||
188 | Bookmark the current node as <name>. If there is already a <name> | ||
189 | bookmark, it is overwritten. <name> must not contain spaces. | ||
190 | If <name> is not provided, it defaults to the file or directory name. | ||
191 | For directories, a trailing slash is present. | ||
192 | |||
193 | :BookmarkToRoot <bookmark> | ||
194 | Make the directory corresponding to <bookmark> the new root. If a treenode | ||
195 | corresponding to <bookmark> is already cached somewhere in the tree then | ||
196 | the current tree will be used, otherwise a fresh tree will be opened. | ||
197 | Note that if <bookmark> points to a file then its parent will be used | ||
198 | instead. | ||
199 | |||
200 | :RevealBookmark <bookmark> | ||
201 | If the node is cached under the current root then it will be revealed | ||
202 | (i.e. directory nodes above it will be opened) and the cursor will be | ||
203 | placed on it. | ||
204 | |||
205 | :OpenBookmark <name> | ||
206 | The Bookmark named <name> is opened as if |NERDTree-o| was applied to | ||
207 | its entry in the Bookmark table. If the Bookmark points to a directory, | ||
208 | it is made the new root of the current NERDTree. If the Bookmark points | ||
209 | to a file, that file is opened for editing in another window. | ||
210 | |||
211 | :ClearBookmarks [<bookmarks>] | ||
212 | Remove all the given bookmarks. If no bookmarks are given then remove all | ||
213 | bookmarks on the current node. | ||
214 | |||
215 | :ClearAllBookmarks | ||
216 | Remove all bookmarks. | ||
217 | |||
218 | :EditBookmarks | ||
219 | Opens the bookmarks file for manual editing, e.g. for removing invalid | ||
220 | bookmarks. | ||
221 | |||
222 | :ReadBookmarks | ||
223 | Re-read the bookmarks in the |NERDTreeBookmarksFile|. | ||
224 | |||
225 | See also |:NERDTree| and |:NERDTreeFromBookmark|. | ||
226 | |||
227 | ------------------------------------------------------------------------------ | ||
228 | 2.2.3. Invalid Bookmarks *NERDTreeInvalidBookmarks* | ||
229 | |||
230 | If invalid bookmarks are detected, the script will issue an error message and | ||
231 | the invalid bookmarks will become unavailable for use. | ||
232 | |||
233 | These bookmarks will still be stored in the bookmarks file (see | ||
234 | |NERDTreeBookmarksFile|), down at the bottom. There will always be a blank line | ||
235 | after the valid bookmarks but before the invalid ones. | ||
236 | |||
237 | Each line in the bookmarks file represents one bookmark. The proper format is: | ||
238 | <bookmark name><space><full path to the bookmark location> | ||
239 | |||
240 | You can use the :EditBookmarks command to open the bookmarks file for editing. | ||
241 | After you have corrected any invalid bookmarks, either restart vim, or run | ||
242 | :ReadBookmarks from the NERDTree window. | ||
243 | |||
244 | ------------------------------------------------------------------------------ | ||
245 | 2.3. NERDTree Mappings *NERDTreeMappings* | ||
246 | |||
247 | Default~ | ||
248 | Key Description help-tag~ | ||
249 | |||
250 | o........Open files, directories and bookmarks......................|NERDTree-o| | ||
251 | go.......Open selected file, but leave cursor in the NERDTree......|NERDTree-go| | ||
252 | Find selected bookmark directory in current NERDTree | ||
253 | t........Open selected node/bookmark in a new tab...................|NERDTree-t| | ||
254 | T........Same as 't' but keep the focus on the current tab..........|NERDTree-T| | ||
255 | i........Open selected file in a split window.......................|NERDTree-i| | ||
256 | gi.......Same as i, but leave the cursor on the NERDTree...........|NERDTree-gi| | ||
257 | s........Open selected file in a new vsplit.........................|NERDTree-s| | ||
258 | gs.......Same as s, but leave the cursor on the NERDTree...........|NERDTree-gs| | ||
259 | <CR>.....User-definable custom open action.......................|NERDTree-<CR>| | ||
260 | O........Recursively open the selected directory....................|NERDTree-O| | ||
261 | x........Close the current nodes parent.............................|NERDTree-x| | ||
262 | X........Recursively close all children of the current node.........|NERDTree-X| | ||
263 | e........Edit the current directory.................................|NERDTree-e| | ||
264 | |||
265 | double-click....same as |NERDTree-o|. | ||
266 | middle-click....same as |NERDTree-i| for files, and |NERDTree-e| for directories. | ||
267 | |||
268 | D........Delete the current bookmark ...............................|NERDTree-D| | ||
269 | |||
270 | P........Jump to the root node......................................|NERDTree-P| | ||
271 | p........Jump to current nodes parent...............................|NERDTree-p| | ||
272 | K........Jump up inside directories at the current tree depth.......|NERDTree-K| | ||
273 | J........Jump down inside directories at the current tree depth.....|NERDTree-J| | ||
274 | <C-J>....Jump down to next sibling of the current directory.......|NERDTree-C-J| | ||
275 | <C-K>....Jump up to previous sibling of the current directory.....|NERDTree-C-K| | ||
276 | |||
277 | C........Change the tree root to the selected directory.............|NERDTree-C| | ||
278 | u........Move the tree root up one directory........................|NERDTree-u| | ||
279 | U........Same as 'u' except the old root node is left open..........|NERDTree-U| | ||
280 | r........Recursively refresh the current directory..................|NERDTree-r| | ||
281 | R........Recursively refresh the current root.......................|NERDTree-R| | ||
282 | m........Display the NERDTree menu..................................|NERDTree-m| | ||
283 | cd.......Change the CWD to the directory of the selected node......|NERDTree-cd| | ||
284 | CD.......Change tree root to the CWD...............................|NERDTree-CD| | ||
285 | |||
286 | I........Toggle whether hidden files displayed......................|NERDTree-I| | ||
287 | f........Toggle whether the file filters are used...................|NERDTree-f| | ||
288 | F........Toggle whether files are displayed.........................|NERDTree-F| | ||
289 | B........Toggle whether the bookmark table is displayed.............|NERDTree-B| | ||
290 | |||
291 | q........Close the NERDTree window..................................|NERDTree-q| | ||
292 | A........Zoom (maximize/minimize) the NERDTree window...............|NERDTree-A| | ||
293 | ?........Toggle the display of the quick help.......................|NERDTree-?| | ||
294 | |||
295 | ------------------------------------------------------------------------------ | ||
296 | *NERDTree-o* | ||
297 | Default key: o | ||
298 | Map setting: NERDTreeMapActivateNode | ||
299 | Applies to: files and directories. | ||
300 | |||
301 | If a file node is selected, it is opened in the previous window. | ||
302 | |||
303 | If a directory is selected it is opened or closed depending on its current | ||
304 | state. | ||
305 | |||
306 | If a bookmark that links to a directory is selected then that directory | ||
307 | becomes the new root. | ||
308 | |||
309 | If a bookmark that links to a file is selected then that file is opened in the | ||
310 | previous window. | ||
311 | |||
312 | ------------------------------------------------------------------------------ | ||
313 | *NERDTree-go* | ||
314 | Default key: go | ||
315 | Map setting: NERDTreeMapPreview | ||
316 | Applies to: files. | ||
317 | |||
318 | If a file node or a bookmark that links to a file is selected, it is opened in | ||
319 | the previous window, but the cursor does not move. | ||
320 | |||
321 | If a bookmark that links to a directory is selected then that directory | ||
322 | becomes the new root. | ||
323 | |||
324 | The default key combo for this mapping is "g" + NERDTreeMapActivateNode (see | ||
325 | |NERDTree-o|). | ||
326 | |||
327 | ------------------------------------------------------------------------------ | ||
328 | *NERDTree-t* | ||
329 | Default key: t | ||
330 | Map setting: *NERDTreeMapOpenInTab* | ||
331 | Applies to: files and directories. | ||
332 | |||
333 | Opens the selected file in a new tab. If a directory is selected, a fresh | ||
334 | NERDTree for that directory is opened in a new tab. | ||
335 | |||
336 | If a bookmark which points to a directory is selected, open a NERDTree for | ||
337 | that directory in a new tab. If the bookmark points to a file, open that file | ||
338 | in a new tab. | ||
339 | |||
340 | ------------------------------------------------------------------------------ | ||
341 | *NERDTree-T* | ||
342 | Default key: T | ||
343 | Map setting: *NERDTreeMapOpenInTabSilent* | ||
344 | Applies to: files and directories. | ||
345 | |||
346 | The same as |NERDTree-t| except that the focus is kept in the current tab. | ||
347 | |||
348 | ------------------------------------------------------------------------------ | ||
349 | *NERDTree-i* | ||
350 | Default key: i | ||
351 | Map setting: *NERDTreeMapOpenSplit* | ||
352 | Applies to: files, and bookmarks pointing to files. | ||
353 | |||
354 | Opens the selected file in a new split window and puts the cursor in the new | ||
355 | window. | ||
356 | |||
357 | ------------------------------------------------------------------------------ | ||
358 | *NERDTree-gi* | ||
359 | Default key: gi | ||
360 | Map setting: *NERDTreeMapPreviewSplit* | ||
361 | Applies to: files, and bookmarks pointing to files. | ||
362 | |||
363 | The same as |NERDTree-i| except that the cursor is not moved. | ||
364 | |||
365 | The default key combo for this mapping is "g" + NERDTreeMapOpenSplit (see | ||
366 | |NERDTree-i|). | ||
367 | |||
368 | ------------------------------------------------------------------------------ | ||
369 | *NERDTree-s* | ||
370 | Default key: s | ||
371 | Map setting: *NERDTreeMapOpenVSplit* | ||
372 | Applies to: files, and bookmarks pointing to files. | ||
373 | |||
374 | Opens the selected file in a new vertically split window and puts the cursor | ||
375 | in the new window. | ||
376 | |||
377 | ------------------------------------------------------------------------------ | ||
378 | *NERDTree-gs* | ||
379 | Default key: gs | ||
380 | Map setting: *NERDTreeMapPreviewVSplit* | ||
381 | Applies to: files, and bookmarks pointing to files. | ||
382 | |||
383 | The same as |NERDTree-s| except that the cursor is not moved. | ||
384 | |||
385 | The default key combo for this mapping is "g" + NERDTreeMapOpenVSplit (see | ||
386 | |NERDTree-s|). | ||
387 | |||
388 | ------------------------------------------------------------------------------ | ||
389 | *NERDTree-<CR>* | ||
390 | Default key: <CR> | ||
391 | Map setting: *NERDTreeMapCustomOpen* | ||
392 | Applies to: files, directories, and bookmarks | ||
393 | |||
394 | Performs a customized open action on the selected node. This allows the user | ||
395 | to define an action that behaves differently from any of the standard | ||
396 | keys. See |NERDTreeCustomOpenArgs| for more details. | ||
397 | ------------------------------------------------------------------------------ | ||
398 | *NERDTree-O* | ||
399 | Default key: O | ||
400 | Map setting: *NERDTreeMapOpenRecursively* | ||
401 | Applies to: directories. | ||
402 | |||
403 | Recursively opens the selected directory. | ||
404 | |||
405 | All files and directories are cached, but if a directory would not be | ||
406 | displayed due to file filters (see |NERDTreeIgnore| |NERDTree-f|) or the | ||
407 | hidden file filter (see |NERDTreeShowHidden|) then its contents are not | ||
408 | cached. This is handy, especially if you have .svn directories. | ||
409 | |||
410 | ------------------------------------------------------------------------------ | ||
411 | *NERDTree-x* | ||
412 | Default key: x | ||
413 | Map setting: *NERDTreeMapCloseDir* | ||
414 | Applies to: files and directories. | ||
415 | |||
416 | Closes the parent of the selected node. | ||
417 | |||
418 | ------------------------------------------------------------------------------ | ||
419 | *NERDTree-X* | ||
420 | Default key: X | ||
421 | Map setting: *NERDTreeMapCloseChildren* | ||
422 | Applies to: directories. | ||
423 | |||
424 | Recursively closes all children of the selected directory. | ||
425 | |||
426 | Tip: To quickly "reset" the tree, use |NERDTree-P| with this mapping. | ||
427 | |||
428 | ------------------------------------------------------------------------------ | ||
429 | *NERDTree-e* | ||
430 | Default key: e | ||
431 | Map setting: *NERDTreeMapOpenExpl* | ||
432 | Applies to: files and directories. | ||
433 | |||
434 | |:edit|s the selected directory, or the selected file's directory. This could | ||
435 | result in a NERDTree or a netrw being opened, depending on | ||
436 | |NERDTreeHijackNetrw|. | ||
437 | |||
438 | ------------------------------------------------------------------------------ | ||
439 | *NERDTree-D* | ||
440 | Default key: D | ||
441 | Map setting: *NERDTreeMapDeleteBookmark* | ||
442 | Applies to: lines in the bookmarks table | ||
443 | |||
444 | Deletes the currently selected bookmark. | ||
445 | |||
446 | ------------------------------------------------------------------------------ | ||
447 | *NERDTree-P* | ||
448 | Default key: P | ||
449 | Map setting: *NERDTreeMapJumpRoot* | ||
450 | Applies to: no restrictions. | ||
451 | |||
452 | Jump to the tree root. | ||
453 | |||
454 | ------------------------------------------------------------------------------ | ||
455 | *NERDTree-p* | ||
456 | Default key: p | ||
457 | Map setting: *NERDTreeMapJumpParent* | ||
458 | Applies to: files and directories. | ||
459 | |||
460 | Jump to the parent node of the selected node. | ||
461 | |||
462 | ------------------------------------------------------------------------------ | ||
463 | *NERDTree-K* | ||
464 | Default key: K | ||
465 | Map setting: *NERDTreeMapJumpFirstChild* | ||
466 | Applies to: files and directories. | ||
467 | |||
468 | Jump to the first child of the current nodes parent. | ||
469 | |||
470 | If the cursor is already on the first node then do the following: | ||
471 | * loop back thru the siblings of the current nodes parent until we find an | ||
472 | open directory with children | ||
473 | * go to the first child of that node | ||
474 | |||
475 | ------------------------------------------------------------------------------ | ||
476 | *NERDTree-J* | ||
477 | Default key: J | ||
478 | Map setting: *NERDTreeMapJumpLastChild* | ||
479 | Applies to: files and directories. | ||
480 | |||
481 | Jump to the last child of the current nodes parent. | ||
482 | |||
483 | If the cursor is already on the last node then do the following: | ||
484 | * loop forward thru the siblings of the current nodes parent until we find | ||
485 | an open directory with children | ||
486 | * go to the last child of that node | ||
487 | |||
488 | ------------------------------------------------------------------------------ | ||
489 | *NERDTree-C-J* | ||
490 | Default key: <C-J> | ||
491 | Map setting: *NERDTreeMapJumpNextSibling* | ||
492 | Applies to: files and directories. | ||
493 | |||
494 | Jump to the next sibling of the selected node. | ||
495 | |||
496 | ------------------------------------------------------------------------------ | ||
497 | *NERDTree-C-K* | ||
498 | Default key: <C-K> | ||
499 | Map setting: *NERDTreeMapJumpPrevSibling* | ||
500 | Applies to: files and directories. | ||
501 | |||
502 | Jump to the previous sibling of the selected node. | ||
503 | |||
504 | ------------------------------------------------------------------------------ | ||
505 | *NERDTree-C* | ||
506 | Default key: C | ||
507 | Map setting: *NERDTreeMapChangeRoot* | ||
508 | Applies to: files and directories. | ||
509 | |||
510 | Make the selected directory node the new tree root. If a file is selected, its | ||
511 | parent is used. | ||
512 | |||
513 | ------------------------------------------------------------------------------ | ||
514 | *NERDTree-u* | ||
515 | Default key: u | ||
516 | Map setting: *NERDTreeMapUpdir* | ||
517 | Applies to: no restrictions. | ||
518 | |||
519 | Move the tree root up a directory (like doing a "cd .."). | ||
520 | |||
521 | ------------------------------------------------------------------------------ | ||
522 | *NERDTree-U* | ||
523 | Default key: U | ||
524 | Map setting: *NERDTreeMapUpdirKeepOpen* | ||
525 | Applies to: no restrictions. | ||
526 | |||
527 | Like |NERDTree-u| except that the old tree root is kept open. | ||
528 | |||
529 | ------------------------------------------------------------------------------ | ||
530 | *NERDTree-r* | ||
531 | Default key: r | ||
532 | Map setting: *NERDTreeMapRefresh* | ||
533 | Applies to: files and directories. | ||
534 | |||
535 | If a directory is selected, recursively refresh that directory, i.e. scan the | ||
536 | filesystem for changes and represent them in the tree. | ||
537 | |||
538 | If a file node is selected then the above is done on it's parent. | ||
539 | |||
540 | ------------------------------------------------------------------------------ | ||
541 | *NERDTree-R* | ||
542 | Default key: R | ||
543 | Map setting: *NERDTreeMapRefreshRoot* | ||
544 | Applies to: no restrictions. | ||
545 | |||
546 | Recursively refresh the tree root. | ||
547 | |||
548 | ------------------------------------------------------------------------------ | ||
549 | *NERDTree-m* | ||
550 | Default key: m | ||
551 | Map setting: *NERDTreeMapMenu* | ||
552 | Applies to: files and directories. | ||
553 | |||
554 | Display the NERDTree menu. See |NERDTreeMenu| for details. | ||
555 | |||
556 | ------------------------------------------------------------------------------ | ||
557 | *NERDTree-cd* | ||
558 | Default key: cd | ||
559 | Map setting: *NERDTreeMapChdir* | ||
560 | Applies to: files and directories. | ||
561 | |||
562 | Change Vim's current working directory to that of the selected node. | ||
563 | |||
564 | ------------------------------------------------------------------------------ | ||
565 | *NERDTree-CD* | ||
566 | Default key: CD | ||
567 | Map setting: *NERDTreeMapCWD* | ||
568 | Applies to: no restrictions. | ||
569 | |||
570 | Change the NERDTree root to Vim's current working directory. | ||
571 | |||
572 | ------------------------------------------------------------------------------ | ||
573 | *NERDTree-I* | ||
574 | Default key: I | ||
575 | Map setting: *NERDTreeMapToggleHidden* | ||
576 | Applies to: no restrictions. | ||
577 | |||
578 | Toggles whether hidden files (i.e. "dot files") are displayed. | ||
579 | |||
580 | ------------------------------------------------------------------------------ | ||
581 | *NERDTree-f* | ||
582 | Default key: f | ||
583 | Map setting: *NERDTreeMapToggleFilters* | ||
584 | Applies to: no restrictions. | ||
585 | |||
586 | Toggles whether file filters are used. See |NERDTreeIgnore| for details. | ||
587 | |||
588 | ------------------------------------------------------------------------------ | ||
589 | *NERDTree-F* | ||
590 | Default key: F | ||
591 | Map setting: *NERDTreeMapToggleFiles* | ||
592 | Applies to: no restrictions. | ||
593 | |||
594 | Toggles whether file nodes are displayed. | ||
595 | |||
596 | ------------------------------------------------------------------------------ | ||
597 | *NERDTree-B* | ||
598 | Default key: B | ||
599 | Map setting: *NERDTreeMapToggleBookmarks* | ||
600 | Applies to: no restrictions. | ||
601 | |||
602 | Toggles whether the bookmarks table is displayed. | ||
603 | |||
604 | ------------------------------------------------------------------------------ | ||
605 | *NERDTree-q* | ||
606 | Default key: q | ||
607 | Map setting: *NERDTreeMapQuit* | ||
608 | Applies to: no restrictions. | ||
609 | |||
610 | Closes the NERDTree window. | ||
611 | |||
612 | ------------------------------------------------------------------------------ | ||
613 | *NERDTree-A* | ||
614 | Default key: A | ||
615 | Map setting: *NERDTreeMapToggleZoom* | ||
616 | Applies to: no restrictions. | ||
617 | |||
618 | Maximize (zoom) and minimize the NERDTree window. | ||
619 | |||
620 | ------------------------------------------------------------------------------ | ||
621 | *NERDTree-?* | ||
622 | Default key: ? | ||
623 | Map setting: *NERDTreeMapHelp* | ||
624 | Applies to: no restrictions. | ||
625 | |||
626 | Toggles whether the quickhelp is displayed. | ||
627 | |||
628 | ------------------------------------------------------------------------------ | ||
629 | 2.3. The NERDTree menu *NERDTreeMenu* | ||
630 | |||
631 | The NERDTree has a menu that can be programmed via the an API (see | ||
632 | |NERDTreeMenuAPI|). The idea is to simulate the "right click" menus that most | ||
633 | file explorers have. | ||
634 | |||
635 | The script comes with two default menu plugins: exec_menuitem.vim and | ||
636 | fs_menu.vim. fs_menu.vim adds some basic filesystem operations to the menu for | ||
637 | creating/deleting/moving/copying files and directories. exec_menuitem.vim | ||
638 | provides a menu item to execute executable files. | ||
639 | |||
640 | Related tags: |NERDTree-m| |NERDTreeApi| | ||
641 | |||
642 | ------------------------------------------------------------------------------ | ||
643 | *NERDTreeMenu-j* | ||
644 | Default key: j | ||
645 | Map option: *NERDTreeMenuDown* | ||
646 | Applies to: The NERDTree menu. | ||
647 | |||
648 | Moves the cursor down. | ||
649 | |||
650 | ------------------------------------------------------------------------------ | ||
651 | *NERDTreeMenu-k* | ||
652 | Default key: k | ||
653 | Map option: *NERDTreeMenuUp* | ||
654 | Applies to: The NERDTree menu. | ||
655 | |||
656 | Moves the cursor up. | ||
657 | |||
658 | ============================================================================== | ||
659 | 3. Customisation *NERDTreeSettings* | ||
660 | |||
661 | |||
662 | ------------------------------------------------------------------------------ | ||
663 | 3.1. Customisation summary *NERDTreeSettingsSummary* | ||
664 | |||
665 | The plugin provides the following settings that can customise the behaviour | ||
666 | the NERDTree. These settings should be set in your vimrc, using `:let`. | ||
667 | |||
668 | |loaded_nerd_tree| Turns off the script. | ||
669 | |||
670 | |NERDTreeAutoCenter| Controls whether the NERDTree window centers | ||
671 | when the cursor moves within a specified | ||
672 | distance to the top/bottom of the window. | ||
673 | |||
674 | |NERDTreeAutoCenterThreshold| Controls the sensitivity of autocentering. | ||
675 | |||
676 | |NERDTreeCaseSensitiveSort| Tells the NERDTree whether to be case | ||
677 | sensitive or not when sorting nodes. | ||
678 | |||
679 | |NERDTreeNaturalSort| Tells the NERDTree whether to use natural sort | ||
680 | order or not when sorting nodes. | ||
681 | |||
682 | |NERDTreeSortHiddenFirst| Tells the NERDTree whether to take the dot at | ||
683 | the beginning of the hidden file names into | ||
684 | account when sorting nodes. | ||
685 | |||
686 | |NERDTreeChDirMode| Tells the NERDTree if/when it should change | ||
687 | vim's current working directory. | ||
688 | |||
689 | |NERDTreeHighlightCursorline| Tell the NERDTree whether to highlight the | ||
690 | current cursor line. | ||
691 | |||
692 | |NERDTreeHijackNetrw| Tell the NERDTree whether to replace the netrw | ||
693 | autocommands for exploring local directories. | ||
694 | |||
695 | |NERDTreeIgnore| Tells the NERDTree which files to ignore. | ||
696 | |||
697 | |NERDTreeRespectWildIgnore| Tells the NERDTree to respect `'wildignore'`. | ||
698 | |||
699 | |NERDTreeBookmarksFile| Where the bookmarks are stored. | ||
700 | |||
701 | |NERDTreeBookmarksSort| Control how the Bookmark table is sorted. | ||
702 | |||
703 | |NERDTreeMarkBookmarks| Render bookmarked nodes with markers. | ||
704 | |||
705 | |NERDTreeMouseMode| Manage the interpretation of mouse clicks. | ||
706 | |||
707 | |NERDTreeQuitOnOpen| Closes the tree window or bookmark table after | ||
708 | opening a file. | ||
709 | |||
710 | |NERDTreeShowBookmarks| Tells the NERDTree whether to display the | ||
711 | bookmarks table on startup. | ||
712 | |||
713 | |NERDTreeShowFiles| Tells the NERDTree whether to display files in | ||
714 | the tree on startup. | ||
715 | |||
716 | |NERDTreeShowHidden| Tells the NERDTree whether to display hidden | ||
717 | files on startup. | ||
718 | |||
719 | |NERDTreeShowLineNumbers| Tells the NERDTree whether to display line | ||
720 | numbers in the tree window. | ||
721 | |||
722 | |NERDTreeSortOrder| Tell the NERDTree how to sort the nodes in the | ||
723 | tree. | ||
724 | |||
725 | |NERDTreeStatusline| Set a statusline for NERDTree windows. | ||
726 | |||
727 | |NERDTreeWinPos| Tells the script where to put the NERDTree | ||
728 | window. | ||
729 | |||
730 | |NERDTreeWinSize| Sets the window size when the NERDTree is | ||
731 | opened. | ||
732 | |||
733 | |NERDTreeWinSizeMax| Sets the maximum window size when the NERDTree | ||
734 | is zoomed. | ||
735 | |||
736 | |NERDTreeMinimalUI| Disables display of the 'Bookmarks' label and | ||
737 | 'Press ? for help' text. | ||
738 | |||
739 | |NERDTreeMinimalMenu| Use a compact menu that fits on a single line | ||
740 | for adding, copying, deleting, etc | ||
741 | |||
742 | |NERDTreeCascadeSingleChildDir| | ||
743 | Collapses on the same line directories that have | ||
744 | only one child directory. | ||
745 | |||
746 | |NERDTreeCascadeOpenSingleChildDir| | ||
747 | Cascade open while selected directory has only | ||
748 | one child that also is a directory. | ||
749 | |||
750 | |NERDTreeAutoDeleteBuffer| Tells the NERDTree to automatically remove a | ||
751 | buffer when a file is being deleted or renamed | ||
752 | via a context menu command. | ||
753 | |||
754 | |NERDTreeCreatePrefix| Specify a prefix to be used when creating the | ||
755 | NERDTree window. | ||
756 | |||
757 | |NERDTreeRemoveFileCmd| Specify a custom shell command to be used when | ||
758 | deleting files. Note that it should include one | ||
759 | space character at the end of the command and it | ||
760 | applies only to files. | ||
761 | |||
762 | |NERDTreeRemoveDirCmd| Specify a custom shell command to be used when | ||
763 | deleting directories. Note that it should | ||
764 | include one space character at the end of the | ||
765 | command and it applies only to directories. | ||
766 | |||
767 | |NERDTreeDirArrowCollapsible| These characters indicate when a directory is | ||
768 | |NERDTreeDirArrowExpandable| either collapsible or expandable. | ||
769 | |||
770 | |NERDTreeNodeDelimiter| A single character that is used to separate the | ||
771 | file or directory name from the rest of the | ||
772 | characters on the line of text. | ||
773 | |||
774 | |NERDTreeCustomOpenArgs| A dictionary with values that control how a node | ||
775 | is opened with the |NERDTree-<CR>| key. | ||
776 | |||
777 | ------------------------------------------------------------------------------ | ||
778 | 3.2. Customisation details *NERDTreeSettingsDetails* | ||
779 | |||
780 | To enable any of the below settings you should put an appropriate > | ||
781 | let <setting>=<value> | ||
782 | <line in your ~/.vimrc. | ||
783 | |||
784 | *loaded_nerd_tree* | ||
785 | If this plugin is making you feel homicidal, it may be a good idea to turn it | ||
786 | off with this line in your vimrc: > | ||
787 | let loaded_nerd_tree=1 | ||
788 | < | ||
789 | ------------------------------------------------------------------------------ | ||
790 | *NERDTreeAutoCenter* | ||
791 | Values: 0 or 1. | ||
792 | Default: 1 | ||
793 | |||
794 | If set to 1, the NERDTree window will center around the cursor if it moves to | ||
795 | within |NERDTreeAutoCenterThreshold| lines of the top/bottom of the window. | ||
796 | |||
797 | This is ONLY done in response to tree navigation mappings, | ||
798 | i.e. |NERDTree-J| |NERDTree-K| |NERDTree-C-J| |NERDTree-C-K| |NERDTree-p| | ||
799 | |NERDTree-P| | ||
800 | |||
801 | The centering is done with a |zz| operation. | ||
802 | |||
803 | ------------------------------------------------------------------------------ | ||
804 | *NERDTreeAutoCenterThreshold* | ||
805 | Values: Any natural number. | ||
806 | Default: 3 | ||
807 | |||
808 | This setting controls the "sensitivity" of the NERDTree auto centering. See | ||
809 | |NERDTreeAutoCenter| for details. | ||
810 | |||
811 | ------------------------------------------------------------------------------ | ||
812 | *NERDTreeCaseSensitiveSort* | ||
813 | Values: 0 or 1. | ||
814 | Default: 0. | ||
815 | |||
816 | By default the NERDTree does not sort nodes case sensitively, i.e. nodes | ||
817 | could appear like this: > | ||
818 | bar.c | ||
819 | Baz.c | ||
820 | blarg.c | ||
821 | boner.c | ||
822 | Foo.c | ||
823 | < | ||
824 | But, if you set this setting to 1 then the case of the nodes will be taken | ||
825 | into account. The above nodes would then be sorted like this: > | ||
826 | Baz.c | ||
827 | Foo.c | ||
828 | bar.c | ||
829 | blarg.c | ||
830 | boner.c | ||
831 | < | ||
832 | ------------------------------------------------------------------------------ | ||
833 | *NERDTreeNaturalSort* | ||
834 | Values: 0 or 1. | ||
835 | Default: 0. | ||
836 | |||
837 | By default the NERDTree does not sort nodes in natural sort order, i.e. nodes | ||
838 | could appear like this: > | ||
839 | z1.txt | ||
840 | z10.txt | ||
841 | z100.txt | ||
842 | z11.txt | ||
843 | z110.txt | ||
844 | z2.txt | ||
845 | z20.txt | ||
846 | z3.txt | ||
847 | < | ||
848 | But if you set this setting to 1 then the natural sort order will be used. The | ||
849 | above nodes would then be sorted like this: > | ||
850 | z1.txt | ||
851 | z2.txt | ||
852 | z3.txt | ||
853 | z10.txt | ||
854 | z11.txt | ||
855 | z20.txt | ||
856 | z100.txt | ||
857 | z110.txt | ||
858 | < | ||
859 | ------------------------------------------------------------------------------ | ||
860 | *NERDTreeUseTCD* | ||
861 | Values: 0 or 1. | ||
862 | Default: 0. | ||
863 | |||
864 | By default, NERDTree will use the `:cd` command to change the current working | ||
865 | directory. If this setting is turned on, and the `:tcd` command is available, it | ||
866 | will be used instead. | ||
867 | |||
868 | ------------------------------------------------------------------------------ | ||
869 | *NERDTreeChDirMode* | ||
870 | Values: 0, 1, 2, or 3. | ||
871 | Default: 0. | ||
872 | |||
873 | Use this setting to tell the script when (if at all) to change the current | ||
874 | working directory (CWD) for vim. | ||
875 | |||
876 | If it is set to 0 then the CWD is never changed by the NERDTree. | ||
877 | |||
878 | If set to 1 then the CWD is changed when the NERDTree is first loaded to the | ||
879 | directory it is initialized in. For example, if you start the NERDTree with > | ||
880 | :NERDTree /home/marty/foobar | ||
881 | < | ||
882 | then the CWD will be changed to /home/marty/foobar and will not be changed | ||
883 | again unless you init another NERDTree with a similar command. | ||
884 | |||
885 | If the setting is set to 2 then it behaves the same as if set to 1 except that | ||
886 | the CWD is changed whenever the tree root is changed. For example, if the CWD | ||
887 | is /home/marty/foobar and you make the node for /home/marty/foobar/baz the new | ||
888 | root then the CWD will become /home/marty/foobar/baz. | ||
889 | |||
890 | If the set to 3, then it behaves the same as if set to 2, and the CWD is | ||
891 | changed whenever changing tabs to whatever the tree root is on that tab. | ||
892 | |||
893 | ------------------------------------------------------------------------------ | ||
894 | *NERDTreeHighlightCursorline* | ||
895 | Values: 0 or 1. | ||
896 | Default: 1. | ||
897 | |||
898 | If set to 1, the current cursor line in the NERDTree buffer will be | ||
899 | highlighted. This is done using the `'cursorline'` Vim option. | ||
900 | |||
901 | ------------------------------------------------------------------------------ | ||
902 | *NERDTreeHijackNetrw* | ||
903 | Values: 0 or 1. | ||
904 | Default: 1. | ||
905 | |||
906 | If set to 1, doing a > | ||
907 | :edit <some directory> | ||
908 | < | ||
909 | will open up a window level NERDTree instead of a netrw in the target window. | ||
910 | |||
911 | Window level trees behaves slightly different from a regular trees in the | ||
912 | following respects: | ||
913 | 1. 'o' will open the selected file in the same window as the tree, | ||
914 | replacing it. | ||
915 | 2. you can have one tree per window - instead of per tab. | ||
916 | |||
917 | ------------------------------------------------------------------------------ | ||
918 | *NERDTreeIgnore* | ||
919 | Values: a list of regular expressions. | ||
920 | Default: ['\~$']. | ||
921 | |||
922 | This setting is used to specify which files the NERDTree should ignore. It | ||
923 | must be a list of regular expressions. When the NERDTree is rendered, any | ||
924 | files/directories that match any of the regex's in NERDTreeIgnore won't be | ||
925 | displayed. | ||
926 | |||
927 | For example if you put the following line in your vimrc: > | ||
928 | let NERDTreeIgnore=['\.vim$', '\~$'] | ||
929 | < | ||
930 | then all files ending in .vim or ~ will be ignored. | ||
931 | |||
932 | There are 3 magic flags that can be appended to the end of each regular | ||
933 | expression to specify that the regex should match only filenames, only lowest | ||
934 | level directories, or a full path. These flags are "[[dir]]", "[[file]]", and | ||
935 | "[[path]]". Example: > | ||
936 | let NERDTreeIgnore=['\.d$[[dir]]', '\.o$[[file]]', 'tmp/cache$[[path]]'] | ||
937 | < | ||
938 | This will cause all directories ending in ".d" to be ignored, all files ending | ||
939 | in ".o" to be ignored, and the "cache" subdirectory of any "tmp" directory to | ||
940 | be ignored. All other "cache" directories will be displayed. | ||
941 | |||
942 | When using the "[[path]]" tag on Windows, make sure you use escaped | ||
943 | backslashes for the separators in the regex, eg. 'Temp\\cache$[[path]]' | ||
944 | |||
945 | Note: to tell the NERDTree not to ignore any files you must use the following | ||
946 | line: > | ||
947 | let NERDTreeIgnore=[] | ||
948 | < | ||
949 | The file filters can be turned on and off dynamically with the |NERDTree-f| | ||
950 | mapping. | ||
951 | |||
952 | ------------------------------------------------------------------------------ | ||
953 | *NERDTreeRespectWildIgnore* | ||
954 | Values: 0 or 1. | ||
955 | Default: 0. | ||
956 | |||
957 | If set to 1, the `'wildignore'` setting is respected. | ||
958 | |||
959 | ------------------------------------------------------------------------------ | ||
960 | *NERDTreeBookmarksFile* | ||
961 | Values: a path | ||
962 | Default: $HOME/.NERDTreeBookmarks | ||
963 | |||
964 | This is where bookmarks are saved. See |NERDTreeBookmarkCommands|. | ||
965 | |||
966 | ------------------------------------------------------------------------------ | ||
967 | *NERDTreeBookmarksSort* | ||
968 | Values: 0, 1, or 2 | ||
969 | Default: 1 | ||
970 | |||
971 | This setting controls the method by which the list of user bookmarks is | ||
972 | sorted. When sorted, bookmarks will render in alphabetical order by name. | ||
973 | |||
974 | If set to 0, the bookmarks list is not sorted. | ||
975 | If set to 1, the bookmarks list is sorted in a case-insensitive manner. | ||
976 | If set to 2, the bookmarks list is sorted in a case-sensitive manner. | ||
977 | |||
978 | ------------------------------------------------------------------------------ | ||
979 | *NERDTreeMarkBookmarks* | ||
980 | Values: 0 or 1 | ||
981 | Default: 1 | ||
982 | |||
983 | If set to 1, Bookmarks will be specially marked whenever the NERDTree is | ||
984 | rendered. Users of the |NERDTreeMinimalUI| setting may prefer to disable | ||
985 | this setting for even less visual clutter. | ||
986 | |||
987 | ------------------------------------------------------------------------------ | ||
988 | *NERDTreeMouseMode* | ||
989 | Values: 1, 2 or 3. | ||
990 | Default: 1. | ||
991 | |||
992 | If set to 1 then a double click on a node is required to open it. | ||
993 | If set to 2 then a single click will open directory nodes, while a double | ||
994 | click will still be required for file nodes. | ||
995 | If set to 3 then a single click will open any node. | ||
996 | |||
997 | Note: a double click anywhere on a line that a tree node is on will | ||
998 | activate it, but all single-click activations must be done on name of the node | ||
999 | itself. For example, if you have the following node: > | ||
1000 | | | |-application.rb | ||
1001 | < | ||
1002 | then (to single click activate it) you must click somewhere in | ||
1003 | 'application.rb'. | ||
1004 | |||
1005 | ------------------------------------------------------------------------------ | ||
1006 | *NERDTreeQuitOnOpen* | ||
1007 | Values: 0,1,2 or 3. | ||
1008 | Default: 0 | ||
1009 | |||
1010 | This setting governs whether the NERDTree window or the bookmarks table closes | ||
1011 | after opening a file with the |NERDTree-o|, |NERDTree-i|, |NERDTree-t| and | ||
1012 | |NERDTree-T| mappings. | ||
1013 | |||
1014 | Value | NERDTree Window Behavior | ||
1015 | -------+------------------------------------------------------- | ||
1016 | 0 | No change | ||
1017 | 1 | Closes after opening a file | ||
1018 | 2 | Closes the bookmark table after opening a bookmark | ||
1019 | 3(1+2) | Same as both 1 and 2 | ||
1020 | |||
1021 | ------------------------------------------------------------------------------ | ||
1022 | *NERDTreeShowBookmarks* | ||
1023 | Values: 0 or 1. | ||
1024 | Default: 0. | ||
1025 | |||
1026 | If this setting is set to 1 then the bookmarks table will be displayed. | ||
1027 | |||
1028 | This setting can be toggled dynamically, per tree, with the |NERDTree-B| | ||
1029 | mapping. | ||
1030 | |||
1031 | ------------------------------------------------------------------------------ | ||
1032 | *NERDTreeShowFiles* | ||
1033 | Values: 0 or 1. | ||
1034 | Default: 1. | ||
1035 | |||
1036 | If this setting is set to 1 then files are displayed in the NERDTree. If it | ||
1037 | is set to 0 then only directories are displayed. | ||
1038 | |||
1039 | This setting can be toggled dynamically, per tree, with the |NERDTree-F| | ||
1040 | mapping and is useful for drastically shrinking the tree when you are | ||
1041 | navigating to a different part of the tree. | ||
1042 | |||
1043 | ------------------------------------------------------------------------------ | ||
1044 | *NERDTreeShowHidden* | ||
1045 | Values: 0 or 1. | ||
1046 | Default: 0. | ||
1047 | |||
1048 | This setting tells vim whether to display hidden files by default. This | ||
1049 | setting can be dynamically toggled, per tree, with the |NERDTree-I| mapping. | ||
1050 | Use one of the follow lines for this setting: > | ||
1051 | let NERDTreeShowHidden=0 | ||
1052 | let NERDTreeShowHidden=1 | ||
1053 | < | ||
1054 | ------------------------------------------------------------------------------ | ||
1055 | *NERDTreeShowLineNumbers* | ||
1056 | Values: 0 or 1. | ||
1057 | Default: 0. | ||
1058 | |||
1059 | This setting tells vim whether to display line numbers for the NERDTree | ||
1060 | window. Use one of the follow lines for this setting: > | ||
1061 | let NERDTreeShowLineNumbers=0 | ||
1062 | let NERDTreeShowLineNumbers=1 | ||
1063 | < | ||
1064 | ------------------------------------------------------------------------------ | ||
1065 | *NERDTreeSortOrder* | ||
1066 | Values: a list of regular expressions. | ||
1067 | Default: ['\/$', '*', '\.swp$', '\.bak$', '\~$'] | ||
1068 | |||
1069 | This setting is a list of regular expressions which are used to group or sort | ||
1070 | the nodes under their parent. | ||
1071 | |||
1072 | For example, if the setting is: > | ||
1073 | ['\.vim$', '\.c$', '\.h$', '*', 'foobar'] | ||
1074 | < | ||
1075 | then all .vim files will be grouped at the top, followed by all .c files then | ||
1076 | all .h files. All files containing the string 'foobar' will be placed at the | ||
1077 | end. The star is a special flag: it tells the script that every node that | ||
1078 | doesn't match any of the other regexps should be placed here. | ||
1079 | |||
1080 | If no star is present in NERDTreeSortOrder, then one is automatically | ||
1081 | appended to the end of the list. | ||
1082 | |||
1083 | The regex '\/$' should be used to match directory nodes. | ||
1084 | |||
1085 | Files can also be sorted by 1) the modification timestamp, 2) the size, or 3) | ||
1086 | the extension. Directories are always sorted by name. To accomplish this, the | ||
1087 | following special flags are used: | ||
1088 | [[timestamp]] [[-timestamp]] [[size]] [[-size]] [[extension]] | ||
1089 | The hyphen specifies a descending sort; extensions are sorted in ascending | ||
1090 | order only. If placed at the beginning of the list, files are sorted according | ||
1091 | to these flags first, and then grouped by the remaining items in the list. If | ||
1092 | the flags are in any other position of the list, this special sorting is done | ||
1093 | secondarily. See examples 4, 5, and 6 below. | ||
1094 | |||
1095 | After this sorting is done, the files in each group are sorted alphabetically. | ||
1096 | |||
1097 | Examples: > | ||
1098 | (1) ['*', '\/$'] | ||
1099 | (2) [] | ||
1100 | (3) ['\/$', '\.rb$', '\.php$', '*', '\.swp$', '\.bak$', '\~$'] | ||
1101 | (4) ['[[-size]]'] | ||
1102 | (5) ['\/$', '*', '[[timestamp]]'] | ||
1103 | (6) ['foo','\/$','[[extension]]'] | ||
1104 | < | ||
1105 | 1. Directories will appear last, everything else will appear above. | ||
1106 | 2. Everything will simply appear in alphabetical order. | ||
1107 | 3. Directories will appear first, then ruby and php. Swap files, bak files | ||
1108 | and vim backup files will appear last with everything else preceding them. | ||
1109 | 4. Everything is sorted by size, largest to smallest, with directories | ||
1110 | considered to have size 0 bytes. | ||
1111 | 5. Directories will appear first alphabetically, followed by files, sorted by | ||
1112 | timestamp, oldest first. | ||
1113 | 6. Files and directories matching 'foo' first, followed by other directories, | ||
1114 | then all other files. Each section of files is sorted by file extension. | ||
1115 | |||
1116 | ------------------------------------------------------------------------------ | ||
1117 | *NERDTreeStatusline* | ||
1118 | Values: Any valid `'statusline'` setting. | ||
1119 | Default: %{exists('b:NERDTree')?b:NERDTree.root.path.str():''} | ||
1120 | |||
1121 | Defines the value for the `'statusline'` setting in NERDTree windows. | ||
1122 | |||
1123 | Note: The setting is actually applied using |:let-&|, not |:set|, so | ||
1124 | escaping spaces is not necessary. | ||
1125 | |||
1126 | Setting this to -1 will deactivate it so that your global `'statusline'` | ||
1127 | setting is used. | ||
1128 | |||
1129 | ------------------------------------------------------------------------------ | ||
1130 | *NERDTreeWinPos* | ||
1131 | Values: "left" or "right" | ||
1132 | Default: "left". | ||
1133 | |||
1134 | This setting is used to determine where NERDTree window is placed on the | ||
1135 | screen. | ||
1136 | |||
1137 | This setting makes it possible to use two different explorer plugins | ||
1138 | simultaneously. For example, you could have the taglist plugin on the left of | ||
1139 | the window and the NERDTree on the right. | ||
1140 | |||
1141 | ------------------------------------------------------------------------------ | ||
1142 | *NERDTreeWinSize* | ||
1143 | Values: a positive integer. | ||
1144 | Default: 31. | ||
1145 | |||
1146 | This setting is used to change the size of the NERDTree when it is loaded. | ||
1147 | |||
1148 | ------------------------------------------------------------------------------ | ||
1149 | *NERDTreeMinimalUI* | ||
1150 | Values: 0 or 1 | ||
1151 | Default: 0 | ||
1152 | |||
1153 | This setting disables the 'Bookmarks' label 'Press ? for help' text. Use one | ||
1154 | of the following lines for this setting: > | ||
1155 | let NERDTreeMinimalUI=0 | ||
1156 | let NERDTreeMinimalUI=1 | ||
1157 | < | ||
1158 | ------------------------------------------------------------------------------ | ||
1159 | *NERDTreeMinimalMenu* | ||
1160 | Values: 0 or 1 | ||
1161 | Default: 0 | ||
1162 | |||
1163 | This setting makes NERDTree use a smaller, more compact menu for adding, | ||
1164 | copying, deleting nodes. This menu fits on a single line so Vim doesn't need to | ||
1165 | scroll down to present it. This setting is recommended for users already | ||
1166 | familiar with the menu items. It will look similar to this: | ||
1167 | |||
1168 | Menu: [ (a)dd ,m,d,r,o,q,c,l] (Use j/k/enter or shortcut): | ||
1169 | |||
1170 | An action can be selected with its shortcut key or with the NERDTreeMenuUp and | ||
1171 | NERDTreeMenuDown keys, then pressing enter. | ||
1172 | |||
1173 | Use one of the following lines for this setting: > | ||
1174 | let NERDTreeMinimalMenu=0 | ||
1175 | let NERDTreeMinimalMenu=1 | ||
1176 | < | ||
1177 | ------------------------------------------------------------------------------ | ||
1178 | *NERDTreeCascadeSingleChildDir* | ||
1179 | Values: 0 or 1 | ||
1180 | Default: 1. | ||
1181 | |||
1182 | When displaying directory nodes, this setting tells NERDTree to collapse | ||
1183 | directories that have only one child. Use one of the following lines for this | ||
1184 | setting: > | ||
1185 | let NERDTreeCascadeSingleChildDir=0 | ||
1186 | let NERDTreeCascadeSingleChildDir=1 | ||
1187 | < | ||
1188 | ------------------------------------------------------------------------------ | ||
1189 | *NERDTreeCascadeOpenSingleChildDir* | ||
1190 | Values: 0 or 1 | ||
1191 | Default: 1. | ||
1192 | |||
1193 | When opening directory nodes, this setting tells NERDTree to recursively open | ||
1194 | directories that have only one child which is also a directory. NERDTree will | ||
1195 | stop when it finds a directory that contains anything but another single | ||
1196 | directory. This setting also causes the |NERDTree-x| mapping to close | ||
1197 | directories in the same manner. This setting may be useful for Java projects. | ||
1198 | Use one of the following lines for this setting: > | ||
1199 | let NERDTreeCascadeOpenSingleChildDir=0 | ||
1200 | let NERDTreeCascadeOpenSingleChildDir=1 | ||
1201 | < | ||
1202 | ------------------------------------------------------------------------------ | ||
1203 | *NERDTreeAutoDeleteBuffer* | ||
1204 | Values: 0 or 1 | ||
1205 | Default: 0. | ||
1206 | |||
1207 | When using a context menu to delete or rename a file you may also want to | ||
1208 | delete the buffer which is no more valid. If the setting is not set you will | ||
1209 | see a confirmation if you really want to delete an old buffer. If you always | ||
1210 | press 'y' then it's worth it to set this setting to 1. Use one of the | ||
1211 | following lines for this setting: > | ||
1212 | let NERDTreeAutoDeleteBuffer=0 | ||
1213 | let NERDTreeAutoDeleteBuffer=1 | ||
1214 | < | ||
1215 | ------------------------------------------------------------------------------ | ||
1216 | *NERDTreeCreatePrefix* | ||
1217 | Values: Any valid command prefix. | ||
1218 | Default: "silent". | ||
1219 | |||
1220 | Internally, NERDTree uses the |:edit| command to create a buffer in which to | ||
1221 | display its tree view. You can augment this behavior by specifying a prefix | ||
1222 | string such as "keepalt" or similar. For example, to have NERDTree create its | ||
1223 | tree window using `silent keepalt keepjumps edit`: > | ||
1224 | let NERDTreeCreatePrefix='silent keepalt keepjumps' | ||
1225 | < | ||
1226 | ------------------------------------------------------------------------------ | ||
1227 | *NERDTreeDirArrowCollapsible* *NERDTreeDirArrowExpandable* | ||
1228 | Values: Any single character. | ||
1229 | Defaults: Windows: ~ and + Others: â–¾ and â–¸ | ||
1230 | |||
1231 | These characters indicate whether a directory is collapsible or expandable. | ||
1232 | Example: > | ||
1233 | let NERDTreeDirArrowExpandable=">" | ||
1234 | let NERDTreeDirArrowCollapsible="v" | ||
1235 | < | ||
1236 | They can be set to "\u00a0" to replace the arrows with a non-breaking space. | ||
1237 | If you do this you may need to change the node delimiter. See | ||
1238 | |NERDTreeNodeDelimiter|. You cannot use the same character for both the arrows | ||
1239 | and the delimiter. | ||
1240 | |||
1241 | Alternatively, they can be set to '' (an empty string). This removes the | ||
1242 | arrows and the single space that follows them, shifting the entire tree two | ||
1243 | character positions to the left. | ||
1244 | |||
1245 | ------------------------------------------------------------------------------ | ||
1246 | *NERDTreeNodeDelimiter* | ||
1247 | Values: Any single character. | ||
1248 | Default: varies (see below) | ||
1249 | |||
1250 | This character is used to separate the file or directory name from the rest of | ||
1251 | the characters in the line of text. It allows filenames to contain special | ||
1252 | characters that are otherwise used in the NERDTree, such as square brackets, | ||
1253 | braces, trailing asterisk, and leading space. For more details, see the | ||
1254 | responsible pull request: https://github.com/preservim/nerdtree/pull/868. | ||
1255 | |||
1256 | The default value of this variable depends on the features compiled into your | ||
1257 | vim and the values of |NERDTreeDirArrowCollapsible| and | ||
1258 | |NERDTreeDirArrowExpandable|. | ||
1259 | * If your vim is compiled with the +conceal feature, it is the "\x07" | ||
1260 | (BEL) character, and it is hidden by setting 'conceallevel' to 2. If you | ||
1261 | use autocommands, make sure none of them change that setting in the | ||
1262 | NERD_Tree_* buffers. | ||
1263 | * If your vim does NOT have the +conceal feature and you're using "\u00a0" | ||
1264 | (non-breaking space) to hide the directory arrows, "\u00b7" (middle dot) | ||
1265 | is used as the default delimiter. | ||
1266 | * If neither condition above applies, NERDTree uses "\u00a0" (non-breaking | ||
1267 | space) as the default delimiter. | ||
1268 | |||
1269 | In the 2nd and 3rd cases, NERDTree will use the Ignore highlight group to | ||
1270 | "hide" the delimiter. It should appear as an empty space. | ||
1271 | |||
1272 | Other plugins can interfere with these defaults, so if you need to change the | ||
1273 | delimiter, be sure to choose a character that won't appear in your filenames | ||
1274 | or any of the flags set by your installed NERDTree plugins. The suggestions | ||
1275 | below are but a few of the many possibilities. Remember to use double quotes | ||
1276 | when specifying by hex or Unicode. > | ||
1277 | let NERDTreeNodeDelimiter="\x07" "bell | ||
1278 | let NERDTreeNodeDelimiter="\u00b7" "middle dot | ||
1279 | let NERDTreeNodeDelimiter="\u00a0" "non-breaking space | ||
1280 | let NERDTreeNodeDelimiter="😀" "smiley face | ||
1281 | < | ||
1282 | ------------------------------------------------------------------------------ | ||
1283 | *NERDTreeCustomOpenArgs* | ||
1284 | Values: A nested dictionary, as described below | ||
1285 | Default: {'file': {'reuse': 'all', 'where': 'p'}, 'dir': {}} | ||
1286 | |||
1287 | This dictionary contains two keys, 'file' and 'dir', whose values each are | ||
1288 | another dictionary. The inner dictionary is a set of parameters used by | ||
1289 | |NERDTree-<CR>| to open a file or directory. Setting these parameters allows you | ||
1290 | to customize the way the node is opened. The default value matches what | ||
1291 | |NERDTree-o| does. To change that behavior, use these keys and | ||
1292 | values in the inner dictionaries: | ||
1293 | |||
1294 | 'where': specifies whether the node should be opened in a new split ("h" or | ||
1295 | "v"), in a new tab ("t") or, in the last window ("p"). | ||
1296 | 'reuse': if file is already shown in a window, jump there; takes values | ||
1297 | "all", "currenttab", or empty | ||
1298 | 'keepopen': boolean (0 or 1); if true, the tree window will not be closed | ||
1299 | 'stay': boolean (0 or 1); if true, remain in tree window after opening | ||
1300 | |||
1301 | For example: | ||
1302 | To open files and directories (creating a new NERDTree) in a new tab, > | ||
1303 | {'file':{'where': 't'}, 'dir':{'where':'t'}} | ||
1304 | < | ||
1305 | To open a file always in the current tab, and expand directories in place, > | ||
1306 | {'file': {'reuse':'currenttab', 'where':'p', 'keepopen':1, 'stay':1}} | ||
1307 | < | ||
1308 | ============================================================================== | ||
1309 | 4. The NERDTree API *NERDTreeAPI* | ||
1310 | |||
1311 | The NERDTree script allows you to add custom key mappings and menu items via | ||
1312 | a set of API calls. Any scripts that use this API should be placed in | ||
1313 | ~/.vim/nerdtree_plugin/ (*nix) or ~/vimfiles/nerdtree_plugin (windows). | ||
1314 | |||
1315 | The script exposes some prototype objects that can be used to manipulate the | ||
1316 | tree and/or get information from it: > | ||
1317 | g:NERDTreePath | ||
1318 | g:NERDTreeDirNode | ||
1319 | g:NERDTreeFileNode | ||
1320 | g:NERDTreeBookmark | ||
1321 | < | ||
1322 | See the code/comments in NERD_tree.vim to find how to use these objects. The | ||
1323 | following code conventions are used: | ||
1324 | * class members start with a capital letter | ||
1325 | * instance members start with a lower case letter | ||
1326 | * private members start with an underscore | ||
1327 | |||
1328 | See this blog post for more details: | ||
1329 | http://got-ravings.blogspot.com/2008/09/vim-pr0n-prototype-based-objects.html | ||
1330 | |||
1331 | A number of API functions take a callback argument to call. The callback can | ||
1332 | be either a string with the name of a function to call, or a |Funcref| object | ||
1333 | which will be called directly. | ||
1334 | |||
1335 | ------------------------------------------------------------------------------ | ||
1336 | 4.1. Key map API *NERDTreeKeymapAPI* | ||
1337 | |||
1338 | NERDTreeAddKeyMap({options}) *NERDTreeAddKeyMap()* | ||
1339 | Adds a new keymapping for all NERDTree buffers. | ||
1340 | {options} must be a dictionary, and must contain the following keys: | ||
1341 | "key" - the trigger key for the new mapping | ||
1342 | "callback" - the function the new mapping will be bound to | ||
1343 | "quickhelpText" - the text that will appear in the quickhelp (see | ||
1344 | |NERDTree-?|) | ||
1345 | "override" - if 1 then this new mapping will override whatever previous | ||
1346 | mapping was defined for the key/scope combo. Useful for overriding the | ||
1347 | default mappings. | ||
1348 | |||
1349 | Additionally, a "scope" argument may be supplied. This constrains the | ||
1350 | mapping so that it is only activated if the cursor is on a certain object. | ||
1351 | That object is then passed into the handling method. Possible values are: | ||
1352 | |||
1353 | "FileNode" .... a file node | ||
1354 | "DirNode" ..... a directory node | ||
1355 | "Node" ........ a file node OR a directory node | ||
1356 | "Bookmark" .... a bookmark | ||
1357 | "all" ......... global scope; handler receives no arguments (default) | ||
1358 | |||
1359 | Example: > | ||
1360 | call NERDTreeAddKeyMap({ | ||
1361 | \ 'key': 'foo', | ||
1362 | \ 'callback': 'NERDTreeEchoPathHandler', | ||
1363 | \ 'quickhelpText': 'echo full path of current node', | ||
1364 | \ 'scope': 'DirNode' }) | ||
1365 | |||
1366 | function! NERDTreeEchoPathHandler(dirnode) | ||
1367 | echo a:dirnode.path.str() | ||
1368 | endfunction | ||
1369 | < | ||
1370 | This code should sit in a file like ~/.vim/nerdtree_plugin/mymapping.vim. | ||
1371 | It adds a (redundant) mapping on 'foo' which changes vim's CWD to that of | ||
1372 | the current directory node. Note this mapping will only fire when the | ||
1373 | cursor is on a directory node. | ||
1374 | |||
1375 | ------------------------------------------------------------------------------ | ||
1376 | 4.2. Menu API *NERDTreeMenuAPI* | ||
1377 | |||
1378 | NERDTreeAddSubmenu({options}) *NERDTreeAddSubmenu()* | ||
1379 | Creates and returns a new submenu. | ||
1380 | |||
1381 | {options} must be a dictionary and must contain the following keys: | ||
1382 | "text" - the text of the submenu that the user will see | ||
1383 | "shortcut" - a shortcut key for the submenu (need not be unique) | ||
1384 | |||
1385 | The following keys are optional: | ||
1386 | "isActiveCallback" - a function that will be called to determine whether | ||
1387 | this submenu item will be displayed or not. The callback function must | ||
1388 | return 0 or 1. | ||
1389 | "parent" - the parent submenu of the new submenu (returned from a previous | ||
1390 | invocation of NERDTreeAddSubmenu()). If this key is left out then the new | ||
1391 | submenu will sit under the top level menu. | ||
1392 | |||
1393 | See below for an example. | ||
1394 | |||
1395 | NERDTreeAddMenuItem({options}) *NERDTreeAddMenuItem()* | ||
1396 | Adds a new menu item to the NERDTree menu (see |NERDTreeMenu|). | ||
1397 | |||
1398 | {options} must be a dictionary and must contain the | ||
1399 | following keys: | ||
1400 | "text" - the text of the menu item which the user will see | ||
1401 | "shortcut" - a shortcut key for the menu item (need not be unique) | ||
1402 | "callback" - the function that will be called when the user activates the | ||
1403 | menu item. | ||
1404 | |||
1405 | The following keys are optional: | ||
1406 | "isActiveCallback" - a function that will be called to determine whether | ||
1407 | this menu item will be displayed or not. The callback function must return | ||
1408 | 0 or 1. | ||
1409 | "parent" - if the menu item belongs under a submenu then this key must be | ||
1410 | specified. This value for this key will be the object that | ||
1411 | was returned when the submenu was created with |NERDTreeAddSubmenu()|. | ||
1412 | |||
1413 | See below for an example. | ||
1414 | |||
1415 | NERDTreeAddMenuSeparator([{options}]) *NERDTreeAddMenuSeparator()* | ||
1416 | Adds a menu separator (a row of dashes). | ||
1417 | |||
1418 | {options} is an optional dictionary that may contain the following keys: | ||
1419 | "isActiveCallback" - see description in |NERDTreeAddMenuItem()|. | ||
1420 | |||
1421 | Below is an example of the menu API in action. > | ||
1422 | call NERDTreeAddMenuSeparator() | ||
1423 | |||
1424 | call NERDTreeAddMenuItem({ | ||
1425 | \ 'text': 'a (t)op level menu item', | ||
1426 | \ 'shortcut': 't', | ||
1427 | \ 'callback': 'SomeFunction' }) | ||
1428 | |||
1429 | let submenu = NERDTreeAddSubmenu({ | ||
1430 | \ 'text': 'a (s)ub menu', | ||
1431 | \ 'shortcut': 's' }) | ||
1432 | |||
1433 | call NERDTreeAddMenuItem({ | ||
1434 | \ 'text': '(n)ested item 1', | ||
1435 | \ 'shortcut': 'n', | ||
1436 | \ 'callback': 'SomeFunction', | ||
1437 | \ 'parent': submenu }) | ||
1438 | |||
1439 | call NERDTreeAddMenuItem({ | ||
1440 | \ 'text': '(n)ested item 2', | ||
1441 | \ 'shortcut': 'n', | ||
1442 | \ 'callback': 'SomeFunction', | ||
1443 | \ 'parent': submenu }) | ||
1444 | < | ||
1445 | This will create the following menu: > | ||
1446 | -------------------- | ||
1447 | a (t)op level menu item | ||
1448 | a (s)ub menu | ||
1449 | < | ||
1450 | Where selecting "a (s)ub menu" will lead to a second menu: > | ||
1451 | (n)ested item 1 | ||
1452 | (n)ested item 2 | ||
1453 | < | ||
1454 | When any of the 3 concrete menu items are selected the function "SomeFunction" | ||
1455 | will be called. | ||
1456 | |||
1457 | ------------------------------------------------------------------------------ | ||
1458 | 4.3 NERDTreeAddPathFilter(callback) *NERDTreeAddPathFilter()* | ||
1459 | |||
1460 | Path filters are essentially a more powerful version of |NERDTreeIgnore|. | ||
1461 | If the simple regex matching in |NERDTreeIgnore| is not enough then use | ||
1462 | |NERDTreeAddPathFilter()| to add a callback function that paths will be | ||
1463 | checked against when the decision to ignore them is made. Example > | ||
1464 | |||
1465 | call NERDTreeAddPathFilter('MyFilter') | ||
1466 | |||
1467 | function! MyFilter(params) | ||
1468 | "params is a dict containing keys: 'nerdtree' and 'path' which are | ||
1469 | "g:NERDTree and g:NERDTreePath objects | ||
1470 | |||
1471 | "return 1 to ignore params['path'] or 0 otherwise | ||
1472 | endfunction | ||
1473 | < | ||
1474 | ------------------------------------------------------------------------------ | ||
1475 | 4.4 Path Listener API *NERDTreePathListenerAPI* | ||
1476 | |||
1477 | Use this API if you want to run a callback for events on Path objects. E.G > | ||
1478 | |||
1479 | call g:NERDTreePathNotifier.AddListener("init", "MyListener") | ||
1480 | |||
1481 | ".... | ||
1482 | |||
1483 | function! MyListener(event) | ||
1484 | "This function will be called whenever a Path object is created. | ||
1485 | |||
1486 | "a:event is an object that contains a bunch of relevant info - | ||
1487 | "including the affected path. See lib/nerdtree/event.vim for details. | ||
1488 | endfunction | ||
1489 | < | ||
1490 | Current events supported: | ||
1491 | init ~ | ||
1492 | refresh ~ | ||
1493 | refreshFlags ~ | ||
1494 | |||
1495 | ------------------------------------------------------------------------------ | ||
1496 | NERDTreeRender() *NERDTreeRender()* | ||
1497 | Re-renders the NERDTree buffer. Useful if you change the state of the | ||
1498 | tree and you want to it to be reflected in the UI. | ||
1499 | |||
1500 | ============================================================================== | ||
1501 | 5. About *NERDTreeAbout* | ||
1502 | |||
1503 | The author of the NERDTree is a terrible terrible monster called Martyzilla | ||
1504 | who gobbles up small children with milk and sugar for breakfast. | ||
1505 | |||
1506 | He can be reached at martin.grenfell at gmail dot com. He would love to hear | ||
1507 | from you, so feel free to send him suggestions and/or comments about this | ||
1508 | plugin. Don't be shy --- the worst he can do is slaughter you and stuff you | ||
1509 | in the fridge for later ;) | ||
1510 | |||
1511 | Martyzilla recruited two other unwitting accomplices to become his minions in | ||
1512 | his quest to conquer the Vim plugin world. While he may still love to receive | ||
1513 | your emails, the best way to send suggestions, bug reports, and questions is | ||
1514 | to submit an issue at http://github.com/preservim/nerdtree/issues. | ||
1515 | |||
1516 | The latest stable and development versions are on Github. | ||
1517 | Stable: http://github.com/preservim/nerdtree (master branch) | ||
1518 | Development: http://github.com/preservim/nerdtree/branches | ||
1519 | |||
1520 | Title Credit: | ||
1521 | * http://ascii.co.uk/art/tree | ||
1522 | |||
1523 | * Patrick Gillespie's Text ASCII Art Generator | ||
1524 | http://patorjk.com/software/taag | ||
1525 | http://patorjk.com/software/taag/#p=display&f=Rozzo&t=the%20NERD%20Tree | ||
1526 | |||
1527 | ============================================================================== | ||
1528 | 6. License *NERDTreeLicense* | ||
1529 | |||
1530 | The NERDTree is released under the wtfpl. | ||
1531 | See http://sam.zoy.org/wtfpl/COPYING. | ||
1532 | |||
1533 | ------------------------------------------------------------------------------ | ||
1534 | vim:tw=78:ts=8:ft=help:noet:nospell | ||
diff --git a/.vim/pack/vendor/start/nerdtree/doc/tags b/.vim/pack/vendor/start/nerdtree/doc/tags new file mode 100644 index 0000000..c1135b2 --- /dev/null +++ b/.vim/pack/vendor/start/nerdtree/doc/tags | |||
@@ -0,0 +1,143 @@ | |||
1 | :NERDTree NERDTree.txt /*:NERDTree* | ||
2 | :NERDTreeCWD NERDTree.txt /*:NERDTreeCWD* | ||
3 | :NERDTreeClose NERDTree.txt /*:NERDTreeClose* | ||
4 | :NERDTreeFind NERDTree.txt /*:NERDTreeFind* | ||
5 | :NERDTreeFocus NERDTree.txt /*:NERDTreeFocus* | ||
6 | :NERDTreeFromBookmark NERDTree.txt /*:NERDTreeFromBookmark* | ||
7 | :NERDTreeMirror NERDTree.txt /*:NERDTreeMirror* | ||
8 | :NERDTreeRefreshRoot NERDTree.txt /*:NERDTreeRefreshRoot* | ||
9 | :NERDTreeToggle NERDTree.txt /*:NERDTreeToggle* | ||
10 | :NERDTreeToggleVCS NERDTree.txt /*:NERDTreeToggleVCS* | ||
11 | :NERDTreeVCS NERDTree.txt /*:NERDTreeVCS* | ||
12 | NERDTree NERDTree.txt /*NERDTree* | ||
13 | NERDTree-<CR> NERDTree.txt /*NERDTree-<CR>* | ||
14 | NERDTree-? NERDTree.txt /*NERDTree-?* | ||
15 | NERDTree-A NERDTree.txt /*NERDTree-A* | ||
16 | NERDTree-B NERDTree.txt /*NERDTree-B* | ||
17 | NERDTree-C NERDTree.txt /*NERDTree-C* | ||
18 | NERDTree-C-J NERDTree.txt /*NERDTree-C-J* | ||
19 | NERDTree-C-K NERDTree.txt /*NERDTree-C-K* | ||
20 | NERDTree-CD NERDTree.txt /*NERDTree-CD* | ||
21 | NERDTree-D NERDTree.txt /*NERDTree-D* | ||
22 | NERDTree-F NERDTree.txt /*NERDTree-F* | ||
23 | NERDTree-I NERDTree.txt /*NERDTree-I* | ||
24 | NERDTree-J NERDTree.txt /*NERDTree-J* | ||
25 | NERDTree-K NERDTree.txt /*NERDTree-K* | ||
26 | NERDTree-O NERDTree.txt /*NERDTree-O* | ||
27 | NERDTree-P NERDTree.txt /*NERDTree-P* | ||
28 | NERDTree-R NERDTree.txt /*NERDTree-R* | ||
29 | NERDTree-T NERDTree.txt /*NERDTree-T* | ||
30 | NERDTree-U NERDTree.txt /*NERDTree-U* | ||
31 | NERDTree-X NERDTree.txt /*NERDTree-X* | ||
32 | NERDTree-cd NERDTree.txt /*NERDTree-cd* | ||
33 | NERDTree-contents NERDTree.txt /*NERDTree-contents* | ||
34 | NERDTree-e NERDTree.txt /*NERDTree-e* | ||
35 | NERDTree-f NERDTree.txt /*NERDTree-f* | ||
36 | NERDTree-gi NERDTree.txt /*NERDTree-gi* | ||
37 | NERDTree-go NERDTree.txt /*NERDTree-go* | ||
38 | NERDTree-gs NERDTree.txt /*NERDTree-gs* | ||
39 | NERDTree-i NERDTree.txt /*NERDTree-i* | ||
40 | NERDTree-m NERDTree.txt /*NERDTree-m* | ||
41 | NERDTree-o NERDTree.txt /*NERDTree-o* | ||
42 | NERDTree-p NERDTree.txt /*NERDTree-p* | ||
43 | NERDTree-q NERDTree.txt /*NERDTree-q* | ||
44 | NERDTree-r NERDTree.txt /*NERDTree-r* | ||
45 | NERDTree-s NERDTree.txt /*NERDTree-s* | ||
46 | NERDTree-t NERDTree.txt /*NERDTree-t* | ||
47 | NERDTree-u NERDTree.txt /*NERDTree-u* | ||
48 | NERDTree-x NERDTree.txt /*NERDTree-x* | ||
49 | NERDTree.txt NERDTree.txt /*NERDTree.txt* | ||
50 | NERDTreeAPI NERDTree.txt /*NERDTreeAPI* | ||
51 | NERDTreeAbout NERDTree.txt /*NERDTreeAbout* | ||
52 | NERDTreeAddKeyMap() NERDTree.txt /*NERDTreeAddKeyMap()* | ||
53 | NERDTreeAddMenuItem() NERDTree.txt /*NERDTreeAddMenuItem()* | ||
54 | NERDTreeAddMenuSeparator() NERDTree.txt /*NERDTreeAddMenuSeparator()* | ||
55 | NERDTreeAddPathFilter() NERDTree.txt /*NERDTreeAddPathFilter()* | ||
56 | NERDTreeAddSubmenu() NERDTree.txt /*NERDTreeAddSubmenu()* | ||
57 | NERDTreeAutoCenter NERDTree.txt /*NERDTreeAutoCenter* | ||
58 | NERDTreeAutoCenterThreshold NERDTree.txt /*NERDTreeAutoCenterThreshold* | ||
59 | NERDTreeAutoDeleteBuffer NERDTree.txt /*NERDTreeAutoDeleteBuffer* | ||
60 | NERDTreeBookmarkCommands NERDTree.txt /*NERDTreeBookmarkCommands* | ||
61 | NERDTreeBookmarkTable NERDTree.txt /*NERDTreeBookmarkTable* | ||
62 | NERDTreeBookmarks NERDTree.txt /*NERDTreeBookmarks* | ||
63 | NERDTreeBookmarksFile NERDTree.txt /*NERDTreeBookmarksFile* | ||
64 | NERDTreeBookmarksSort NERDTree.txt /*NERDTreeBookmarksSort* | ||
65 | NERDTreeCascadeOpenSingleChildDir NERDTree.txt /*NERDTreeCascadeOpenSingleChildDir* | ||
66 | NERDTreeCascadeSingleChildDir NERDTree.txt /*NERDTreeCascadeSingleChildDir* | ||
67 | NERDTreeCaseSensitiveSort NERDTree.txt /*NERDTreeCaseSensitiveSort* | ||
68 | NERDTreeChDirMode NERDTree.txt /*NERDTreeChDirMode* | ||
69 | NERDTreeCreatePrefix NERDTree.txt /*NERDTreeCreatePrefix* | ||
70 | NERDTreeCustomOpenArgs NERDTree.txt /*NERDTreeCustomOpenArgs* | ||
71 | NERDTreeDirArrowCollapsible NERDTree.txt /*NERDTreeDirArrowCollapsible* | ||
72 | NERDTreeDirArrowExpandable NERDTree.txt /*NERDTreeDirArrowExpandable* | ||
73 | NERDTreeFunctionality NERDTree.txt /*NERDTreeFunctionality* | ||
74 | NERDTreeGlobalCommands NERDTree.txt /*NERDTreeGlobalCommands* | ||
75 | NERDTreeHighlightCursorline NERDTree.txt /*NERDTreeHighlightCursorline* | ||
76 | NERDTreeHijackNetrw NERDTree.txt /*NERDTreeHijackNetrw* | ||
77 | NERDTreeIgnore NERDTree.txt /*NERDTreeIgnore* | ||
78 | NERDTreeInvalidBookmarks NERDTree.txt /*NERDTreeInvalidBookmarks* | ||
79 | NERDTreeKeymapAPI NERDTree.txt /*NERDTreeKeymapAPI* | ||
80 | NERDTreeLicense NERDTree.txt /*NERDTreeLicense* | ||
81 | NERDTreeMapCWD NERDTree.txt /*NERDTreeMapCWD* | ||
82 | NERDTreeMapChangeRoot NERDTree.txt /*NERDTreeMapChangeRoot* | ||
83 | NERDTreeMapChdir NERDTree.txt /*NERDTreeMapChdir* | ||
84 | NERDTreeMapCloseChildren NERDTree.txt /*NERDTreeMapCloseChildren* | ||
85 | NERDTreeMapCloseDir NERDTree.txt /*NERDTreeMapCloseDir* | ||
86 | NERDTreeMapCustomOpen NERDTree.txt /*NERDTreeMapCustomOpen* | ||
87 | NERDTreeMapDeleteBookmark NERDTree.txt /*NERDTreeMapDeleteBookmark* | ||
88 | NERDTreeMapHelp NERDTree.txt /*NERDTreeMapHelp* | ||
89 | NERDTreeMapJumpFirstChild NERDTree.txt /*NERDTreeMapJumpFirstChild* | ||
90 | NERDTreeMapJumpLastChild NERDTree.txt /*NERDTreeMapJumpLastChild* | ||
91 | NERDTreeMapJumpNextSibling NERDTree.txt /*NERDTreeMapJumpNextSibling* | ||
92 | NERDTreeMapJumpParent NERDTree.txt /*NERDTreeMapJumpParent* | ||
93 | NERDTreeMapJumpPrevSibling NERDTree.txt /*NERDTreeMapJumpPrevSibling* | ||
94 | NERDTreeMapJumpRoot NERDTree.txt /*NERDTreeMapJumpRoot* | ||
95 | NERDTreeMapMenu NERDTree.txt /*NERDTreeMapMenu* | ||
96 | NERDTreeMapOpenExpl NERDTree.txt /*NERDTreeMapOpenExpl* | ||
97 | NERDTreeMapOpenInTab NERDTree.txt /*NERDTreeMapOpenInTab* | ||
98 | NERDTreeMapOpenInTabSilent NERDTree.txt /*NERDTreeMapOpenInTabSilent* | ||
99 | NERDTreeMapOpenRecursively NERDTree.txt /*NERDTreeMapOpenRecursively* | ||
100 | NERDTreeMapOpenSplit NERDTree.txt /*NERDTreeMapOpenSplit* | ||
101 | NERDTreeMapOpenVSplit NERDTree.txt /*NERDTreeMapOpenVSplit* | ||
102 | NERDTreeMapPreviewSplit NERDTree.txt /*NERDTreeMapPreviewSplit* | ||
103 | NERDTreeMapPreviewVSplit NERDTree.txt /*NERDTreeMapPreviewVSplit* | ||
104 | NERDTreeMapQuit NERDTree.txt /*NERDTreeMapQuit* | ||
105 | NERDTreeMapRefresh NERDTree.txt /*NERDTreeMapRefresh* | ||
106 | NERDTreeMapRefreshRoot NERDTree.txt /*NERDTreeMapRefreshRoot* | ||
107 | NERDTreeMapToggleBookmarks NERDTree.txt /*NERDTreeMapToggleBookmarks* | ||
108 | NERDTreeMapToggleFiles NERDTree.txt /*NERDTreeMapToggleFiles* | ||
109 | NERDTreeMapToggleFilters NERDTree.txt /*NERDTreeMapToggleFilters* | ||
110 | NERDTreeMapToggleHidden NERDTree.txt /*NERDTreeMapToggleHidden* | ||
111 | NERDTreeMapToggleZoom NERDTree.txt /*NERDTreeMapToggleZoom* | ||
112 | NERDTreeMapUpdir NERDTree.txt /*NERDTreeMapUpdir* | ||
113 | NERDTreeMapUpdirKeepOpen NERDTree.txt /*NERDTreeMapUpdirKeepOpen* | ||
114 | NERDTreeMappings NERDTree.txt /*NERDTreeMappings* | ||
115 | NERDTreeMarkBookmarks NERDTree.txt /*NERDTreeMarkBookmarks* | ||
116 | NERDTreeMenu NERDTree.txt /*NERDTreeMenu* | ||
117 | NERDTreeMenu-j NERDTree.txt /*NERDTreeMenu-j* | ||
118 | NERDTreeMenu-k NERDTree.txt /*NERDTreeMenu-k* | ||
119 | NERDTreeMenuAPI NERDTree.txt /*NERDTreeMenuAPI* | ||
120 | NERDTreeMenuDown NERDTree.txt /*NERDTreeMenuDown* | ||
121 | NERDTreeMenuUp NERDTree.txt /*NERDTreeMenuUp* | ||
122 | NERDTreeMinimalMenu NERDTree.txt /*NERDTreeMinimalMenu* | ||
123 | NERDTreeMinimalUI NERDTree.txt /*NERDTreeMinimalUI* | ||
124 | NERDTreeMouseMode NERDTree.txt /*NERDTreeMouseMode* | ||
125 | NERDTreeNaturalSort NERDTree.txt /*NERDTreeNaturalSort* | ||
126 | NERDTreeNodeDelimiter NERDTree.txt /*NERDTreeNodeDelimiter* | ||
127 | NERDTreePathListenerAPI NERDTree.txt /*NERDTreePathListenerAPI* | ||
128 | NERDTreeQuitOnOpen NERDTree.txt /*NERDTreeQuitOnOpen* | ||
129 | NERDTreeRender() NERDTree.txt /*NERDTreeRender()* | ||
130 | NERDTreeRespectWildIgnore NERDTree.txt /*NERDTreeRespectWildIgnore* | ||
131 | NERDTreeSettings NERDTree.txt /*NERDTreeSettings* | ||
132 | NERDTreeSettingsDetails NERDTree.txt /*NERDTreeSettingsDetails* | ||
133 | NERDTreeSettingsSummary NERDTree.txt /*NERDTreeSettingsSummary* | ||
134 | NERDTreeShowBookmarks NERDTree.txt /*NERDTreeShowBookmarks* | ||
135 | NERDTreeShowFiles NERDTree.txt /*NERDTreeShowFiles* | ||
136 | NERDTreeShowHidden NERDTree.txt /*NERDTreeShowHidden* | ||
137 | NERDTreeShowLineNumbers NERDTree.txt /*NERDTreeShowLineNumbers* | ||
138 | NERDTreeSortOrder NERDTree.txt /*NERDTreeSortOrder* | ||
139 | NERDTreeStatusline NERDTree.txt /*NERDTreeStatusline* | ||
140 | NERDTreeUseTCD NERDTree.txt /*NERDTreeUseTCD* | ||
141 | NERDTreeWinPos NERDTree.txt /*NERDTreeWinPos* | ||
142 | NERDTreeWinSize NERDTree.txt /*NERDTreeWinSize* | ||
143 | loaded_nerd_tree NERDTree.txt /*loaded_nerd_tree* | ||