Commit Graph

361 Commits

Author SHA1 Message Date
Martin Grenfell
2f4d1b93e8 make the q mapping work with secondary trees 2009-01-09 14:46:49 +13:00
Martin Grenfell
f06d99f7b5 bugfix: use TreeDirNode.GetSelected() instead of getSelectedDir() 2009-01-09 12:17:16 +13:00
Martin Grenfell
c8afb6d92d fix a bug where :NERDTreeToggle was broken without :set hidden 2009-01-09 09:40:23 +13:00
Martin Grenfell
b0950d1593 move getSelectedNode into TreeFileNode 2009-01-07 21:42:44 +13:00
Martin Grenfell
9f569c61f9 move the drawTree function into TreeFileNode 2009-01-07 11:12:23 +13:00
Martin Grenfell
7874b3c60e move the openFileNode() code into TreeFileNode 2009-01-06 20:40:15 +13:00
Martin Grenfell
99afbe9ec8 move putCursorOnNode into TreeFileNode 2009-01-06 20:30:07 +13:00
Martin Grenfell
78aa2fa1db move the openExplorerFor code into the TreeDirNode 2009-01-06 20:16:33 +13:00
Martin Grenfell
111e309507 move the open(Dir|File)NodeSplit code into TreeFileNode 2009-01-06 13:49:04 +13:00
Martin Grenfell
7a86663128 move findNodeLineNumber/findRootNodeLineNumber into the TreeFileNode model 2009-01-06 13:31:17 +13:00
Martin Grenfell
6f24013463 switch to version 3.0.0 2008-12-29 14:55:44 +13:00
Martin Grenfell
d508c231b5 update quickhelp for the 'e' mapping 2008-12-29 14:44:53 +13:00
Martin Grenfell
39fc42d1cf change the H mapping (toggle hidden files) to I 2008-12-27 11:34:15 +13:00
Martin Grenfell
3b1289ba40 bugfix for the e mapping
if we were using e on the current dir (or a file in that dir) then we
would end up doing an ":edit" with no target. Now we use "." in
Path#strForEditCmd if it would resolve to an empty string
2008-12-25 10:10:56 +13:00
Martin Grenfell
6464cff113 fix a bug with the gi mapping 2008-12-25 09:51:25 +13:00
Martin Grenfell
f98a3f9eab bugfix with :NERDTreeMirror 2008-12-24 14:43:04 +13:00
Martin Grenfell
a33849ef9b change the way nerd tree buffers are named
Use a sequential numbering system instead of timestamps. This makes the
buffer names shorter and neater and easier on the eye when using
:NERDTreeMirror
2008-12-24 01:12:36 +13:00
Martin Grenfell
b09e0fbfa4 refactor the initNerdTreeMirror function 2008-12-24 01:12:21 +13:00
Martin Grenfell
402fea6902 make the NERDTreeMirror handler smarter 2008-12-24 01:12:05 +13:00
Martin Grenfell
589036f5c9 add NERDTreeMirror command and handler 2008-12-24 01:11:52 +13:00
Martin Grenfell
6103a308af set ei=all for all wincmd calls 2008-12-20 00:25:45 +13:00
Martin Grenfell
8d20ae913a adjust the quickhelp for primary vs secondary trees 2008-12-18 23:23:48 +13:00
Martin Grenfell
9fc7fb8d51 make the throw/catch code uniform and consistent 2008-12-18 13:25:30 +13:00
Martin Grenfell
6da7f317a3 when in a secondary tree, just use :split for the 'i' mapping 2008-12-18 12:55:06 +13:00
Martin Grenfell
d0d755ff87 ignore errors when removing netrw autocmds if they dont exist 2008-12-17 23:31:59 +13:00
Martin Grenfell
56b5446eaf change the <tab> mapping to i 2008-12-17 23:28:20 +13:00
Martin Grenfell
88020835d6 make the nerd tree only appear on the left or right
remove "top" and "bottom" as valid settings for NERDTreeWinPos
2008-12-17 23:22:43 +13:00
Martin Grenfell
5ff836ed26 clean up the netrwhijack code and make an option to disable it 2008-12-17 20:55:50 +13:00
Martin Grenfell
6b4dca7361 put the base nerd tree autocmds in an augroup 2008-12-17 20:24:08 +13:00
Martin Grenfell
7ac998fafc bugfix when creating a fresh tree for a tab 2008-12-14 23:05:43 +13:00
Martin Grenfell
888934a3be make TreeFileNode#isRoot() assume a tree exists for current buf, not tab 2008-12-14 00:43:50 +13:00
Martin Grenfell
fb5ee9fbc2 assume the cursor is already on a tree window when doing an open-split 2008-12-14 00:43:50 +13:00
Martin Grenfell
b2c56e94c9 fix for the preview mappings 2008-12-14 00:43:50 +13:00
Martin Grenfell
3e5faf9c56 hijack netrw 2008-12-14 00:43:50 +13:00
Martin Grenfell
b0297c5c91 use buffer level variables instead of tab lvl 2008-12-14 00:43:50 +13:00
Martin Grenfell
9aba1c17f6 switch to version 2.14.3 2008-12-13 11:29:30 +13:00
Martin Grenfell
729abf8e9b bugfix for read only node highlighting
previously, it wasnt highlighting the leading non-alphanumeric bits of RO files like   _foo.bar
2008-12-07 12:05:00 +13:00
Martin Grenfell
96215c5da6 use reletive paths for edit commands if possible 2008-11-30 20:05:54 +13:00
Martin Grenfell
f4c455bc2f fix a typo 2008-11-29 00:11:23 +13:00
Martin Grenfell
22904e41de allow relative paths for :NERDTree commands 2008-11-29 00:07:23 +13:00
Martin Grenfell
d49c742daf use the cwd instead of the dir of the current file for :NERDTree 2008-11-29 00:06:59 +13:00
Martin Grenfell
a59a2f6177 switch to version 2.14.2 2008-10-29 20:19:43 +13:00
Martin Grenfell
4b61723952 rename and fix s:windowIsUsable() 2008-10-29 10:07:32 +13:00
Martin Grenfell
00ab690758 bugfix for doing :qa when a nerd tree is open in another tab 2008-10-28 21:03:39 +13:00
Martin Grenfell
d4b4d69469 when opening a file (with o), dont split unless there is no choice 2008-10-27 23:21:39 +13:00
Martin Grenfell
283559bd97 fix a bug where directories starting with + couldnt be opened 2008-10-19 23:06:32 +13:00
Martin Grenfell
38442b06d4 refactor code to find tree indent level 2008-10-19 23:06:09 +13:00
Martin Grenfell
ae0d744357 fix a backwards compatibility bug with maps
Do an unlet <old key> when over riding a method on a prototype object.
Some older versions of vim spaz out otherwise.

Note: i was using these unlets up until a few versions ago when the were
refactored out
2008-10-16 22:55:44 +13:00
Martin Grenfell
9b192b4be4 bump the version 2008-10-12 10:31:00 +13:00
Martin Grenfell
d89dbd354a dont clobber &cpo 2008-10-01 23:17:33 +13:00
Martin Grenfell
ed273e108d minor refactor to Bookmark#toRoot() 2008-09-29 11:33:58 +13:00
Martin Grenfell
03dec4cde4 rename TreeFileNode#findOpenDirSiblingWithChildren
to TreeFileNode#findOpenDirSiblingWithVisibleChildren
2008-09-24 12:42:42 +12:00
Martin Grenfell
171c3825fa bug fix for TreeDirNode#hasVisibleChildren() 2008-09-24 12:42:15 +12:00
Martin Grenfell
be2e602efa make path.bookmarkNames private 2008-09-11 12:01:54 +12:00
Martin Grenfell
2ca4573b01 switch to version 2.14.0, update changelog 2008-09-07 12:44:13 +12:00
Martin Grenfell
cdc005f46a downcase all script level function names 2008-09-05 14:34:50 +12:00
Martin Grenfell
19d5aaa513 bugfix: openRecursively2 hadnt been renamed properly 2008-09-04 15:40:09 +12:00
Martin Grenfell
83966b7563 correct a comment 2008-09-03 18:23:08 +12:00
Martin Grenfell
b2b2bdfccd make TreeDirNode#initChildren private 2008-09-03 18:20:09 +12:00
Martin Grenfell
cf8c54689b make TreeDirNode#openRecursively2 private 2008-09-03 18:19:44 +12:00
Martin Grenfell
a8cd995624 remove 2 unused methods 2008-09-03 18:14:44 +12:00
Martin Grenfell
82a6064803 fix a comment 2008-09-03 18:12:03 +12:00
Martin Grenfell
f8b51d01b7 rename all classes - remove the leading 'o' 2008-09-03 18:03:56 +12:00
Martin Grenfell
3cbb73a63c remove 2 unused function2 2008-09-03 17:57:33 +12:00
Martin Grenfell
d24a421efd cosmetic fix 2008-09-03 17:45:22 +12:00
Martin Grenfell
6cf4e9a763 move some bookmark logic into the model
move the bookmark validation logic into the model, as well as the
bookmark to root code
2008-09-03 17:40:33 +12:00
Martin Grenfell
2e26da9666 minor cosmetic change 2008-09-03 17:40:26 +12:00
Martin Grenfell
e102abe98f move a method into the TreeDirNode model 2008-09-03 16:32:14 +12:00
Martin Grenfell
4c1362aff8 rename all class instance methods to start with lower case 2008-09-03 15:58:19 +12:00
Martin Grenfell
1a4cf45f03 remove some unneeded 'unlet' calls 2008-09-03 15:06:15 +12:00
Martin Grenfell
374df70218 remove some unneeded syntax 2008-09-03 15:05:50 +12:00
Martin Grenfell
a57b867ee6 correct the comments above s:GetSelectedBookmark() 2008-08-31 20:58:08 +12:00
Martin Grenfell
927aebfa8b display bookmarks without the surrounding [ ] 2008-08-31 20:57:37 +12:00
Martin Grenfell
4f0a39159a fix some bugs with bookmarks
if #delete() was called on a bookmark that wasnt cached, the wrong error
was being "catch"ed
2008-08-31 20:56:13 +12:00
Martin Grenfell
76d2ecbb17 add keymap to delete bookmarks 2008-08-31 20:55:24 +12:00
Martin Grenfell
73322e88d2 fix a bug with the <c-w>o mapping
now we dont assume the cursor is in the nerd tree window when calling
s:SaveScreenState()
2008-08-03 16:46:48 +12:00
Martin Grenfell
0620b91efa switch version to 2.13.0 2008-07-20 22:34:48 +12:00
Martin Grenfell
fe249e20b9 tell the user how many files couldnt be loaded 2008-07-20 01:06:00 +12:00
Martin Grenfell
e819e13a5d check for FIFO files when initializing path objects
calling filereadable() on a FIFO file never terminates so we have to
check for them
2008-07-20 00:50:47 +12:00
Martin Grenfell
5c95fbda65 improve invalid bookmarks handling
invalid bookmarks now placed after a blank line at the bottom of the
bookmarks file

if invalid bookmarks are detected, an error is outputted which directs
the user to :help NERDTreeInvalidBookmarks, which had been added to the
help file in this commit
2008-07-16 22:46:46 +12:00
Martin Grenfell
3e217115bc fix a bug with improper use of bufwinnr function
add a '^' and '$' to the end of the file matching pattern so it cant get
confused by buffer names that happen to be a substring of buffer we are
comparing against
2008-07-16 18:37:52 +12:00
Martin Grenfell
5d564fdbcf bugfix for the mouse handling function
previously the mouse handling function was not passing the needed
argument to the ActivateNode function
2008-07-16 18:23:17 +12:00
Martin Grenfell
8184b964bc dont delete invalid bookmarks
now if invalid bookmarks are detected, the offending lines are moved to
the bottom of the bookmarks file.

if the user tries to activate a bookmark that has become invalid after
it was read, that bookmark will be removed from the cache and put at the
bottom of the bookmarks file
2008-07-15 23:22:36 +12:00
Martin Grenfell
0daeebc0eb Revert "implement copying nodes for windows"
This reverts commit 21601d9c3d.

Ok, so that copying command doesnt work for windows... it doesnt do
directories properly.
2008-07-14 11:19:56 +12:00
Martin Grenfell
5939fdb140 add s:ValidateBookmark() 2008-07-13 21:03:33 +12:00
Martin Grenfell
9dd850b672 refactored the bookmark not found exception code 2008-07-13 21:02:59 +12:00
Martin Grenfell
21601d9c3d implement copying nodes for windows 2008-07-13 20:23:48 +12:00
Martin Grenfell
332a1baedd ensure bookmarks exist before opening them 2008-07-13 16:38:52 +12:00
Martin Grenfell
e8aadb77b8 reposition a method in the file 2008-07-13 16:02:20 +12:00
Martin Grenfell
31c1faea32 make NERDTreeChDir default to 0
we dont need it to default to 1 anymore as that was a hack for windows,
but now that we handle windows paths properly we dont need it
2008-07-13 15:06:57 +12:00
Martin Grenfell
818a53003e write bookmarks file after deleting a bookmark 2008-07-13 14:13:58 +12:00
Martin Grenfell
78419f858c delete a paths bookmarks when delete the path 2008-07-13 14:08:06 +12:00
Martin Grenfell
b1d10a12fa refresh new parent node after a move operation 2008-07-13 14:03:12 +12:00
Martin Grenfell
f404cdd54b update bookmarks when moving via filesystem menu 2008-07-13 13:43:43 +12:00
Martin Grenfell
c463234452 fix caching bug for s:oPath.BookmarkNames() 2008-07-13 13:35:30 +12:00
Martin Grenfell
b1020ad9c8 remove some unused code 2008-07-13 11:39:43 +12:00
Martin Grenfell
0ad0d195e5 make NERDTreeQuitOnOpen option work with g<tab>/go 2008-07-11 21:17:29 +12:00
Martin Grenfell
43bf05c42e jump to the bookmarks table after opening it
when the user hits B and opens the bookmarks table, stick the cursor at
the top of it
2008-07-07 21:08:02 +12:00
Martin Grenfell
236df49362 refactor the t/T mappings for bookmarks
this way feels cleaner
2008-07-07 20:43:11 +12:00
Martin Grenfell
bccd73c8f5 make t/T open a nerd tree rather than netrw
make the t/T on directory nodes open a fresh NERD tree for the selected
dir in a new tab, rather than a netrw.
2008-07-07 20:43:11 +12:00
Martin Grenfell
fd487dfa5c make t/T open a new tree in a new tab, not netrw
doesnt work for paths with some screwed up chars in them
2008-07-07 20:43:11 +12:00
Martin Grenfell
f183d60b13 switch version to 2.12.0 2008-07-05 12:17:21 +12:00
Martin Grenfell
06c7c53127 fix for swap files and opening in a split
when opening a file in a new split (with the <tab> map) we were doing
the :split with a "silent" modifier. This meant that a swap existed and
input was required from the user, the script would just freeze up
2008-07-02 22:38:47 +12:00
Martin Grenfell
ec682b1f9b fix bookmark highlighting and make it "quieter"
highlighting was still broken for bookmarks that werent alphanumeric
w/underscores. Also, highlight the path parts of the bookmarks table as
"normal" so they dont demand as much attention
2008-07-02 22:24:31 +12:00
Martin Grenfell
7a15d9879f use s:Echo instead of :echo 2008-07-02 21:22:51 +12:00
Martin Grenfell
dea37444bc loosen bookmark name restrictions
now the only rule is that they cant contain spaces
2008-07-02 21:22:26 +12:00
Martin Grenfell
f5a20e5379 fix some bugs when dealing with invalid bookmarks 2008-07-02 21:15:28 +12:00
Martin Grenfell
d0cb14c7ce make every tab have its own filter settings
The tree filters for files/hidden-files/bookmarks now operate off tab
local variables which default to the global variables when a nerd tree
is initialised in the tab. Note: the file-filter already operated in
this way.

This means that each tree/tab has its own filter settings that are
initialised to the users preferences as specified by the global
variables, but can be altered independently of the other trees/tabs
2008-07-01 22:42:19 +12:00
Martin Grenfell
f2b2327c24 merge bookmark name caching with path string caching
We needed to change how the bookmark name caching was done to work with
the new path-display-string caching. It has now been merged into path
string caching.
2008-07-01 21:13:21 +12:00
Martin Grenfell
9d5a940be3 clear cached display string when path is refreshed
when the path object is refreshed, force the display string to be
recalculated
2008-07-01 14:23:38 +12:00
Martin Grenfell
38d91b66b0 cache display string 2008-07-01 14:23:13 +12:00
Martin Grenfell
65ebd30334 fix a bug when overwriting an existing bookmark
if the bookmark wasnt cached in the tree an exception was being thrown
that wasnt caught
2008-06-30 18:26:35 +12:00
Martin Grenfell
1998cef2b4 highlighting fix - allow numbers in bookmark names 2008-06-30 09:37:44 +12:00
Martin Grenfell
030cff2eda sort bookmarks when we add a new one 2008-06-30 09:36:50 +12:00
Martin Grenfell
02facac20a make bookmark width take into account the line numbers 2008-06-30 09:26:18 +12:00
Martin Grenfell
5f4a002787 combine NERDTreeSplitVertical and NERDTreeWinPos
instead of using 2 options to specify the position of the tree, just use
NERDTreeWinPos and set it to "left", "right", "top", "bottom"
2008-06-29 19:43:50 +12:00
Martin Grenfell
c34968d282 add quickhelp doc for new t/T map functionality 2008-06-29 13:52:04 +12:00
Martin Grenfell
312ce93bb4 make the t/T mappings work for bookmarks
when you hit t/T on a bookmark a new tab is opened and, if the bookmark
is a dir, a nerd tree is opened for that dir. If the bookmark is a file
then just open the file
2008-06-29 13:34:36 +12:00
Martin Grenfell
06776557cf add bookmark mappings to quickhelp 2008-06-29 12:42:52 +12:00
Martin Grenfell
d831cbf17b render bookmark paths as wide as the window allows 2008-06-29 12:35:05 +12:00
Martin Grenfell
e1bd98fc7c open file bookmarks when user activates them
when the user activates a file bookmark open that file in the previous
window (i.e. do the 'o' mapping)
2008-06-29 01:00:55 +12:00
Martin Grenfell
7ca9b07b68 make NERDTreeShowBookmarks default to 0 2008-06-29 00:42:01 +12:00
Martin Grenfell
1532bf1922 move the bookmark->string code into the bookmark class 2008-06-29 00:41:34 +12:00
Martin Grenfell
ac544460e4 clean up/add comments to the bookmark methods 2008-06-29 00:33:25 +12:00
Martin Grenfell
d2989eb3e0 huge refactor, add bookmark class 2008-06-29 00:23:02 +12:00
Martin Grenfell
73be034d5e remove some random unneeded colons 2008-06-28 22:20:42 +12:00
Martin Grenfell
b5d6736f76 remove some old testing code 2008-06-28 22:20:09 +12:00
Martin Grenfell
1c38ffd30b add bookmark mapping to the quickhelp 2008-06-28 22:10:18 +12:00
Martin Grenfell
8e4b3565f8 turn bookmarks off by default 2008-06-28 21:43:00 +12:00
Martin Grenfell
31445645f7 truncate the bookmark path if its too long 2008-06-28 21:35:22 +12:00
Martin Grenfell
fc053917d8 add highlighting for bookmarks gui 2008-06-28 21:35:09 +12:00
Martin Grenfell
201df0a782 only show bookmark if NERDTreeShowBookmarks is set 2008-06-28 21:22:29 +12:00
Martin Grenfell
b59a7cd979 remove bookmarks display footer 2008-06-28 20:49:36 +12:00
Martin Grenfell
8f7aed712b add a mapping to toggle display of bookmarks 2008-06-28 20:44:55 +12:00
Martin Grenfell
3e946b1b4f make 'o' active bookmarks as well
hitting 'o' or clicking a bookmark will now make that bookmark to the
new tree root, in the same way that :BookmarkToRoot does
2008-06-28 20:43:33 +12:00
Martin Grenfell
2a16431b2d add bookmarks to the view 2008-06-28 20:42:00 +12:00
Martin Grenfell
b363396a93 apply "NERDTreeQuitOnOpen" patch from Matan Nassau
with some slight modifications
2008-06-27 22:58:33 +12:00
Martin Grenfell
87382097df resize the tree window when it was the only one
if the nerd tree window is the only window open when the user opens a
file, the file will be opened in a new split. Previously that meant the
two windows would take up half the screen each.
2008-06-24 19:32:52 +12:00
Martin Grenfell
e6d2f12bf6 switch to version 2.11.0 2008-06-23 20:40:29 +12:00
Martin Grenfell
43ee096cee inline some script level constants 2008-06-23 18:56:55 +12:00
Martin Grenfell
2b1eecebb2 bugfix for renaming files 2008-06-22 17:19:07 +12:00
Martin Grenfell
5884cf3774 fix a bug with scrolloff
take &scrolloff into account when restoring the window position when
recreating the nerd tree window
2008-06-22 13:54:32 +12:00
Martin Grenfell
d15818bafa save and restore the size of the window
store the old nerd tree window size as a tabpage local variable and
restore it when reloading the tree window
2008-06-22 13:53:13 +12:00
Martin Grenfell
f74ec0661d dont resize tree window when opening with <tab>
the <tab> mapping creates a new window, and we previously resized the
nerd tree window at the same time
2008-06-22 13:23:32 +12:00
Martin Grenfell
d68dcd252e bugfix to window resize code 2008-06-22 13:07:13 +12:00
Martin Grenfell
30bfb6e6b7 Revert "be silent when opening files"
This reverts commit 6334e99192.
Opening files silently causes vim to hang if the file is already open by
another vim instance (it tries to print out the swap file
message/options but it cant).
2008-06-22 12:42:52 +12:00
Martin Grenfell
bfa5de8c55 minor bugfix 2008-06-22 12:29:18 +12:00
Martin Grenfell
a701bb71c4 remove some trailing whitespace from the view
The quickhelp had some trailing whitespace, this was removed and a help
highlight pattern had to be changed to fit. Also, there was another
trailing space the s:RenderView() function.
2008-06-22 00:47:12 +12:00
Martin Grenfell
6343639193 remove the magic from the <c-j>/<c-k> mappings
previoulsy, <c-k>/<c-j> did magic stuff if the selected node was a file.
i.e. jumped to the parent/parents next sibling. I chose to remove this
behaviour as it is more confusing than helpful.
2008-06-22 00:35:50 +12:00
Martin Grenfell
5ce5c62611 dont ever escape paths when calling delete()
previously we were escaping when deleting files, and this was causing
the operation to fail
2008-06-22 00:19:28 +12:00