Goodbye TextMate

Written by pete

Topics: Uncategorized

I’ve been using TextMate to develop Ruby on Rails applications for a very long time. But as of today, I’m abandoning TextMate. And I’m not the only one.

For me, the last straw with TextMate was the issue illustrated in this video. When you have all of your methods folded up, and you delete a line of whitespace that follows a folded up block of code, the editor will in fact delete the entire folded up code block. This might be working as expected, but I expect better.

Some other annoyances I’ve had with TextMate include:

  • Random Pinwheeling (lockups that take unspecified amounts of time to clear)
  • Sluggish performance
  • Drawer behavior: When I want it on the left, I want it on the left. Even if my window is too close to the left side of my monitor. STOP OPENING ON THE RIGHT! DO YOU HEAR ME! (excerpt from an actual conversation with TextMate).
  • No significant updates in over two years. Not even the kind you pay for. I guess the upside of this is that any Bundles you find are pretty well guaranteed to work with your version of TextMate, because there’s really only one version.

After making the decision that I couldn’t continue to work in a professional setting with an editor that contains so many productivity-sapping limitations for me, I decided to switch.

I found that in making my list of requirements for a replacement editor, the beginning of it was an enumeration of what sucks about TextMate. I needed:

  1. Fast Search in Project
  2. Fast “Find Usages”
  3. A lack of code-munching bugs.

But there are a lot of things that I like about TextMate. I wanted to keep those features too:

  1. Autosave
  2. Fuzzy Match
  3. Strong Ruby Language Support
  4. HAML and SASS support
  5. Modules / Plugins / Bundles
  6. No Crashing
  7. Themes and control over colorization

First, I checked out RubyMine, but found that it crashed and froze on me a lot. I can’t have a code editor that crashes or freezes a lot. Alex Chaffee of Pivotal Labs likes RubyMate, however, so your mileage may vary. It’s worth checking out. And you can check it out for free.

Next I investigated Coda: it’s pretty, but doesn’t have a made-for-ruby feel to it. It’s got a very extensible plugin framework, and a lot of plugins made for it, but a couple of key plugins were missing, and I can’t afford to take the time to write the plugins right now.

Then I tried BBEdit: nice, but again: not enough support through plugins for the kinds of ruby development I do.

Then MacVim: which is awesome but I HATE ‘vi’ (if I’m going to use a UNIX editor for programming, it’s going to be emacs).

Finally, I decided to try NetBeans, and found everything I needed, and some stuff I didn’t even KNOW I needed. I was genuinely surprised that I liked NetBeans, given its background as a Java IDE. But the Ruby modules for Netbeans are very nice. Here’s what I liked the most, in no particular order:

  • Autotest, running right in the IDE: I don’t have to remember to start it in a terminal. It just runs in my IDE.
  • Search. It’s Fast. And I didn’t have to install Ack In Project to make it so.
  • When my continuous integration build fails, my IDE is notified, and it tells me so.
  • It integrates with bug trackers.

Aside from the “search” item, I didn’t even know I needed half of that stuff. But now that I have it, I can’t go back.

I still use TextMate for a basic editor, and still love the column-wise cut-and-paste feature. But I won’t use it for development anymore.

So long, TextMate. It’s been a ride.

  • Brentmc79

    Wow, I just went the opposite direction about 2 or 3 weeks ago and switched from Textmate to Vim. I told myself I'd give it a month and then decide. So maybe once the Vim trial is over, I'll give NetBeans a try. I did go ahead and download/install it and not surprisingly, its a huge memory hog just like Eclipse…

  • peteonrails

    I agree: It's definitely a more heavyweight application, not only in the memory department, but in disk space taken, CPU time, and other areas.

    The way I rationalized it, for better or worse, is: I'm a ruby developer. The tools I use to develop ruby should take as many system resources as I can allocate the them, as long as it makes me productive.

    It remains to be seen whether that rationalization holds for me.

    P.S. MacVim is really awesome: I just hate using vi.

  • aaronscruggs

    Damn you. I now have RubyMine, RadRails & Netbeans DMG's on my desktop. I agree; TextMate is dying. I wish MacroMates would just open source the code, but I guess they are still making too much money doing nothing to let that occur.

  • peteonrails

    It's payback. As I recall, you gave me my first TextMate license as a gift. :)

  • Tom Simnett

    Have you checked out recent versions of Redcar? It's looking very promising these days.

  • peteonrails

    Thanks Tom! Haven't tried it, but I'm giving it a whirl now. I appreciate the feedback.

  • Guest

    TextWrangler works well as an option.. (Think Notepad++)

  • Mick T.

    Netbeans is a pretty decent IDE for a big application development, for scripts I usually use Emacs, and then Vi or Vim for one quickie one-line edits.

  • Ronald Pottol

    Emacs has a column select mode. And it is a handy feature in any editor!

  • ZoubIWah

    uhm a web developer linking a .mov file ? really? xD

  • dacresni

    if you like emacs, try aquamacs or texmacs (both have .org domains)

  • Mikepoullas

    Pete, I also went down the same path as you as a Ruby coder and came to the same finish line. Netbeans is where I find “love and peace”..Of course this doesn't sit well with the RoR cultists but hey, they don't own my machine..My only concern is that NB is owned and operated by Oracle. A company I despise. Hopefully they wont kill NB. I cant imagine having to use Eclipse or its derivatives for Ruby..Might make me switch Language and frameworks. Ouch!

  • Adrian O'Connor

    So, it's now a year later. Are you still using NetBeans or did you switch back?

    I use both — NetBeans on Windows and TextMate on Mac. I think I prefer TextMate, mainly because NetBeans won't stop trying to change my indentation and generally re-format my code, especially HTML. But, as far as they go, I like them both pretty well.

  • Grewil

    “column-wise cut-and-paste feature”? Is that like the old rectangle commands in Emacs? C-x r k (cut) and C-x r y (paste)

  • quad64bit

    Too bad they're canning ruby support in version 7. Whoops!

  • peteonrails

    Thanks for writing, Adrian. In all candor, my switch to NetBeans was fairly short-lived. I didn't last the whole year. Based on Tom's feedback 6 months ago, I started using Redcar, which is everything I like about TextMate, and nothing that I hate about TextMate, plus it's free.

  • peteonrails

    I used to LOVE emacs. Over time, I migrated away from it. I can totally understand the cult-of-emacs crowd's love of the most long-running successful editor in the universe, but I never stay with it for long. I'm the same way with vi, vim, and macvim. I get it, but I don't get it. :)

  • peteonrails

    No doubt! I ended up using RedCar. I found it to be a nice happy medium.

  • peteonrails

    It's not THAT outrageous. :)

  • Adrian O'Connor

    Interesting — I haven't used Redcar before. I'm going to give a good trial starting right now :) I already use JRuby for my Windows Ruby work, so hopefully it'll be a nice fit.

  • Qwe

    Too bad Netbeans has dropped support for Ruby as of v7.

  • Thinkyhead

    TextMate also, following the Mac convention used in other apps like TextEdit and BBEdit. Hold down the Option/Alt key and the cursor changes to a crosshair. You can then select a rectangular region, then cut or copy.

  • Thinkyhead

    Maybe it's trying to do too much, but Coda by Panic, Inc. is an interesting project with a very responsive developer team.

  • Thinkyhead

    Interesting how few developers (here at least) seem to be using BBEdit for day-to-day work, preferring TextMate. I'm one of them, but I keep BBEdit around and open usually for things like merging Diffs, which it manages very well. And I suppose I like the open bundle nature of TextMate. I wrote a bundle for Torque 2D scripting in a really short time. No doubt this is quick to do in Emacs too. I also like that TextMate does time-saving auto-completion like closing braces, also applied around the current selection, and in HTML mode, has shortcuts for tag wrapping. And I guess I like the default light-on-dark color scheme better in TextMate. It does code folding better too.

    As an aside, I think XCode would be a great starting point as a web development editor. Its code-folding and block highlighting is the best around. It might be worth exploring, as it's a strong environment for multi-language projects, and each “build” need only be a deployment script. But then, TextMate does have plugins to invoke compilers and such so… it's a toss-up if you're not into XCode. But the proof is in the pudding.

    But why do you think so many developers prefer TextMate to BBEdit? Is BareBones missing an opportunity here?

  • Eric Hamiter

    Try Sublime Text 2.

  • Eric Hamiter

    Try Sublime Text 2.

  • Pingback: Good Text Editor for Mac? Not TextMate « ZoeSoft()

  • Marnen Laibow-Koser

    Redcar is now my preferred Rails editor. (I like NetBeans for other things, but it's not at all good for Rails — Rails really doesn't benefit from an IDE.)

  • Marnen Laibow-Koser

    Why aren't you just using FileMerge (part of the Mac OS developer tools) for diffs? It even integrates with Git.

  • Pete Jackson

    An excellent editor. Thanks!