Commit Graph

416 Commits

Author SHA1 Message Date
marty
10bb62a728 add comments to MenuItem and MenuController methods 2009-08-20 13:35:47 +12:00
marty
bd5e5d71b5 rearange some code so the menu doesnt change the window/cursor position 2009-08-20 03:05:21 +12:00
marty
8535a906be refactor MenuItem.CreateSeparator() 2009-08-19 15:44:53 +12:00
marty
e93bf0632b make the menu system more awesome 2009-08-19 02:05:02 +12:00
marty
31c0ec6d63 add basic menu implementation 2009-08-18 09:44:49 +12:00
marty
fc3cb76695 remove a redundant function 2009-08-12 01:49:48 +12:00
marty
389f33ea81 add quickhelpText to s:KeyMap and display it in quickhelp 2009-08-12 01:38:57 +12:00
marty
abc0cc4c40 remove some useless/misleading comments 2009-08-12 01:15:18 +12:00
marty
1654ef820b remove some redundant code 2009-08-12 01:14:15 +12:00
marty
df3485ec64 remove an unused function 2009-08-12 01:13:29 +12:00
marty
59257d7a3a remove the old api functions 2009-08-12 00:55:12 +12:00
marty
a052a0db65 add an API to add custom key maps 2009-08-12 00:53:16 +12:00
marty
65dd1137da create a new dir for nerdtree plugins 2009-08-11 16:35:19 +12:00
marty
a796715ac1 add A mapping to maximize/restore tree window size
this commit is a modified patch from Guillaume Duranceau
2009-08-11 16:09:51 +12:00
marty
02b3cec827 set up syntax highlighting even if highlighting rules already exist 2009-07-31 18:49:56 +12:00
Martin Grenfell
6518d1eb4c rename check_to_enable_callback to isActiveCallback 2009-07-21 23:43:00 +12:00
Martin Grenfell
a2ead3545e rename MenuCallback -> MenuItem 2009-07-21 21:13:23 +12:00
Martin Grenfell
f0290b08dd add another api callback to determine whether menu items should appear
this way we can e.g. not show the git submenu unless a git repo is
actually present
2009-07-21 19:23:44 +12:00
Martin Grenfell
a7f9abe827 fix a bug where the ../ and ./ entries werent being filtered out 2009-07-20 01:01:12 +12:00
Martin Grenfell
c75a022a23 extend the api and move the fs operations into a plugin 2009-07-19 17:21:57 +12:00
Martin Grenfell
1acf6321a5 refactor the activate method so the code is now in the models 2009-07-18 01:04:40 +12:00
Martin Grenfell
e164980d84 fix a bug where the script ignored dirs ending in a dot 2009-07-18 00:55:01 +12:00
Martin Grenfell
71ebe27a8d fix a bug with secondary nerd trees and NERDTreeQuitOnOpen 2009-07-18 00:48:32 +12:00
Martin Grenfell
e7ebee3084 switch to version 3.1.1 2009-06-07 21:36:59 +12:00
Martin Grenfell
5f4c005771 bugfix: :NERDTreeMirror doesnt have tab completion 2009-06-07 20:40:19 +12:00
Martin Grenfell
9e0a0b6a43 fix a bug that was causing no-name bufs to be created 2009-06-02 20:04:10 +12:00
Martin Grenfell
5c85d28285 fix a function description comment 2009-06-02 11:12:36 +12:00
Martin Grenfell
f65bc62fac fix a bug that was occurring with :set nohidden
previously the code didnt take &hidden (it assumed it was set) into
account when determining if splitting was needed when using the o
mapping on a file node
2009-06-02 11:10:03 +12:00
Martin Grenfell
eef90bf320 fix lots of no-name buffers being created
Previously every time the tree window was created a new [no-name] buffer
was being created (visible with :ls!). Avoid this by creating the window
with split,  not new
2009-03-12 09:44:02 +13:00
Martin Grenfell
3796a8799a map '<CR>' to the same as 'o' 2009-03-06 15:57:51 +13:00
Martin Grenfell
c726655d23 Compatibility syntax fix for screwy versions of vim 2009-01-30 23:59:50 +13:00
Martin Grenfell
bdfac3e25c switch to version 3.1.0 2009-01-27 18:58:38 +13:00
Martin Grenfell
992c9f24eb use ==# always instead of ==
this is because of vims fucking stupid functionality where ignorecase
changes the way == behaves. It was causing bugs when the user had
ignorecase set.
2009-01-24 00:06:41 +13:00
Martin Grenfell
8164fa09d3 fix a bug with the Path#strForEditCmd() and relative paths 2009-01-23 23:43:47 +13:00
Martin Grenfell
5e50601788 fix a bug where doing a :cd would cause :NERDTreeToggle to fail 2009-01-23 23:43:00 +13:00
Martin Grenfell
23e79de2c2 make the hijacknetrw functionality work when vim starts up
now we can go   vim  <some dir>   and it loads up a nerd tree instead of
a netrw
2009-01-23 21:27:53 +13:00
Martin Grenfell
4accc8a79c fix a bug when g:NERDTreeChDirMode==2
when the user activate the   ../ (up a dir)   line or hit U or U it
wasnt changing vims CWD when NERDTreeChDirMode==2
2009-01-21 23:03:54 +13:00
Martin Grenfell
7522cbf4f0 add g:NERDTreeStatusline option
allows the statusline to be customised for the nerd tree window
2009-01-21 23:03:45 +13:00
Martin Grenfell
3a25a594ca add -bar to all :commands 2009-01-14 16:24:14 +13:00
Martin Grenfell
0f2effb049 make the vertical splitting work with secondary trees 2009-01-14 15:54:26 +13:00
Martin Grenfell
63ee15ca6e do the vertical split according to the users settings 2009-01-14 15:37:19 +13:00
Martin Grenfell
f8a105d972 remove a rogue call to s:putCursorInTreeWin() 2009-01-14 14:43:23 +13:00
Martin Grenfell
f2707106bd bugfix: make the vsplit maps work when the tree is on the left 2009-01-14 11:19:47 +13:00
Martin Grenfell
1586cfdb03 add g and gs to the guickhelp 2009-01-14 11:19:43 +13:00
Martin Grenfell
ca8b1d2b34 add mapping options for g and gs 2009-01-14 11:19:38 +13:00
Martin Grenfell
100d8d2a47 add s and gs for vsplitting the current node 2009-01-14 11:19:32 +13:00
Martin Grenfell
efe03d6988 switch to version 3.0.1 2009-01-12 23:39:10 +13:00
Martin Grenfell
e9f403ac44 fix a bug where going :NERDTree <relative-path> would fail
Path.New was expecting an absolute path. Now we convert paths to
absolute inside Path.New
2009-01-10 21:45:27 +13:00
Martin Grenfell
2038f38026 unlet TreeDirNode#open because we are overriding it 2009-01-10 21:44:56 +13:00
Martin Grenfell
6e9a5d4cea fixes to secondary nerd trees for the q mapping
make sure we always go back to the right buffer, and if there is no
buffer to go back to, close the window
2009-01-10 17:35:21 +13:00
Martin Grenfell
2e6cedcad7 fix the q mapping again
since we are now ":edit"ing a new buffer for secondary nerd trees, we
have to store the previous buffer number otherwise we get into an
infinite loop because we go back to a directory buffer which causes
another secondary nerd tree to open etc
2009-01-09 18:11:36 +13:00
Martin Grenfell
d76f936698 remove some trailing whitespace 2009-01-09 17:37:43 +13:00
Martin Grenfell
0e9feaede3 use the s:nextBufferName() helper in s:createTreeWin() 2009-01-09 17:11:18 +13:00
Martin Grenfell
cd55e2d522 ensure all secondary nerd tree buf names are unique 2009-01-09 15:56:43 +13:00
Martin Grenfell
3d2bf2d9ac fix a bug when doing :NERDTreeMirror without 'hidden set 2009-01-09 15:23:57 +13:00
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