Compare commits

...

109 Commits

Author SHA1 Message Date
Martin Grenfell
a856622f0c switch vertion to 2.10.0 2008-06-17 22:58:26 +12:00
Martin Grenfell
ce79c243a3 show how many invalid bookmarks were read 2008-06-17 21:20:56 +12:00
Martin Grenfell
e1b369f34e update header and change license to wtfpl 2008-06-17 21:03:00 +12:00
Martin Grenfell
0a73777381 bugfix for reading files with invalid bookmark syntax 2008-06-16 20:54:28 +12:00
Martin Grenfell
176b551af0 handle invalid bookmarks in bookmarks file 2008-06-16 20:33:17 +12:00
Martin Grenfell
95ee07c9d3 switch version to 2.10.0rc1 2008-06-13 18:46:34 +12:00
Martin Grenfell
b58ccce913 update changelog and credits 2008-06-13 18:46:26 +12:00
Martin Grenfell
b60bcb6cb2 bugfix for :NERDTree when a file bookmark is given 2008-06-13 13:01:05 +12:00
Martin Grenfell
f7e8c453ea make :OpenBookmark open a netrw for dir bookmarks 2008-06-13 12:51:06 +12:00
Martin Grenfell
58ccd230fa refactor the logic out of s:OpenExplorer()
refactor out the code that actually opens the explorer window into
s:OpenExplorerFor(treenode) so that we can call it separately
2008-06-13 12:48:56 +12:00
Martin Grenfell
866df769b5 fix for quickhelp highlighting bug 2008-06-12 22:53:45 +12:00
Martin Grenfell
bd3b03fd79 update doc/changelog 2008-06-12 22:44:31 +12:00
Martin Grenfell
9030ff0312 make the quickhelp narrower so it fits 2008-06-12 22:35:17 +12:00
Martin Grenfell
5172efc976 bugfix: dont render duplicate bookmarks
if a bookmark is created, remove any previously cached bookmark of the
same name from the tree
2008-06-12 22:31:28 +12:00
Martin Grenfell
b252a1250a rename 'marks' to 'bookmarks' 2008-06-12 21:14:07 +12:00
Martin Grenfell
dae5c93fec fix NERDTree-C doc 2008-06-10 23:00:22 +12:00
Martin Grenfell
004b4fc9dd add a note marks to the intro 2008-06-10 23:00:03 +12:00
Martin Grenfell
7614f745ae some fixes/enhancements to the marks doc 2008-06-10 22:57:30 +12:00
Martin Grenfell
585b5f1579 remove trailing whitespace 2008-06-10 22:51:36 +12:00
Martin Grenfell
bc41c51f93 doc :RevealMark 2008-06-10 22:50:52 +12:00
Martin Grenfell
0888f6c011 fix an error in a method header 2008-06-10 22:49:20 +12:00
Martin Grenfell
df8f132d6e update the quickhelp 2008-06-10 22:49:10 +12:00
Martin Grenfell
d7a319c3a6 rename RecallMark to RevealMark 2008-06-10 22:48:31 +12:00
Martin Grenfell
5a45ea08c4 add/update doc for the mark commands 2008-06-10 22:45:10 +12:00
Martin Grenfell
ec7e013150 add some mark quickhelp 2008-06-10 21:53:31 +12:00
Martin Grenfell
5b35d0bb31 bugfix: fix NERDTreeFromMark command
previously it called a nonexisting function
2008-06-10 12:49:14 +12:00
Martin Grenfell
40ccf3cd45 make the mark manipulation funcs use the caching
s:ClearMarks(), s:ClearAllMarks() and s:MarkNode() now use tell the
relevant path objects to update their mark cache
2008-06-09 22:04:31 +12:00
Martin Grenfell
1b17f945a3 refactor s:GetPath() to take marks into account 2008-06-09 21:23:43 +12:00
Martin Grenfell
421431b5df correct a method header comment 2008-06-09 21:22:34 +12:00
Martin Grenfell
26983f1921 make oPath cache the marks associated with it
This is mainly for performance reasons. Calculating the marks anew
everytime oPath#MarkNames() is called greatly increases the rendering
time of the tree. It trippled it for just a handful of marks...
2008-06-09 21:18:30 +12:00
Martin Grenfell
1571274aec refactor the Refresh() method for tree nodes
create a oFileTreeNode#Refresh() and make sure that Refresh() is always
called for dir nodes
2008-06-09 21:13:25 +12:00
Martin Grenfell
a111af5361 merge InitNerdTreeFromMark into InitNerdTree 2008-06-09 18:20:22 +12:00
Martin Grenfell
64514e3ceb make :ClearMarks default to all marks on the current node 2008-06-09 13:21:44 +12:00
Martin Grenfell
bcc690a141 put cursor on the tree root by default 2008-06-09 13:01:48 +12:00
Martin Grenfell
397dee5cb1 remove all trailing whitespace 2008-06-09 12:46:53 +12:00
Martin Grenfell
dbb0677749 add :NERDTreeFromMark and corresponding function 2008-06-09 12:44:05 +12:00
Martin Grenfell
0fed73d83a read marks when vim loads, not when a nerd tree loads 2008-06-09 12:40:04 +12:00
Martin Grenfell
3a437b402a dont call RenderView() inside ReadMarks() 2008-06-09 12:37:20 +12:00
Martin Grenfell
1d9564db54 improve the error handling of RecallMark() 2008-06-08 21:53:25 +12:00
Martin Grenfell
c63e183acf make OpenMark open the mark even if its not cached
if OpenMark is called for a mark for a file that isnt cached in the
tree, just open the file anyway and dont put attempt to put the
cursor on it etc
2008-06-08 21:07:13 +12:00
Martin Grenfell
6334e99192 be silent when opening files 2008-06-08 21:02:54 +12:00
Martin Grenfell
776aeef26f bugfix for oTreeFileNode#MakeRoot()
if MakeRoot is called for a file, make sure that the nodes parent is
initialized
2008-06-08 20:53:43 +12:00
Martin Grenfell
1d6516b96d add oTreeFileNode.CacheParent() 2008-06-08 20:53:12 +12:00
Martin Grenfell
995f7faec3 only attempt to open marks file if it exists 2008-06-08 19:16:38 +12:00
Martin Grenfell
140deac284 add NERDTreeMarksFile global var
NERDTreeMarksFile is full path of the file that stores the marks
2008-06-08 18:42:07 +12:00
Martin Grenfell
6e24eed04a use a script lvl variable for NERDTreeSortStarIndex 2008-06-08 18:30:31 +12:00
Martin Grenfell
82c1fece9f make MarkToRoot() work for nodes that arent cached
now if you go :MarkToRoot foo  and foo points to a path that isnt
cached, a new tree node will be created and made root. Note that all
cached nodes will be lost as this is the same as opening a new nerd tree
2008-06-08 18:24:47 +12:00
Martin Grenfell
371379a860 read and write marks automatically 2008-06-08 17:58:38 +12:00
Martin Grenfell
0a91f3511e add functions and :commands to read/write marks to a file 2008-06-08 17:57:13 +12:00
Martin Grenfell
192424429d make marks global instead of tab based 2008-06-08 17:51:05 +12:00
Martin Grenfell
3092355648 add a modeline 2008-06-08 17:34:22 +12:00
Martin Grenfell
ae50662943 clear all marks when the tree is initialized 2008-06-07 18:12:05 +12:00
Martin Grenfell
8529b6f0e3 add s:ClearAllMark() and refactor to use it 2008-06-07 18:11:48 +12:00
Martin Grenfell
d718f1098c put the cursor on the new root after :MarkToRoot 2008-06-07 18:06:32 +12:00
Martin Grenfell
0501fc825c add :MarkToRoot command and a corresponding function 2008-06-07 17:40:18 +12:00
Martin Grenfell
05ce3ab896 add searchFromAbsoluteRoot flag to s:GetNodeForMark 2008-06-07 17:38:56 +12:00
Martin Grenfell
642c2b76fc add oFileNode#MakeRoot() and refactor s:ChRoot()
not that as of this commit, you can now use the C mapping on a file node
and its parent dir node will become the new root
2008-06-07 17:36:14 +12:00
Martin Grenfell
6b7760e6e4 add s:AbsoluteTreeRoot() 2008-06-07 17:34:45 +12:00
Martin Grenfell
5cafc7018d bugfix to s:GetNodeForMark() 2008-06-07 14:37:39 +12:00
Martin Grenfell
332756282a add :ClearAllMarks 2008-06-07 13:57:02 +12:00
Martin Grenfell
bcc1180510 add :ClearMarks and bind it to s:ClearMarks() 2008-06-07 13:56:41 +12:00
Martin Grenfell
2ecd6ebd63 add s:MarkForNode() and refactor to use it 2008-06-07 12:45:21 +12:00
Martin Grenfell
5a4ef66db2 improve error messages when marks dont exist 2008-06-07 10:12:37 +12:00
Martin Grenfell
a537e1535c some highlighting fixes for marks 2008-06-07 00:43:24 +12:00
Martin Grenfell
44e8534f1f display marks before the symlink target 2008-06-07 00:43:00 +12:00
Martin Grenfell
c108a19881 add a redraw! in s:OpenMark()
if we were opening a mark (with :OpenMark) that was scrolled off the
screen, the tree  window wasnt getting scrolled to the node
2008-06-07 00:24:51 +12:00
Martin Grenfell
5685fa7af4 add :OpenMark command 2008-06-06 23:33:48 +12:00
Martin Grenfell
990706b725 restrict mark names to alphanumeric + underscores 2008-06-06 23:33:01 +12:00
Martin Grenfell
6e60ecfee1 check for nonexistent marks 2008-06-06 23:19:28 +12:00
Martin Grenfell
219d16f61a bugfix for stripping :Mark markup from a line 2008-06-06 23:13:05 +12:00
Martin Grenfell
5fd7441dbe add highlighting for marks 2008-06-06 23:02:37 +12:00
Martin Grenfell
a5f86e1a8f minor fix to method header 2008-06-06 22:55:20 +12:00
Martin Grenfell
782e60efc9 display marks on tree 2008-06-06 22:27:01 +12:00
Martin Grenfell
7b26dac959 add oPath#MarkNames() 2008-06-06 22:26:41 +12:00
Martin Grenfell
600f2cac14 make PutCursorOnNode open ancestors until target node is visible 2008-06-06 13:21:55 +12:00
Martin Grenfell
fb3c4f9212 add marking functionality
add ability to give a node a name and the abiliy to jump back to the
node for a given name
2008-06-05 22:41:05 +12:00
Martin Grenfell
24c1f6beab add recurseUpward arg to s:PutCursorOnNode
makes it attempt to put the cursor on the treenodes parent (recursively)
if the target node is hidden
2008-06-05 22:15:08 +12:00
Martin Grenfell
3e507620fe update changelog 2008-06-03 22:07:31 +12:00
Martin Grenfell
a520080cc3 put cursor on new node after copying 2008-06-03 22:02:59 +12:00
Martin Grenfell
b747086137 strip trailing slashes off copy destination 2008-06-03 22:02:59 +12:00
Martin Grenfell
7a1dbcbdb0 fix a bug with refreshing after copying 2008-06-03 22:02:59 +12:00
Martin Grenfell
ce9fece626 fix screen jumping bug with &scrolloff 2008-05-29 15:27:42 +12:00
Martin Grenfell
90fd47bd00 update the credits 2008-05-17 16:29:50 +12:00
Martin Grenfell
80e0bca4dc change version to 2.9.0 2008-05-17 16:24:48 +12:00
Martin Grenfell
04ea2eb0f7 apply Cory Echols' patch
adds :NERDTreeClose command and sets the filetype for the tree buffer to
"nerdtree"
2008-05-17 14:40:27 +12:00
Martin Grenfell
25aaaaae42 gitignore tags file 2008-05-17 14:36:02 +12:00
Martin Grenfell
8a32f5851f update changelog and credits 2008-05-17 14:12:23 +12:00
Martin Grenfell
6018625170 bugfix: use #StrForOS when refreshing a path 2008-05-16 12:35:11 +12:00
Martin Grenfell
c36aaf55f8 bugfix: process files with single letter extension
dont ignore files like foo.c !
2008-05-16 12:22:23 +12:00
Martin Grenfell
6e7960ba94 convert tabs to spaces
not sure how those tabs got in there!
2008-05-16 11:51:39 +12:00
Martin Grenfell
f1a9bd3c89 couple of fixes to the doc 2008-05-10 19:14:29 +12:00
Martin Grenfell
191dcc4068 remove a now unneeded not to windows users
dont warn windows users about setting NERDTreeChDirMode as drives are
handled properly now
2008-05-10 18:52:35 +12:00
Martin Grenfell
0d62ffd5db bugfix for paths on windows
delete oPath.NewMinimal cos it sucks and there is no need for it. It
was causing a bug with oPath.Equals on account of it wasnt correctly
determining whether a path found with s:GetSelectedPath() was a dir or a
file.
2008-05-10 18:29:20 +12:00
Martin Grenfell
510f890ee1 change to version 2.8.0.1 2008-05-10 16:28:01 +12:00
Martin Grenfell
06db1cdf2c fix some formatting 2008-05-10 16:27:50 +12:00
Martin Grenfell
0eaaf6842c improve path handling for windows 2008-05-10 16:26:32 +12:00
Martin Grenfell
2ed6524b9d use oPath#StrForCd where appropriate 2008-05-10 15:55:50 +12:00
Martin Grenfell
fb7f66dc47 update oPath#Equals 2008-05-10 15:49:08 +12:00
Martin Grenfell
dcf9e956a7 minor bugfix 2008-05-10 15:45:05 +12:00
Martin Grenfell
8aafa66eac handle trailing slashes inside oPath#Rename
previously the RenameCurrent() view function was removing trailing
slashes from the destination path before passing it to oPath, now oPath
handles the slashes
2008-05-10 15:33:11 +12:00
Martin Grenfell
f2ce7390b8 add oPath#StrForCd 2008-05-10 15:25:33 +12:00
Martin Grenfell
7275d89a35 add oPath#ExtractDriveLetter
If running windows, extract and cache the drive letter
2008-05-10 12:40:26 +12:00
Martin Grenfell
e6479c36f3 bugfix to prevent double escaping when refreshing a node 2008-05-04 21:37:36 +12:00
Martin Grenfell
da76bafaef add oPath#StrForGlob() to return a string that can be used to call globpath with
note: the main motivation behind this is to encapsulate differences in OSs
2008-05-04 21:33:52 +12:00
Martin Grenfell
ec76876a74 added a comment note to clarify something 2008-05-04 21:31:38 +12:00
Martin Grenfell
ef1a466342 make the script able to handle strange filenames with random chars in them (eg {'$%^&) 2008-05-04 16:48:32 +12:00
Martin Grenfell
56dd5f05ab fix the output of the rename prompt when it asks you to delete an old buffer 2008-05-04 14:22:59 +12:00
Martin Grenfell
92a006f51c some handy utils 2008-05-04 12:01:43 +12:00
Martin Grenfell
7d1cc4ecec bugfix: the script failed when being initialized on a dir containing spaces 2008-04-17 23:39:23 +12:00
4 changed files with 957 additions and 510 deletions

1
.gitignore vendored
View File

@@ -1,2 +1,3 @@
*~
*.swp
tags

18
Rakefile Normal file
View File

@@ -0,0 +1,18 @@
desc "Copy the vim/doc files into ~/.vim"
task :deploy_local do
run "cp plugin/NERD_tree.vim ~/.vim/plugin"
run "cp doc/NERD_tree.txt ~/.vim/doc"
end
desc "Create a zip archive for release to vim.org"
task :zip do
abort "NERD_tree.zip already exists, aborting" if File.exist?("NERD_tree.zip")
run "zip NERD_tree.zip plugin/NERD_tree.vim doc/NERD_tree.txt"
end
def run(cmd)
puts "Executing: #{cmd}"
system cmd
end

View File

@@ -2,7 +2,7 @@
omg its ... ~
________ ________ _ ____________ ____ __________ ____________~
/_ __/ / / / ____/ / | / / ____/ __ \/ __ \ /_ __/ __ \/ ____/ ____/~
@@ -17,13 +17,14 @@
==============================================================================
CONTENTS *NERDTree-contents*
CONTENTS *NERDTree-contents*
1.Intro...................................|NERDTree|
2.Functionality provided..................|NERDTreeFunctionality|
2.1 Commands..........................|NERDTreeCommands|
2.2 NERD tree mappings................|NERDTreeMappings|
2.3 The filesystem menu...............|NERDTreeFilesysMenu|
2.1 Global commands...................|NERDTreeGlobalCommands|
2.2 Bookmark commands.................|NERDTreeBookmarkCommands|
2.3 NERD tree mappings................|NERDTreeMappings|
2.4 The filesystem menu...............|NERDTreeFilesysMenu|
3.Options.................................|NERDTreeOptions|
3.1 Option summary....................|NERDTreeOptionSummary|
3.2 Option details....................|NERDTreeOptionDetails|
@@ -32,6 +33,7 @@ CONTENTS *NERDTree-contents*
6.The Author..............................|NERDTreeAuthor|
7.Changelog...............................|NERDTreeChangelog|
8.Credits.................................|NERDTreeCredits|
9.License.................................|NERDTreeLicense|
==============================================================================
1. Intro *NERDTree*
@@ -53,50 +55,99 @@ The following features and functionality are provided by the NERD tree:
* read-only files
* Many (customisable) mappings are provided to manipulate the tree:
* Mappings to open/close/explore directory nodes
* Mappings to open files in new/existing windows/tabs
* Mappings to change the current root of the tree
* Mappings to navigate around the tree
* Mappings to open files in new/existing windows/tabs
* Mappings to change the current root of the tree
* Mappings to navigate around the tree
* ...
* Most NERD tree navigation can also be done with the mouse
* Directories and files can be bookmarked.
* Most NERD tree navigation can also be done with the mouse
* Dynamic customisation of tree content
* custom file filters to prevent e.g. vim backup files being displayed
* optional displaying of hidden files (. files)
* files can be "turned off" so that only directories are displayed
* A textual filesystem menu is provided which allows you to
create/delete/rename file and directory nodes
* The position and size of the NERD tree window can be customised
create/delete/rename file and directory nodes as well as copy (for
supported OSs)
* The position and size of the NERD tree window can be customised
* The order in which the nodes in the tree are listed can be customised.
* A model of your filesystem is created/maintained as you explore it. This
has several advantages:
* All filesystem information is cached and is only re-read on demand
* If you revisit a part of the tree that you left earlier in your
session, the directory nodes will be opened/closed as you left them
session, the directory nodes will be opened/closed as you left them
* The script remembers the cursor position and window position in the NERD
tree so you can toggle it off (or just close the tree window) and then
reopen it (with NERDTreeToggle) the NERD tree window will appear EXACTLY
as you left it
* You can have a separate NERD tree for each tab
* You can have a separate NERD tree for each tab
==============================================================================
2. Functionality provided *NERDTreeFunctionality*
2. Functionality provided *NERDTreeFunctionality*
------------------------------------------------------------------------------
2.1. Commands *NERDTreeCommands*
2.1. Global Commands *NERDTreeGlobalCommands*
:NERDTree [start-directory] *:NERDTree*
Opens a fresh NERD tree in [start-directory] or the current
directory if [start-directory] isn't specified.
For example: >
:NERDTree /home/marty/vim7/src
< will open a NERD tree in /home/marty/vim7/src.
:NERDTree [<start-directory> | <bookmark>] *:NERDTree*
Opens a fresh NERD tree. The root of the tree depends on the argument
given. There are 3 cases: If no argument is given, the current directory
will be used. If a directory is given, that will be used. If a bookmark
name is given, the corresponding directory will be used. For example: >
:NERDTree /home/marty/vim7/src
:NERDTree foo (foo is the name of a bookmark)
<
:NERDTreeFromBookmark <bookmark> *:NERDTreeFromBookmark*
Opens a fresh NERD tree with the root initialized to the dir for
<bookmark>. This only reason to use this command over :NERDTree is for
the completion (which is for bookmarks rather than directories).
:NERDTreeToggle [start-directory] *:NERDTreeToggle*
If a NERD tree already exists for this tab, it is reopened and
rendered again. If no NERD tree exists for this tab then this
command acts the same as the |:NERDTree| command.
:NERDTreeToggle [<start-directory> | <bookmark>] *:NERDTreeToggle*
If a NERD tree already exists for this tab, it is reopened and rendered
again. If no NERD tree exists for this tab then this command acts the
same as the |:NERDTree| command.
:NERDTreeClose
Close the NERD tree in this tab.
------------------------------------------------------------------------------
2.2. NERD tree Mappings *NERDTreeMappings*
2.2. Bookmark Commands *NERDTreeBookmarkCommands*
Bookmarks in the NERD tree are a way to tag files or directories of interest.
For example, you could use bookmarks to tag all of your project directories.
See also |:NERDTree| and |:NERDTreeFromBookmark|.
Note that the following commands are only available in the NERD tree buffer.
:Bookmark <name>
Bookmark the current node as <name>. If there is already a <name>
bookmark, it is overwritten. <name> must consist of alphanumeric
characters and underscores.
:BookmarkToRoot <bookmark>
Make the directory corresponding to <bookmark> the new root. If a treenode
corresponding to <bookmark> is already cached somewhere in the tree then
the current tree will be used, otherwise a fresh tree will be opened.
Note that if <bookmark> points to a file then its parent will be used
instead.
:RevealBookmark <bookmark>
If the node is cached under the current root then it will be revealed
(i.e. directory nodes above it will be opened) and the cursor will be
placed on it.
:OpenBookmark <bookmark>
<bookmark> must point to a file. The file is opened as though |NERDTree-o|
was applied. If the node is cached under the current root then it will be
revealed and the cursor will be placed on it.
:ClearBookmarks [<bookmarks>]
Remove all the given bookmarks. If no bookmarks are given then remove all
bookmarks on the current node.
:ClearAllBookmarks
Remove all bookmarks.
------------------------------------------------------------------------------
2.3. NERD tree Mappings *NERDTreeMappings*
Default Description~ help-tag~
Key~
@@ -114,7 +165,7 @@ X.......Recursively close all children of the current node.......|NERDTree-X|
e.......Open a netrw for the current dir.........................|NERDTree-e|
double-click.......same as the |NERDTree-o| map.
middle-click.......same as |NERDTree-tab| for files, same as
middle-click.......same as |NERDTree-tab| for files, same as
|NERDTree-e| for dirs.
P.......Jump to the root node....................................|NERDTree-P|
@@ -311,7 +362,8 @@ Default key: C
Map option: NERDTreeMapChdir
Applies to: directories.
Made the selected directory node the new tree root.
Make the selected directory node the new tree root. If a file is selected, its
parent is used.
------------------------------------------------------------------------------
*NERDTree-u*
@@ -401,7 +453,7 @@ Toggles whether the quickhelp is displayed.
2.3. The filesystem menu *NERDTreeFilesysMenu*
The purpose of the filesystem menu is to allow you to perform basic filesystem
operations quickly from the NERD tree rather than the console.
operations quickly from the NERD tree rather than the console.
The filesystem menu can be accessed with 'm' mapping and has four supported
operations: >
@@ -428,7 +480,7 @@ on the renamed node.
To delete a node put the cursor on it and select the 'delete' option from the
filesystem menu. After confirmation the node will be deleted. If a file is
deleted but still exists as a buffer you will be given the option to delete
that buffer.
that buffer.
4. Copying nodes:
To copy a node put the cursor on it and select the 'copy' option from the
@@ -468,6 +520,8 @@ NERD tree. These options should be set in your vimrc.
|NERDTreeIgnore| Tells the NERD tree which files to ignore.
|NERDTreeBookmarksFile| Where the bookmarks are stored.
|NERDTreeMouseMode| Tells the NERD tree how to handle mouse
clicks.
@@ -489,7 +543,7 @@ NERD tree. These options should be set in your vimrc.
|NERDTreeWinPos| Tells the script where to put the NERD tree
window.
|NERDTreeWinSize| Sets the window size when the NERD tree is
opened.
@@ -497,10 +551,10 @@ NERD tree. These options should be set in your vimrc.
------------------------------------------------------------------------------
3.2. Customisation details *NERDTreeOptionDetails*
To enable any of the below options you should put the given line in your
To enable any of the below options you should put the given line in your
~/.vimrc
*loaded_nerd_tree*
*loaded_nerd_tree*
If this plugin is making you feel homicidal, it may be a good idea to turn it
off with this line in your vimrc: >
let loaded_nerd_tree=1
@@ -516,21 +570,21 @@ added to the nerd tree to make it more colourful.
Set it to 0 for a more vanilla looking tree.
------------------------------------------------------------------------------
*NERDTreeAutoCenter*
*NERDTreeAutoCenter*
Values: 0 or 1.
Default: 1
If set to 1, the NERD tree window will center around the cursor if it moves to
within |NERDTreeAutoCenterThreshold| lines of the top/bottom of the window.
This is ONLY done in response to tree navigation mappings,
This is ONLY done in response to tree navigation mappings,
i.e. |NERDTree-J| |NERDTree-K| |NERDTree-C-J| |NERDTree-c-K| |NERDTree-p|
|NERDTree-P|
The centering is done with a |zz| operation.
------------------------------------------------------------------------------
*NERDTreeAutoCenterThreshold*
*NERDTreeAutoCenterThreshold*
Values: Any natural number.
Default: 3
@@ -538,7 +592,7 @@ This option controls the "sensitivity" of the NERD tree auto centering. See
|NERDTreeAutoCenter| for details.
------------------------------------------------------------------------------
*NERDTreeCaseSensitiveSort*
*NERDTreeCaseSensitiveSort*
Values: 0 or 1.
Default: 0.
@@ -559,7 +613,7 @@ account. The above nodes would then be sorted like this: >
boner.c
<
------------------------------------------------------------------------------
*NERDTreeChDirMode*
*NERDTreeChDirMode*
Values: 0, 1 or 2.
Default: 1.
@@ -581,10 +635,6 @@ the CWD is changed whenever the tree root is changed. For example, if the CWD
is /home/marty/foobar and you make the node for /home/marty/foobar/baz the new
root then the CWD will become /home/marty/foobar/baz.
Note to windows users: it is highly recommended that you have this option set
to either 1 or 2 or else the script wont function properly if you attempt to
open a NERD tree on a different drive to the one vim is currently in.
Authors note: at work i have this option set to 1 because i have a giant ctags
file in the root dir of my project. This way i can initialise the NERD tree
with the root dir of my project and always have ctags available to me --- no
@@ -599,18 +649,18 @@ If set to 1, the current cursor line in the NERD tree buffer will be
highlighted. This is done using the |cursorline| option.
------------------------------------------------------------------------------
*NERDTreeIgnore*
*NERDTreeIgnore*
Values: a list of regular expressions.
Default: ['\~$'].
This option is used to specify which files the NERD tree should ignore. It
must be a list of regular expressions. When the NERD tree is rendered, any
files/dirs that match any of the regex's in NERDTreeIgnore wont be displayed.
files/dirs that match any of the regex's in NERDTreeIgnore wont be displayed.
For example if you put the following line in your vimrc: >
let NERDTreeIgnore=['\.vim$', '\~$']
<
then all files ending in .vim or ~ will be ignored.
then all files ending in .vim or ~ will be ignored.
Note: to tell the NERD tree not to ignore any files you must use the following
line: >
@@ -621,11 +671,18 @@ The file filters can be turned on and off dynamically with the |NERDTree-f|
mapping.
------------------------------------------------------------------------------
*NERDTreeMouseMode*
*NERDTreeBookmarksFile*
Values: a path
Default: $HOME/.NERDTreeBookmarks
This is where bookmarks are saved. See |NERDTreeBookmarkCommands|.
------------------------------------------------------------------------------
*NERDTreeMouseMode*
Values: 1, 2 or 3.
Default: 1.
If set to 1 then a double click on a node is required to open it.
If set to 1 then a double click on a node is required to open it.
If set to 2 then a single click will open directory nodes, while a double
click will still be required for file nodes.
If set to 3 then a single click will open any node.
@@ -639,7 +696,7 @@ then (to single click activate it) you must click somewhere in
'application.rb'.
------------------------------------------------------------------------------
*NERDTreeShowFiles*
*NERDTreeShowFiles*
Values: 0 or 1.
Default: 1.
@@ -651,7 +708,7 @@ useful for drastically shrinking the tree when you are navigating to a
different part of the tree.
------------------------------------------------------------------------------
*NERDTreeShowHidden*
*NERDTreeShowHidden*
Values: 0 or 1.
Default: 0.
@@ -672,7 +729,7 @@ window. Use one of the follow lines to set this option: >
let NERDTreeShowLineNumbers=0
let NERDTreeShowLineNumbers=1
<
------------------------------------------------------------------------------
*NERDTreeSortOrder*
Values: a list of regular expressions.
@@ -702,7 +759,7 @@ Other examples: >
(3) ['\/$', '\.rb$', '\.php$', '*', '\.swp$', '\.bak$', '\~$']
<
1. Directories will appear last, everything else will appear above.
2. Every will simply appear in alphabetical order.
2. Everything will simply appear in alphabetical order.
3. Dirs will appear first, then ruby and php. Swap files, bak files and vim
backup files will appear last with everything else preceding them.
@@ -712,7 +769,7 @@ Values: 0 or 1.
Default: 1.
This option, along with |NERDTreeWinPos|, is used to determine where the NERD
tree window appears.
tree window appears.
If it is set to 1 then the NERD tree window will appear on either the left or
right side of the screen (depending on the |NERDTreeWinPos| option).
@@ -729,7 +786,7 @@ determine where NERD tree window is placed on the screen.
If the option is set to 1 then the NERD tree will appear on the left or top of
the screen (depending on the value of |NERDTreeSplitVertical|). If set to 0,
the window will appear on the right or bottom of the screen.
the window will appear on the right or bottom of the screen.
This option is makes it possible to use two different explorer type
plugins simultaneously. For example, you could have the taglist plugin on the
@@ -782,7 +839,27 @@ Don't be shy --- the worst he can do is slaughter you and stuff you in the
fridge for later ;)
==============================================================================
7. Changelog *NERDTreeChangelog*
7. Changelog *NERDTreeChangelog*
2.10.0
- added bookmarks, see :help NERDTreeBookmarkCommands for details. Thanks
to Piotr Czachur for all his testing and suggestions.
- fixed screen jumping bug with when &scrolloff != 0
- fixed some bugs with copying nodes
- other random fixes
- change license to wtfpl
2.9.0
- path handling improvements, thanks to Zhang Shuhan for heaps of
testing/bug reports
* improved how paths are stored, now the script will no longer get
confused about drives on MF Windows
* made the script way better at handling paths with strange characters
in them (eg '$@; etc)
- applied a patch from Cory Echols
* add the command :NERDTreeClose to close the tree for the current tab
* set the filetype for the NERD tree buffer to "nerdtree"
2.8.0
- added an option to enable/disable line numbers in the NERD tree window,
@@ -796,7 +873,7 @@ fridge for later ;)
2.7.0
- Bug fix: Now when you have the tree on the right and you open it with
multiple windows stacked, it will take up the full height of the vim
window.
window.
- Now line numbers always turned off in the tree by default
- Implemented copying of nodes (via the filesystem menu) for *nix/macosx
- took the help doc out of the script and repackaged the whole thing as a
@@ -871,13 +948,13 @@ fridge for later ;)
- Made the quickhelp correctly display the current single/double click
mappings for opening nodes as specified by the NERDTreeMouseMode option.
- Fixed a bug where the script was spazzing after prompting you to delete
a modified buffer when using the filesystem menu.
a modified buffer when using the filesystem menu.
- Refactoring
2.2.3
- Refactored the :echo output from the script.
- Fixed some minor typos in the doc.
- Made some minor changes to the output of the 'Tree filtering mappings'
part of the quickhelp
part of the quickhelp
2.2.2
- More bugfixes... doh.
@@ -982,7 +1059,7 @@ Thanks to Michael Madsen for emailing me about making case sensitivity
optional when sorting nodes.
Thanks to AOYAMA Shotaro for suggesting that i echo a "please wait" message
when opening large directories.
when opening large directories.
Thanks to Michael Madsen for requesting the NERDTreeCaseSensitiveSort option.
@@ -999,3 +1076,18 @@ the &hidden option is set.
Thanks to Olivier Yiptong for prompting me to make line numbers in the
NERD tree window optional.
Thanks to Zhang Shuhan for all of his emails and testing to help improve the
NERD tree path handling.
Thanks to Cory Echols for sending a patch to add the :NERDTreeClose command and
set the NERD tree buffers filetype to 'nerdtree'
Thanks to Piotr Czachur for all his suggestions and testing for the bookmarks
feature.
==============================================================================
9. License *NERDTreeLicense*
The NERD tree is released under the wtfpl.
See http://sam.zoy.org/wtfpl/COPYING.

File diff suppressed because it is too large Load Diff