It seems to me that the author of TextMate is in a rather interesting position. he has created an editor with a cult like following that he has neither the time, manpower, or interest in updating.
I am sure that version 2 will be completed at some point, but at what cost to his sanity? Imagine for a moment if he just gave up and released the source for free.
Hundreds of itchy fingers across the net dig into the source, enhancing it, expanding it, fixing it, porting it to everything from Linux to the Nintendo DS. The cult of Textmate grows with each new release, finally bringing another contender to the editor wars long raged by vi and emacs.
Since Mr. TextMate dude no longer has a source of income, he decides to write a book about his experiences developing the app and his eventual burnout. It is an instant hit with geeks everywhere. He rakes in tons of money doing speaking engagements.
After a few years, the itch to code returns. Mr. TextMate's new app, TextyMatey - an editor that converts everything you type into pirate speak, becomes the first ever text editor to hit 1 million downloads in the first day. DVD sales of Pirates of the Caribbean trilogy skyrocket, prompting a visit from Johnny Depp. Mr TextMate and Johnny become fast friends and spend the rest of their days as men of leisure on the French Riviera.
Seriously though, I think the picture you paint would work out very well for him, but judging from bits and pieces I've read over the years, I suspect the Textmate code base is not particularly well structured and that he might even be a little embarrassed for others to see the code (I'm just guessing based on scraps, but I think most of us have been there).
It's clear he's made a few million euros from Textmate and I've read that he has a few pet projects he enjoys working on (for some reason I think I saw DHH say this). Perhaps he doesn't want that fame or the big bucks. I could certainly survive full time with a few million in capital and a residue of sales each month.. (even if he sells a mere 100 copies a month now, that nets far more than the median European salary).
Considering the timing and changelog of this release, I'd guess that Allan was in the old code base to prepare it for the Mac App Store and in the process decided to fix a few more issues and make a release out of it. Just a guess.
The market must be pretty small for Mac native text editors (and they must be difficult to implement on a grand scale). Otherwise some company would have walked into the gaping void that has been the delay to release TextMate 2.0 and released something by now. The door has been wide open for some time but no one is able or willing to step through it.
Oh well, helps explain the Vim goldrush of the past few months.
I'm a Textmate user though. I don't mind that there have been delays in releasing 2.0, because it doesn't make 1.5 any less useful — it does everything I want it to do and it's still supported.
UltraEdit is making a Mac version as well. It is in the beta stages. So far I am liking it (as a beta tester). I also use MacVim (my go to) and BBEdit.
Seriously, with 2.0 planned as a complete overhaul, I don't even know how quick I'd be to switch to it if it came out tomorrow. TextMate 1.5 + the Ack bundle already does very nearly everything I want -- my only desire would be slightly better Perl 6 support.
I think it's more that the audience for a TextMate type editor is extremely small.
On one side, you've got all the IDEs, like NetBeans, IntelliJ & Eclipse (not to mention XCode) that go far beyond TextMate, really making the cost of TextMate seem ridiculous. On the other side you have free products that offer almost everything TextMate does for very simple editing.
Textmate was a good idea back when support for interpreted languages in an IDE was pretty much non-existent. Now that true IDEs have support for interpreted languages, there's no room for a TextMate type editor. Its time has come and gone.
I can't speak for other communities, but all of the developers I who work with Ruby use TextMate. It may not be the majority, but the Ruby (and Rails) audience is certainly not "extremely small."
A clean, extensible editor like TextMate that gets out of your way is all you really need when you're working with tools that don't require an IDE. I think the main reason we haven't seen a major update yet is that so many people are happy with the current TextMate and are still willing to pay for it. I don't think we'll see a major upgrade until people start voting with their (lack of) dollars, rather than just complaining on forums.
This is interesting because it was NetBeans' Ruby and Rails support that led me to try it out in the first place.
I could take this further, but it's not really germane; I think I wasn't very tactful in expressing my idea in my original post; the response is quite understandable. I'm not trying to state that TextMate is the wrong editor, or that there aren't a bunch of people who love it. I just personally think that it occupies a space between an IDE and a editor where a relatively(!) small audience exists.
I am going to have to disagree with you here. I love a good IDE and wish that everything that I did had code completion/intellisense. The thing that Textmate does well is that it is lightweight like a text editor but very extensible for most things.
What? you want code completion? well then hack up a ruby script and add it as a bundle. The thing that it really lacks is a decent lexer/parser. regular expressions are not good enough for the coloring and syntactic awareness that is needed for a tween text-editor/ide in my opinion.
IDEs have a high cost (learning curve, complexity, etc) that is not worth the benefit for dynamic languages.
I'm not sure what the gaping hole is the op is talking about. Textmate is an awesome editor and it doesn't matter that there hasn't been an update in a while.
The only thing I really miss with text mate is good git integration.
Don't get me wrong, I'm not trying to change anyone's mind about TextMate; it does just what a bunch of people want it to. That's awesome! I used it for quite a while. Heck, I still use it for simple editing.
Personally, once I tried an IDE with integrated context sensitive help, inline syntax checking, real indenting, etc. TextMate didn't seem to solve the problems that I needed it to solve. It just became a fancy notepad app with some extra macros.
I'm not trying to put anyone's choice down. If TextMate works for you, then great! I'm very happy that you've found the right editor for you; however, the point of my post was that there are many other choices out there that confine the usefulness of TextMate to a very specific audience.
And personally, I feel like the cost/learning curve arguments are not really valid. Eclipse and NetBeans cost nothing. And ultimately, I found that getting what I needed out of NetBeans was much more intuitive than getting what I needed out of TextMate.
i use netbeans a lot for java, and I've tried a few times to use it for ruby but it doesn't do much more than textmate for ruby. For that little bit extra it uses between 1-2 gigs of ram (instead of 50 megs), requires more setup and maintenance, you can't just drop a ruby folder on it and go, etc. All of the auto completion, real time docs, etc are flaky as hell with a language like ruby. It really has no idea what methods exist on an object, or what class an object is. And heaven forbid I want to open something crazy like a bash script in netbeans.
Also, and I've never understood why this is, plugins seem to be much more fragile on the big IDEs than the editors like emacs, vim, and textmate. You'd think they'd break less with all the static typing of java, but in my experience I've had far more problems with them.
I do love the git integration though. That's the one thing I really wish textmate or emacs had.
I've tried most of them and they didn't really do what I wanted. I don't want to do all my git commands from my editor, but I want my editor to visualize important stuff for the files I'm looking at. In netbeans the gutter of the open file is color coded to show how the code your looking at is different from HEAD (or whatever).
You could probably get emacs to do that without major trouble. That's the beauty of it: you can make it do what you want, which is something you always end up wanting, because nothing behaves exactly like you think it ought to.
"You could probably get emacs to do that without major trouble."
Hehe, this is true and it's why I am an emacs user, but "without major trouble" means spending 30-50 hours of my life developing it from scratch. That's rather hard when one has a demanding job and two kids under 3 at home.
TextMate is pretty extensible. Extensible enough anyway, and you don't have to commit to a single language for extension, which is pretty cool. I like Lisp and hate vimscript, but when extending TextMate I can use shell, Lisp, Ruby, Python, or JavaScript, depending on the task at hand or my mood.
I still hate TextMate. And Emacs. They all stink, but less than IDEs.
Because no editor is perfect. They all have annoyances that you notice after using them for long enough. I bounce between TextMate and Emacs for that reason.
TextMate can't indent properly because it doesn't actually parse code. If a function call or condition spans a couple of lines and you indent things nicely the following line will be indented to the level of the first char of the previous line, not the proper indent level. e.g.
if (something.fooBarBlah('hello there') && something.someOtherMethod(42) &&
theFinal.condition('here'))
<hit tab here and cry because you have to fix the indent manually, every damn time>
However TextMate makes it really easy to jump around a project w/ Cmd-T and Cmd-Shift-T. ido for Emacs gets me most of the way there but it's not quite the same.
But then I want to split a window and I can't do that in TextMate, I can only open new windows. So back to Emacs I go. Until I want to search a project. Using grep gets old so I go back to TextMate. Then I get bitten by TextMate's crappy file cache which sometimes doesn't show all results or shows invalid results that have changed since it last cached those files. It's really annoying so sometimes when refactoring I have to grep anyway just to be sure I found everything I searched for.
I get fed up with both of them depending on the task at hand, so I use both. Neither is perfect, that should be pretty easy to understand. I don't think any editor is perfect.
edit: js2-mode for Emacs is fantastic. You get syntax highlighting to warn you about accidental globals (very easy in JS), statements w/ no side effects, and other semantic errors. I wish TextMate had that too.
Emacs could really use the concept of projects and something like TM's project browser. Unfortunately the file trees that exist for Emacs are pretty bad (vim too, imo).
It goes back and forth like that. I think the only real way to have a perfect editor is to put a huge amount of work into creating one tailored to your individual needs, whether you start from scratch or start with Emacs or vim.
I have every feature I wish from Textmate in Emacs, and more, like debugger integration and on-the-fly code checking / compiling with stuff like Pylint.
The limiting factor is not people seeing a market opportunity or not but in the availability and interest of requisite software talent. To a lot of developers, text editing is a solved problem. To really talented devs? Also, mostly solved. Enough. Perfect? Maybe not. But what's available now goes so far that there's not a lot of draw to taking a whack at making the next Better Mousetrap.
Also, the market is probably not large enough. Paid market. There are lots of free editors, and commercial editors, already available, and there's a skill learning curve required to switch editors, that I think all of this adds up to explaining the unexploited "gap" you described.
Textmate's also got a small following in the web world, despite it being slowly cannibalized by Espresso and Coda (not to mention BBEdit regaining what little share it lost).
Personally, I'm pretty happy with the 'mate' symlink for editing plists and other short files when I'm not in an editor elsewhere. Even though Textmate's bundle system means it's easily updated and quickly integrated with a client's standard snippets, it is missing out on some of the nice DOM, navigation and file management stuff of web IDEs.
I had a problem with my license that came to light when Textmate auto-updated. "Your license key has been revoked." Apparently Paypal decided to do a charge-back a few days after I bought it (earlier this year). Anyway, I bought a new key, but Textmate wouldn't let me enter it anywhere. A Macromates employee was on IRC and kindly gave me the solution.
The funny thing is, I actually switched to using a Mac as a full-time development platform specifically for TextMate, and a few months after doing so, I discovered the joys of Vim and haven't looked back.
There was a time where I would have cared about TextMate 2, but it's long gone.
In spite of all the cool features, this update suffers from the same issue that drove me away the last time I tried Textmate: single-character undo. I can understand why this would appeal to some users, but most other text editors undo in bigger chunks, something I've come to expect and prefer.
My original feeling about Textmate overall remains about the same. It probably appeals to recent OSX converts--it's a giant step forward from any Windows-based text editor I can think of--but lacks a certain "Mac-ness" long-time OSX users expect.
Thus Textmate risks falling into a no-man's land: users less set in their ways in the Mac world may settle for the relatively clunky IDE text editors; stubborn old-timers will prefer the more familiar feeling BBEdit.
As for the paucity of updates, let's cut Allan some slack. After some 20 years, BBEdit is only at version 9.6 and vim is only at version 7.3. Quality takes time.
Yes, non-chunked undo is the dealbreaker for me as well. I remember reading Allan saying he was surprised that people cared about this, but that it would be implemented as an option in Textmate 2.
One thing that drives me insane: I cannot see path of files in a folder. If there are duplicate file names, I have to modify the file and then open directories where I think it could be and to see if it has that "not yet saved" state.
Is there a quick way to do this I am unaware of? Or is it a feature coming in the future?
Hope you enjoy a nice restful weekend after your hard work getting this one out.
I'm really interested in the TextMate hype as I haven't used it myself. But, it's concerning that updates rarely come. Wasn't a 2.0 version suppose to come years ago? It leads me to believe the developer(s) lost interest.
I've used it, but I still don't get the hype. It does seem to be a handy, lightweight editor with decent features. But you can get that for free in other editors.
That said, you can't underestimate the power of the attachment that people get to their editors/IDEs of choice. I personally know a few TextMate devotees.
My favorite features (that I've only seen implemented half as well in every other editor) is the pop-up Go To File dialog where I can start typing a file's name and it'll find the file in the open project, and the Go To Symbol dialog where I can start typing a function's name and it'll go right there in the current file.
The best part about the Go To File dialog is I can type something like "mess re pht" and it will find "message_report.phtml". The filtering is instant. Whenever I go to a fellow engineer's desk to work with them on something and they're using Zend Studio or vim it's so painful to watch them go through a gigantic project tree to find a file when I can open any file in under a second.
The full project search is fantastic, too. Once it's indexed, a full project search of a 500KLOC project takes only a few seconds.
I'm that weirdo that uses a different editor every couple of years.
I used tm for a few years and the reason it's popular is that it does most of what a programmer wants out of the box without any hassle. Drag the folder of your rails app onto it and your good to go.
I can do a lot more with emacs but it took a serious investment of time to get up to speed with it and to configure it in a sensible way.
The Ack in Project bundle has been deprecated by the creator in favor of the AckMate plugin. It has some major improvements over the bundle. Highly recommended.
Can you say more about this? I've been very happy with Ack in Project, and I'm loath to change such a big part of my working environment without some understanding if what I should expect to gain...
Only works with 10.6 apparently which is causing my colleague problems. Also, if you set up the folder filters than Find in Project can be bearable, which is nice because Ackmate (name changed this year) doesn't do replace.
The project I work on has about 500-750KLOC and over a thousand files and after the initial index (about 20-30 seconds, which is UI blocking) the subsequent Find In Project calls take only a few seconds. This is on a 27" iMac Core 2 Duo.
At this point, it's clear that TextMate won't be getting any major new changes unless the developer releases TextMate 2. I was surprised to see even these small fixes after such a dry spell.
I use TextMate as a scratch pad for small pieces of code / temporary clipboard storage quite often - and occasionally lose them when my computer crashes. Auto-save of untitled new documents would make life more pleasant.
As a warning, TM removed the opt+tab and opt+shift+tab keyboard shortcuts in this point release (they're now cmd+[ and cmd+]). I was able to get one of them working via keyboard preferences, but the other was inserting literal tab characters. After a few minutes of trying to hunt that down I downgraded. Nothing in the release notes was something I'd personally had a problem with.
Tab changing shortcuts were in the release notes, the indenting change was not. You can see in the release notes that were pasted elsewhere in this thread.
The espresso cup illustration is delicious! Looking forward to giving this a try. Mostly Python web development, so don't know how helpful some of these features are.
There's an extension for that. :) You can write new extensions with python or objective-c, too. Although if you just want to define syntax highlighting you only need to use XML.
I'm a scientific software developer based in Copenhagen working for a Danish startup. If Allan reads this - I wouldn't mind helping out in my spare time on TM2. Seriously.
Along with a few other minor tweaks to remove some minor irritations.
I bought Textmate last year when I got a Mac after years of linux, but it just can't compete with the ease of switching between buffers that emacs offers.
I've tried it twice now, and hated it both times. I was very excited about the prospect of a still-actively developed "Textmate" that would run on my other development machines. (I've got four active development machines, and only one of them is a Mac.)
In practice, though, it just felt wrong to me. It doesn't look as nice; I couldn't easily figure out keyboard / menu shortcuts for a number of my bread-and-butter Textmate activities; and I was unable to figure out how to manually install bundles.
Perhaps I just haven't given it enough time, but it always feels like it would be easier to just share my source directories so I can edit them from the Mac using Textmate...
TextMate is my favourite editor on the Mac, only recently have I been using MacVim on my work computer since as a startup they are unable to purchase a license for TextMate.
Honestly though, there are some things in MacVim I am now starting to miss in TextMate.
There are also editors that do far more, for free. That's not to belittle TextMate users. I'm just saying that when it comes time to making decisions about spending money, it may be difficult to convince some managers to want to fork over the cash for something like this.
There's a lot of value in how easy TM makes snippets and all that. Yes a lot of free editors do more but it often requires more effort too. TM is well worth the money for that reason.
Not on salary, I am paid hourly and currently it is at an interns wage based on the fact that I joined right out of school.
Once our B-Round completes I am hoping for a raise :-).
Honestly I am not to worried, when I joined the CEO bought me my keyboard of choice (Apple aluminium) and an extra screen to dual screen it, right now money is tight, and I am the only one that is not using the Qt IDE even-though I am programming for Qt. I get treated well, and enjoy the work, honestly that matters more to me than what text editor I have to use, and I figure it helps me learn a text editor that is used by thousands of programmers daily.
There are a few things. Because I do so many other things with various text fields on my machine, and vim bindings everywhere is not really feasible (yet?!), being very adept with the Command/Option/Shift/Arrow Keys/Cut/Paste is something that has widespread utility.
The vim bindings for this stuff are much richer, and fewer key strokes of course, but the universality matters, and the buffer/clipboard dichotomy is pretty well handled in MacVim, but it's still the type of thing that is quite difficult to really dial-in without building for a specific OS from the ground up.
And of course there are a few nice things that developing for a specific GUI affords you where vim even with plugins isn't quite as elegant.
However that said, all editors involve tradeoffs, and Vim's ubiquity and raw editing power make it kind of a sure bet until the day we are dictating whole programs to orders-of-magnitude-smarter-than-human AIs. Emacs also gets the nod of course, since there is no chance of either of those going away, and no chance that anyone invents an editor that blows both of those away for all general purpose editing.
But I do have to give Allan Odgaard special thanks for forcibly showing me the light: that no matter how brilliant proprietary software may be, if it's my primary tool that I intend to use for the next 50+ years, closed source or a project with a risk of losing critical mass is simply a poor bet over time.
And of course I will still buy TM 2 when it comes out if he reverses his decision not to charge for it (which he should, and maybe give it away to individuals that complain, because who shouldn't be paid for years of secret toil?), and I'll likely still use it for its diff syntax highlighting, complex regex ack (because how long does it take to figure out the number of backslashes to escape something through ex, bash, and ack?). But it'll join BBEdit (which I use for encoding munging) in my quiver of specialized tools.
I love TextMate but I do feel that at the current pace it is in my best interest to learn new text editors.
There is also something to be said for vim opening a 8 GB file, and searching through it to replace what used to be an unreserved name in a MySQL dump to a reserved name. Most if not all other editors will completely fail.
While at first I was sad that I couldn't just have my TextMate at work (another user just pointed out I can use one license for work and home! Score!) I am also glad that I have learned at least the surface plus a couple of centimetres of what vim is all about and how powerful it really is.
I am using the only Mac in the office, we are using Qt for cross platform development and they pay a license for that. Being the only Mac user means I don't get to take advantage of all of the licenses that the Windows developers have access to through various Microsoft programs like BizSpark.
We are currently going through our B-round of funding, and hopefully after that it will be easier to ask for various pieces of software, for now I have decided in an effort to save on various different costs it is not worth pushing the effort.
Does Textmate do anything that BBEdit doesn't? There are threads like this all over the place talking about a "vacuum" in the Mac editor market. Meanwhile the daddy of them all has just had another big update.
Doesn't that potentially say something about the quality of the existing code?
I've been using textmate daily for the last year and haven't had any gripes (not implying their aren't any, especially for programmers - but for my needs it's been stellar. Sometimes a good app is just a good app and doesn't need constant updates)
I am sure that version 2 will be completed at some point, but at what cost to his sanity? Imagine for a moment if he just gave up and released the source for free.
Hundreds of itchy fingers across the net dig into the source, enhancing it, expanding it, fixing it, porting it to everything from Linux to the Nintendo DS. The cult of Textmate grows with each new release, finally bringing another contender to the editor wars long raged by vi and emacs.
Since Mr. TextMate dude no longer has a source of income, he decides to write a book about his experiences developing the app and his eventual burnout. It is an instant hit with geeks everywhere. He rakes in tons of money doing speaking engagements.
After a few years, the itch to code returns. Mr. TextMate's new app, TextyMatey - an editor that converts everything you type into pirate speak, becomes the first ever text editor to hit 1 million downloads in the first day. DVD sales of Pirates of the Caribbean trilogy skyrocket, prompting a visit from Johnny Depp. Mr TextMate and Johnny become fast friends and spend the rest of their days as men of leisure on the French Riviera.