ProjectPlus
ProjectPlus is a plug-in for TextMate which extends the functionality of project-related features.
Feature list:
- SCM status badges:
- Support for SVN, Git, Mercurial, Bazaar and Svk
- Displayed in the project file list and the window proxy icon
- Swapping the project drawer for a panel
- Support for
⌃⌥⌘Dand⌃⌘Ris kept - The sidebar can be placed on either side of the window
- Since I created this someone has updated the MissingDrawer plug-in with these features, if you wish to use this plug-in instead then you can disable the feature
- Support for
- Finder colour labels
- Labelled files are displayed in the project drawer
- Label can be set through the context menu
- Project-tree state can be preserved when re-opening the project
- QuickLook preview of files in the project file list through the context menu (or
⌥␣when the file list is focused) - Sorting options through the project file list context menu
- Display folders on top
- Sort by file extension
- “Open With” option
~/Library/Application Support/TextMate/PlugIns.
Ciarán :: Aug.20.2008 :: Uncategorized :: 54 Comments »
With the current version of ProjectPlus, the project sidebar does not appear for existing projects. Is there any way to force the sidebar to show? I have it selected in the preferences, but it does not show up. I have even tried toggling the show/hide project drawer entry in the view menu.
Thanks.
Ciarán,
Bug report: After svn commit, the “folders on top” sorting criteria is not followed. It unsorts the list. You have to de-select “folders on top” then reselect it in order to maintain the sort order.
Kevin
Chris,
It works, but not if the application is closed when you double click the project file. Project plus loads after the project window opens, when double clicked while Textmate is closed. My recommendation is to open TextMate FIRST, then double click your project file. This way, the plugin has a chance to load before you try and open a project.
Kevin
Hey, just so you don’t end up misinterprating the data you get back this plugin says it will report me as having a G4 even though I’m on an intel mac. Maybe because that was the system I initially ran textmate on before upgrading?
Anyway awesome plugin, thanks!
Peter
Hey Ciarán,
Just noticed a minor issue with ProjectPlus and Quicksilver(Beta 54 (3815)):
Using Quicksilver, I often select a folder containing a project, and then do ‘Open with…’ -> Textmate. (I hope you know what I am talking about here, otherwise, feel free to contact me for clarification)
Even though I have selected to have ProjectPlus swap the project drawer for a panel, I still get the project drawer when openng a folder in TextMate in this way.
Do you think it is fixable? The quicksilver code is now open source and can be found at http://code.google.com/p/blacktree-alchemy/
Never mind my last comment. It turns out I had an old version of ProjectPlus running. It works fine now, after I updated to v1.2
I’m getting crashes with project plus loaded (no other plugins).
Is there some place where we can report this?
Forgot to point out, version v1.2
[...] ProjectPlus [...]
Yea…crashes textmate for me over and over and over .can’t start. hopefully i can remove it…
ah…that’s because i also had svnmate installed. removed svnmate and it works fine…and then i couldn’t figure out where svn support was at first…had to go under preferences and turn it on.
great plugin!
Hey, so any advice on what are conflicting plugins. In particular is TabMate likely to cause me problems (TabMate allows modelines in the files to set the language textmate treats the file as)? What about TmTools, TmCodeBrowser, WebMate, TeXSLMate, XMLMate etc..?
My guess would be that things like TabMate WebMate, etc.. would be fine but I’m a bit less sure about TmTools and TmCodeBrowser.
I mean none of these plugins cause an immediate crash when loaded with project plus or each other but it seems I get some pretty significant slowdowns when I leave textmate open for a long time with project plus installed but not without it and I’m wondering if it’s an interaction.
This plug-in has been the niftiest addition to my Textmate workflow. However, yesterday it stopped allowing me to Add or Commit anything to the Repository. The correct icons appear, but I get the following message:
‘No files modified; nothing to commit.’ This occurs immediately after I have altered a file.
Any ideas? I imagine it is conflicting with another application, but I have not idea which one.
Cheers
Spen
Hello again,
Well, I have noticed that the problem lies with the SVN bundle, I think, as the problem persist regardless of any plugins.
I am using TextMate 1.5.7 (1464) and Subversion 1.5.1.
Any ideas are still more than welcome.
Cheers
Spen
The sort options is broken when the projectpane does its auto update
[...] again the folks on twitter introduced me to another awesome application. Project+ which isn’t technically an application, but rather a plugin for TextMate which mod’s the project [...]
I’ve been noticing a really bad memory leak since installing this plugin. TextMate will start to consume huge amounts of memory over time.
I’ve noticed on more than one occasion it using 1.7GB of memory.
[...] хорошо, но вдруг еще кому пригодится — ProjectPlus, отличный плагин для тех, кто пишет код в [...]
Hi,
that git, svn integration in the project tree is great.
I do have one problem with it though… It shows the badges but not the correct ones. Mostly it shows the unchanged badge although the file is changed. I’m using the latest ProjectPlus and Textmate, Git 1.6.0.2 installed via MacPort to /opt/local/bin with TM_GIT set and I’m running 10.5.5
Any ideas?
adi
Is there a way to set the default panel width? It’s too wide by default for my tastes.
Other than that, I like it a lot!
Thanks!
The latest version of TextMate(1.5.8 r1496) seems to affect the use of the SCM icons, i am not sure what else is affected, but this is what i see upfront.
This plugin isn’t working at all for me. TextMate keeps crashing and none of the workarounds seem to work. -A
[...] December 6, 2008 Filed under: Uncategorized | Tags: TextMate | By way of Alex Paynes Blog comes ProjectPlus pretty much exactly what I’ve been looking for to make the TextMate project panel more [...]
[...] had seen ProjectPlus mentioned on the Macromates blog a while back, but hadn’t gotten around to installing it. [...]
So far the plug-in works perfectly. Seeing SVN status is very important for me. One problem: the status icons do not cascade up the folder hierarchy. So if a file is changed in foo/bar/, the status for foo does not change. This makes the status much less useful for me, so I am hoping this can be fixed. Thanks.
The sort option status is not preserved when a project is closed. Is this normal? For example changing the sort option to “folders on top” works fine but when the project is closed and re-opened later, the status goes to texmate’s default sort which is alphabetical.
Can I set the sort default status in projectplus?
great plugin, thanks a lot! what about a nicer sidebar, more like the standard leopard sidebars?
I originally submitted this bug report to TextMate, but Allan says the problem is with ProjectPlus:
http://ticket.macromates.com/show?ticket_id=7A9E0508
Crash log can be found at the link.
I gave the bzr badges feature a spin. The good news: it seems to function correctly. The bad news: works so slowly that I turned it off after playing with it for a half hour.
It might be useful in a mode where you enable it momentarily for a look-see at current scm status for the project. But can take such a long time to descend folders that you would need to get a cup of coffee to to be sure that the badges were up to date.
The performance hit is not just about the delay in badge appearance. Rather, it causes Textmate itself to become unbearably laggy, on receipt of focus, on selecting files/tabs, maybe more.
Feel free to ask me if you want any other data from me.
Could you please make the source available for the community …
Hi, after installing i can use once, then run again textmate, it shows a dialog asking if automatic check new versions, then hangs there. any idea how to fix this. thanks.
Hi Ciarán,
Not sure if this is the best place for a bug report or if you even intend to collect them, but this one’s kind of fun.
I’ve found that having a Mercurial repository at the base of my home directory causes TextMate to go on a disk-thrashing tirade when ProjectPlus is in use (and Mercurial is enabled). I use a repo in my home dir for dotfiles, with everything ignored by hgignore so it only tracks what I explicitly add. If TM isn’t running and I open a single file with no project drawer, I don’t see this effect, but open a project (or switch to TM from another app when one is open), and a Python process will go wild. A trace of the process(es) leads predictably to hg. This happens whether or not there is a repository of any kind directly at the root the TM project directory. My slightly annoying workaround at the moment is to temporarily rename the .hg directory to .hg-off, and the problem instantly goes away.
Now, I realize recursively climbing the directory tree makes sense because of git submodules, Mercurial forests, or even one repo under another SCM’s management (I’ve worked on Rails projects with Hg where a Rails git clone was active inside the project, for instance) — so you might say this is a feature and not a bug
But, it doesn’t seem to behave this way with a git repository in the home dir, so I’m assuming something must be different about the way the two are handled (I have not tested the other VCSes).
Does ProjectPlus not look for .git dirs above the TM project directory? Or is it much better aware of which files a git repo is actually tracking? I would think this might be a matter of how the Git and Mercurial bundles are implemented, but if I have git and hg repos in my $HOME and start TM on a child directory with ProjectPlus disabled, both bundles do pick up the repo in an ancestor directory. It seems that the disk thrashing only happens when ProjectPlus is scanning to update its sidebar.
If ProjectPlus could honor .hgignore before doing expensive operations (or the Mercurial bundle if that’s where it should happen), it seems like it would be a huge performance help for a lot of repositories. I think I’ll go peek at the hg bundle’s code
Hi, I’m trying to set up an svn project in Textmate. I can’t seem to get it done though. When pressing ‘Bundles->Subversion->Check Out…’, it asks me an address. Where it says ’svn+ssh://’, it remove that and enter: ’svn://svn.*****.nl/filesystem’. It then asks me where to save it, I select a certain folder, and then I get this message: Checkout for “(selected files)” Status File Authentication realm: ein4crepo Password for ‘Juan’: Authentication realm: ein4crepo Username: svn: Can’t read stdin: End of file found
What does this mean/am I doing wrong? It doesn’t ask me for a username/password either..
Thanks in advance!
Thanks for the update, Ciarán! Really appreciate your hard work.
I recently updated and now if I do ‘Save as…’ on an open document, it mirrors both the original and the new document. So any updates on one updates the other. Weird, huh? Don’t know if this is a bug with the plugin but I’ve only noticed this since the update. Anyways, thanks for the plugin and the new sort preferences are nice.
2009-04-13 12:18:32.694 mate[15411:10b] Exception raised during posting of notification. Ignored. exception: ‘[NOTE: this exception originated in the server.] * -[NSCFArray objectAtIndex:]: index (1) beyond bounds (1)’ invoked observer method: ‘* -[OakLaunchHelper didLaunchTextMate:]‘ observer: 0×120d20 notification name: ‘NSWorkspaceDidLaunchApplicationNotification’
Latest projectPlus gives this error message.
I am sorry please disregard and delete my previous post. Looks like it conflicts with MissingDrawer and requires latest textmate.
Also when you open dmg it says to drag plugin to applications when you have to click it probably, no?
Ciarán: Thanks for this excellent plug-in.
Found a bug: Hovering over the ‘Open with…’ item in any file/folder’s context menu causes TextMate to crash after delay of a few seconds. The list of possible applications to open the file is not displayed.
Also, I’d like to request that a preference option to display the SCM status icon behind the file icon. Then we can add an icon set with big colored round-rects to envelope the file icons.
Thanks again.
Another bug: The SCM icon gets flipped vertically when a file icon is displayed in the window title bar (next to the file name).
Using it with Mercurial. Seems to work correctly and I love the functionality.
But it is REALLY slow, so much so that it is basically unusable in most cases. Whenever I change files it seems to be checking the status in the same thread, which means you stall waiting for the status to get updated. This blocking condition seems really unnecessary, so I would love to see this take place in a separate thread.
Meanwhile I have to disable it…
I’ve been looking for a textmate plugin where I can create “Smart” folders in the project list. XCode doesn’t do this yet but has hinted on it. Do you think this type of feature can be done w/your textmate plugin?
I recently had a TextMate crash and added a bug to the main tracker. They replied that the crash was caused by ProjectPlus so I wanted to pass the information along to you. The bug, which crash report, can be found here: http://ticket.macromates.com/show?ticket_id=B76EC8C0
Sorry to clog up the comments with this, but I couldn’t find any other contact method.
[...] a quick side note, I’ve come across another nice plugin for TextMate: ProjectPlus. ProjectPlus adds some nice UI as well as functional additions to the standard project drawer, [...]
Thanks for this great plug-in! It helps me a lot!! I’m just curious, what’s difference between SVNMate and ProjectPlus?
[...] http://blog.wozozo.jp/によれば、ProjectPlus の方があたらしいらしいので、さっそくインストール。 [...]
So I am wondering if you can do a ReMate like addition to the project panel. It seems that handling items in the project panel are now causing issues just like switching apps used to when dealing with network projects.
Works great for me – thanks!
Fantastic!
The sort options were the only thing thats been bugging me about TextMate. Whilst I was looking for a ‘Folders on Bottom’ type sort for a long time, your ‘Folders on Top’ has made my TM life much less distracting
Many Thanks!
[...] ProjectPlus ProjectPlus est un plugin pour Textmate qui apporte différentes fonctionnalités indispensables à la fenêtre projets de Textmate. [...]
Hi,
I first tried ProjectPlus today and I love it ! There’s only one thing I’m having trouble with is the window size.
I’m used to work with a window filling my screen. Since I installed ProjectPlus all new windows are reduced at launch.
TextMate doesn’t remember the previous window size so I have to hit the maximize button each time
Any idea on how to fix this ?
Thanks
ProjectPlus is nice plugin but now i cant use one good TextMate feature: I usually work on two projects at same time and if first project open project documents panel on left side, second will open this panel on right side. Its very cool for me – I can easy select window by clicking to white space on project panel on left or on right sides..
But ProjectPlus changed this and now all projects open panel on left OR right side (I can change this in settings). And now i need move window to find second window or use menu on dock TextMate icon.. So its not good now.. Is it possible return to original algorythm?
original TextMate: [| |]
now with ProjectPlus: [[| | or | |]]
[...] the project, and more file sorting options. Lucky for us, Ciarán Walsh wrote a great plugin called ProjectPlus that does just [...]
Hey, Couldn’t find a contact section so a bit off: is ther a way to make your ReMate functionality enabled by default? It’s a bit annoying having to turn it on at every launch.. :S
Just downloaded and installed ProjectPlus and other than adding something into the preferences panel, I see nothing when I open an existing project that indicates that ProjectPlus is even there. I’ve turned on all of the appropriate version control flags (Subversion, Git, Mercurial) for the various VCSes being used on the projects I’m working on, but nothing is badged. ProjectPlus 1.3 is the only plug-in that I have installed (and I did a complete shutdown and restart).
Any help, hints, etc. appreciated.
Folders on top, I love it. Thank you!