Commit Graph

434 Commits

Author SHA1 Message Date
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
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
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
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
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
7d1cc4ecec bugfix: the script failed when being initialized on a dir containing spaces 2008-04-17 23:39:23 +12:00
Martin Grenfell
c008fb3983 changed the version to 2.8.0 for the next release 2008-03-31 18:22:29 +13:00
Martin Grenfell
91d5a52c39 added the NERDTreeShowLineNumbers option into the script 2008-03-10 20:39:30 +13:00
marty
1383e3fea7 bumped the version to 2.7.1 2008-01-18 22:29:34 +13:00
marty
020c635cca changed the key for the filesystem menu to be mnemonic 2008-01-18 21:47:21 +13:00
marty
3badb3efae changed the version to 2.7.0 2007-11-03 13:00:59 +13:00
marty
3b98b41740 removed a comment at the top of the file that is invalid now cos the help is split out 2007-11-03 11:26:55 +13:00
marty
e8592f0f5c removed the doc file, the install call and the install function 2007-11-03 10:48:20 +13:00
marty
c95a366765 added the plugin and doc files 2007-11-03 10:23:09 +13:00