Posts RSS Comments RSS 32 Posts and 1,017 Comments till now


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 ⌃⌥⌘D and ⌃⌘R is 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
  • 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
You should remove any conflicting plug-ins before installing, by deleting them from ~/Library/Application Support/TextMate/PlugIns.

Download ProjectPlus.

65 Responses to “ProjectPlus”

  1. on 09 Sep 2008 at 1:03 amChris

    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.


  2. on 10 Sep 2008 at 5:03 pmKevin


    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.



    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.


  3. on 11 Sep 2008 at 7:17 amTruePath

    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!


  4. on 13 Sep 2008 at 3:08 amHans Czajkowski Jørgensen

    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

  5. on 13 Sep 2008 at 1:36 pmHans Czajkowski Jørgensen

    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

  6. on 17 Sep 2008 at 5:35 pmPedro Melo

    I’m getting crashes with project plus loaded (no other plugins).

    Is there some place where we can report this?

  7. on 17 Sep 2008 at 5:38 pmPedro Melo

    Forgot to point out, version v1.2

  8. [...] ProjectPlus [...]

  9. on 19 Sep 2008 at 9:05 pmTom

    Yea…crashes textmate for me over and over and over .can’t start. hopefully i can remove it…

  10. on 19 Sep 2008 at 9:09 pmTom

    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!

  11. on 02 Oct 2008 at 3:41 pmTruePath

    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.

  12. on 02 Oct 2008 at 4:30 pmSpen

    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.



  13. on 03 Oct 2008 at 10:24 amSpen

    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.



  14. on 15 Oct 2008 at 9:48 amHenrik

    The sort options is broken when the projectpane does its auto update

  15. on 31 Oct 2008 at 1:07 - ProjectPlus

    [...] 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 [...]

  16. on 12 Nov 2008 at 7:46 pmElliott

    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.

  17. [...] хорошо, но вдруг еще кому пригодится — ProjectPlus, отличный плагин для тех, кто пишет код в [...]

  18. on 29 Nov 2008 at 10:39 pmadi


    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 installed via MacPort to /opt/local/bin with TM_GIT set and I’m running 10.5.5

    Any ideas?


  19. on 02 Dec 2008 at 5:39 amdoug

    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!


  20. on 05 Dec 2008 at 5:50 amMichael

    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.

  21. on 06 Dec 2008 at 1:00 amAlex Cook

    This plugin isn’t working at all for me. TextMate keeps crashing and none of the workarounds seem to work. -A

  22. on 06 Dec 2008 at 2:37 amProjectPlus for TextMate « nerdEd

    [...] 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 [...]

  23. on 15 Dec 2008 at 6:30 pmTextMate Reborn :: dirtystylus

    [...] had seen ProjectPlus mentioned on the Macromates blog a while back, but hadn’t gotten around to installing it. [...]

  24. on 21 Jan 2009 at 8:38 pmTony

    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.

  25. on 19 Feb 2009 at 8:40 amAli

    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?

  26. on 22 Feb 2009 at 4:16 pmlauritz

    great plugin, thanks a lot! what about a nicer sidebar, more like the standard leopard sidebars?

  27. on 23 Feb 2009 at 7:02 pmBob Aman

    I originally submitted this bug report to TextMate, but Allan says the problem is with ProjectPlus:

    Crash log can be found at the link.

  28. on 19 Mar 2009 at 4:04 pmBo Laurent

    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.

  29. on 03 Apr 2009 at 11:02 amKai Richard Koenig

    Could you please make the source available for the community …

  30. on 03 Apr 2009 at 4:27 pmbuudy

    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.

  31. on 07 Apr 2009 at 10:19 pmChes Martin

    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 :-)

  32. on 10 Apr 2009 at 8:55 pmRyan

    Thanks for the update, Ciarán! Really appreciate your hard work.

  33. on 10 Apr 2009 at 10:24 pmGernot

    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.

  34. on 13 Apr 2009 at 9:20 amnick

    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: 0x120d20 notification name: ‘NSWorkspaceDidLaunchApplicationNotification’

    Latest projectPlus gives this error message.

  35. on 13 Apr 2009 at 9:44 amnick

    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?

  36. on 20 Apr 2009 at 5:35 amShawn

    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.

  37. on 20 Apr 2009 at 6:37 amShawn

    Another bug: The SCM icon gets flipped vertically when a file icon is displayed in the window title bar (next to the file name).

  38. on 24 Apr 2009 at 8:59 pmJeff

    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…

  39. on 30 Apr 2009 at 8:38 amAlex

    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?

  40. on 12 May 2009 at 9:33 pmEmily

    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:

    Sorry to clog up the comments with this, but I couldn’t find any other contact method.

  41. [...] 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, [...]

  42. on 02 Jun 2009 at 10:00 pmYetties

    Thanks for this great plug-in! It helps me a lot!! I’m just curious, what’s difference between SVNMate and ProjectPlus?

  43. on 03 Jun 2009 at 6:39 amTextMate Subversion @ Jam’s Blog

    [...]によれば、ProjectPlus の方があたらしいらしいので、さっそくインストール。 [...]

  44. on 08 Jun 2009 at 11:45 pmGabriel

    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.

  45. on 28 Jul 2009 at 10:38 amMark

    Works great for me – thanks!

  46. [...] ProjectPlus ProjectPlus est un plugin pour Textmate qui apporte différentes fonctionnalités indispensables à la fenêtre projets de Textmate. [...]

  47. on 08 Oct 2009 at 10:19 amPixou


    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 ?


  48. on 19 Oct 2009 at 3:15 pmLord Daedra

    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 | |]]

  49. [...] the project, and more file sorting options. Lucky for us, Ciarán Walsh wrote a great plugin called ProjectPlus that does just [...]

  50. on 19 Nov 2009 at 10:13 amzo

    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

  51. on 19 Jan 2010 at 7:49 amChuck

    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.

  52. on 22 Jan 2010 at 9:33 amzoltanctoth

    Folders on top, I love it. Thank you!

  53. on 11 Feb 2010 at 1:05 pmChris Reeves

    This is a great plugin.

    I do experience a bug where the “Folders on Top” sorting option is sometimes lost when new files are created, or files are edited.

    Any way to fix this? The default option is set to “Folders on Top”


  54. on 24 Feb 2010 at 12:20 pmKuroir

    The source files for the Missing Drawer with modified color:

    You can download the source here, I didn’t make the MissingDrawer; I just modified the colors.

  55. on 24 Feb 2010 at 12:21 pmKuroir

    Ups sorry;

    Recently I found your excellent project and I was completely amazed with what you’ve done, I’m really really grateful for making such an awesome plugin; however, there’s something that’s poking me a lot regarding the drawer.. and I look it’ll sound like something that’s not important.

    The Drawer doesn’t integrate well with the system itself; I had a modified version of “Missing Drawer” that had the blue-gray background making an almost perfect integration with the OS, and I was thinking if you would be interested on updating (if possible).

    Hopefully it’ll be possible; because for me the current white background and the thick resizing bar is just killing me.

    The source files for the Missing Drawer with modified color:

    You can download the source here, I didn’t make the MissingDrawer; I just modified the colors.

    Hopefully you’ll take this into consideration. Thanks again.

  56. on 26 Feb 2010 at 3:47 pmDavid Reynolds

    I seem to be experiencing a lot of crashes, which I believe are caused by ProjectPlus.

    I was just wondering if anyone else has experienced this or if you knew of a way to fix it?

    I’m using Snow Leopard 10.6.2, Texmate 1.5.9 (1589) and ProjectPlus version 1.3.


  57. on 02 Mar 2010 at 1:30 amJuha-Jarmo Heinonen

    I didn’t like the instability, slowness and overall bloat of ProjectPlus. However, I like the default look & feel of TextMate as well as SVNMate, so I forked ProjectPlus as GITMate. I removed all the extra features to reduce it to a “SVNMate” level, only with GIT support.

    It’s available here:


    It doesn’t seem to conflict with anything this far and works well.

  58. on 14 Mar 2010 at 7:54 pmEgor

    The SVN overlays don’t work for me for some reason. Using SVN 1.6.5 with OS X 10.6.2. Not sure why this happens. Love this plugin, and used it just fine on my last computer. Anyone seeing anything similar?

  59. [...] support will make me feel bad , so … here it is! Integrate SVN support to your TextMate. ProjectPlus is a awesome Subversion plugin for TextMate, i recommend visit the creators blog and download it [...]

  60. on 19 Apr 2010 at 2:05 pmSylvain


    Another frustrated Eclipse user here, I’m switching to textmate and found projectplus of great help :)

    However one feature I’m really missing a lot is the transmission of the SVN statuses to the parent folders, so that I can see that there are files to be commited without unfolding my whole tree.

    Is there a way of seeing that with ProjectPlus ? Thanks a lot!

  61. [...] Ciarán Walsh’s Blog » ProjectPlus – ‹Previous Post Bookmarks for April 28th from 19:43 to 19:43 [...]

  62. [...] Need better project support including features like git? Use ProjectPlus. [...]

  63. on 29 Jul 2010 at 5:27 pmDiogo Serra

    I the TMQuicklook gives me this error : Jul 29 17:22:06 alumintel TextMate[306]: Error loading /Users/”myuser”/Library/Application Support/TextMate/PlugIns/TMQuicklook.tmplugin/Contents/MacOS/TMQuickLook: dlopen(/Users/digas/Library/Application Support/TextMate/PlugIns/TMQuicklook.tmplugin/Contents/MacOS/TMQuickLook, 265): Library not loaded: /System/Library/PrivateFrameworks/QuickLookUI.framework/Versions/A/QuickLookUI\n Referenced from: /Users/”myuser”/Library/Application Support/TextMate/PlugIns/TMQuicklook.tmplugin/Contents/MacOS/TMQuickLook\n Reason: image not found

    Jul 29 17:22:06 alumintel TextMate[306]: instance TMQuickLook plug-in has no principal class

    I have tried to google it but no luck , can anyone help me :S

  64. on 18 Sep 2010 at 5:33 pmder

    Hi, any chance of having a blueish tointed sidebar just like Leopard brought it to Mac OS X? thnx in advance… !

  65. on 19 Sep 2010 at 11:05 amrob mcvey

    thanks Ciaran this is a great plugin, was trying for ages to order the folders on top and it was driving me mad, this worked great! :)

Fork me on GitHub