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.
Oh well, helps explain the Vim goldrush of the past few months.