TextMate News

Anything vaguely related to TextMate and macOS.

My Other Blog

In an earlier post I wrote that “I am trying to slowly turn this boat” referring to the lack of posts to this blog, and that “I have enlisted a technical writer to help bring this blog back to life”. Well, almost two months later, and no real sign of change, and plenty of comments on the post calling me out on that.

Whether or not it will work out with the technical writer, time will tell. The intent was not to write blog posts myself, it might not have been clearly conveyed in the other post, but writing blog posts (or twittering) is just not my thing, hence why I am trying to pay someone else to do it.

I have however taken up writing on my old blog: SIGPIPE 13. So far it has worked out fairly well, in that I actually get content posted, and I don’t spend the better part of a day on the posts.

If you want to be assured that I am alive and still interested in computers, you may want to subscribe to that blog.

categories General


Great stuff on SIGPIPE. It gives insight into the kinds of problems you are solving while working on TextMate 2, without giving away the whole cow.

11 August 2009

by Jonah Heywood

I thought this was a Textmate blog? Nice way of turning the boat, without giving us any real news.

12 August 2009

by Ariejan

Will this be fixed in TextMate 2?

13 August 2009

by Shawn Van Ittersum


Please consider the roles diagrammed and described here:


It says that the lead developer should write the documentation. There’s an editor role to revise the developer’s first draft (or dictations, but that would be pretty slow and inefficient). No tech writer to come up with 100% original work, though. Tech writers who don’t develop and don’t know the code need to be told what to write or given a fairly complete draft.

Though Brooks’ model may not be perfect, it is well-known and tested, and one could certainly do much worse. It may not be perfect for you and the way you like to work, but I wonder if it still might somehow be of use to you.

You’ve done a good job describing features of TM1 on this blog. Are you opposed to doing the same for TM2 only because it’s not released yet? Or because you’re having too much fun coding to pause for writing here? It’s not meant as an attack; I’m just curious.

What can people in the community do to help you along with the roles described in the synopsis linked above?

The pharaohs had a pretty good methodology for building pyramids, too. That doesn’t mean it’s especially applicable to his situation.

What slave labor?

Hey, whatever gets TM2 out the door.

13 August 2009

by Shawn Van Ittersum

BTW, I’m not saying Allan should hire ten people. I use Brooks’ model as a guide to a separation of roles, which may be combined.

When a project grows beyond the capacity of one person, and more people are needed, the leader can experiment with responsibility allocations to see what works, or one can use the tried and tested methodologies of leading texts. I just wanted to offer that to Allan in case it is helpful in advancing the project.

Eh, I don’t care how it happens and if it takes a month or three longer because Allan does/doesn’t write the Docs. I know how painful project “babies” can be, so whatever happens, I’ll buy my 2.0 licence and hope Allan had at least some amount of fun doing it.

And I’ll never understand how people can be as spiteful with someone like Allan in the Comments (of previous blog entries). Dissapointed that there’s no 2.0 yet and offering constructive criticism, ok, but being an ass and bringing someone down who clearly cared about his product is just low. It’s not like the people can not use Eclipse or something…

14 August 2009

by Philip Thrasher


I just wanted to say that your tone is much improved in your comments in this post. Not that I’m any sort of comment police officer, nor do I care to be. Just thought you might like that recognition.


I agree with you, except that TM 1.5 is still the best out there. It’s funny that some have come close, but no one has matched TM 1.5 yet. All the more reason to be antsy about what’s coming in 2.0

Allen is a very talented indie programmer. If I had the money, I’d donate to him for the purposes of coding just so that more great apps could be cranked out of macromates. I’ll just have to settle for buying a 2.0 license. Can’t wait till it comes out.

Keep up the good work Allen. ;-)

Allen, I’d write for free for you if you’d like. It’s something I enjoy doing. Please email me if it’s something you’d be interested in letting me do. If not, no hard feelings.

email address: philipthrasher at gmail

Shawn: Yes, the reason I don’t want to write specifics about 2.0 is because it is not complete.

One may say that I could write about what I have, but I don’t consider anything “set in stone” until the product actually ships. This might sound scary (that after two years, I still don’t consider my code base stable) but an example is the layout stuff described in this recent post. It insinuates that you can have mixed fonts in your document, that is a feature I did long ago, but using the naive solution method.

The actual layout part is pretty self-contained, so it was little work moving to better data structures, but until recently, I did not know how to solve the performance problem, and if it hadn’t been solved, I would have needed to re-evaluate the features involved (possibly pulled back on some).

Regardless of how I try to phrase things, users are prone to read what I write as promises and hold me accountable for delivering on these, take the third last comment on the Working on It post, it literally says “stop promising and not delivering” or take your own letter some years back about how you “bought TextMate in good faith” (and I feel bad for quoting you here, as I agree with Philip, your tone is much improved and I appreciate that!).

Adding to that, I am far more passionate about my vision for TextMate 2 than the current code, so when I talk about it, I’ll often give examples of how I hope the eventual user experience will be, but there is still some way to go, and until I have actually written every single line of code required to get to that envisioned user experience, I can’t say with 100% certainty that this is how it will be — i.e. until the code is 100% written, the product is vaporware, and I prefer to treat it like that.

The problem is I am a new Mac user and I want to use TextMate. But I am not going to drop the very high price tag just to have a new version come out a month later and have to pay for an upgrade.

So I am kind of in limbo as to what I want to do, and while I understand that you are busy and do not like to make blog posts, I think simple timeline/progress updates would be nice.

I have not decided if I will move Adobe apps to my mac, so this will be the most expensive app on my Mac. :P

TO be fair Nick, I think if you read the above comments, it seems pretty unlikely TM2 is going to be released anytime soon :)

It would be nice if a purchase included free upgrades for a period of 6 months though, I agree.

15 August 2009

by Philip Thrasher


You say TM is very high priced, but how much money will you make as a result of using it? My general coding project pays out anywhere from as little as 100 dollars to as much as a few thousand. Even on the smallest scale, the investment is almost immediately returned.

In all honesty, if he released a new version every quarter at the same price and no free upgrades, I’d buy every single one if it were a nice upgrade seeing as how the investment has such a high rate of return.

Just food for thought.

Nick, Carpii,

you are aware that TM2 is planned as a free upgrade to TM1 users, right?https://wiki.macromates.com/FAQ/TextMate2

Oh, I didnt know that, no. Sorry is my post was misleading anyone

In that case this is great news, thanks :))

TM2’s sheer existence will please many, but I maintain that the product still feels ahead of its time, and still satisfies me far more than Coda, Espresso, or any other mac only editor can. Of those products, TM1 is the only one that feels complete. When TM2 does hit the scene, though, the name alone is going to sell copies I’ll bet.

Why can’t you just release and iterate based on user feedback? Everyone is doing it… look how well the iPhone apps in the Apple store are doing.

There are new things coming out all the time… sitting on the code base will only ensure things go out of date by the time you are ready for debut.

Release and iterate.

Release and iterate.

19 August 2009

by tschundeee

Hey I have to agree to Wei. You had very big success with TM1 and now it seems that there is a development deadlock. The biggest advantage of Textmate is not the App itself (btw: it really rocks), it’s the community around it that builds a whole eco-system of plugins. Have you ever thought about getting the community involved into TM2 development? There are so many talented dudes out there willing to help you get TM2 ready. You could make it open source, donation-ware or free for private use and charge for commercial usage. But please don’t let Textmate slowly die… Release and iterate is in my view also a good thing because you can get help and feedback from the community.

Nick and Carpii – ironically, a few of us have been none-too-gracefully suggesting to Mr. Odgaard that TextMate 2 shouldn’t be a free upgrade. It’s painfully obvious that it’s a ground-up rewrite of the editor, which has both good and bad elements to it, but it seems like there’s certainly enough there to justify a €12 upgrade price. (That’s a somewhat randomly-chosen number, but one that seems reasonable.) Speaking completely off the cuff, a plausible way to avoid a “late adopter penalty” for new buyers would simply be to have a policy that once TM 2 goes into public beta, any purchases of TM 1.5 would get a free upgrade to the final version of TM 2.

As for “release and iterate,” well… sigh. Normally I’m against the idea of releasing a public beta that isn’t a genuine beta in the old-school sense, i.e., the developer thinks it’s likely that it’s stable enough for production use, just not guaranteed, and is trying to shake out remaining bugs. But normally, we’re not talking about a program that’s widely perceived as being over a year behind schedule. (Note that it isn’t “years behind”; TM 2 had an ETA of “after Leopard,” which came out in October 2007. Nobody should rationally have been expecting it before early-to-mid 2008.) One could make a plausible case that releasing an alpha version of TM 2 very soon, even knowing it’s buggier than a South American jungle, is actually a pretty good idea.

Allan, the other blog is a beautiful thing. You expose progress on TM2, even if the posts have little purpose other than thinking aloud. Please, keep using it for thinking aloud. For one, I love learning how other developers think.

21 August 2009

by Shawn Van Ittersum

Allan, I agree with Wei. Iterative development has been very useful to me actually getting stuff done and shipped. You know by now that I’m a fan of Jobs’ quotes, and here’s another that I’m sure you’ve heard: “Real Artists Ship.”

If you are willing to open up the codebase to some other computer science ninjas, they may be able to make suggestions to improve performance and unravel other cruft that accumulates in any 1.x product, to help you build 2.0. Since your stated intention was not to charge for 2.0, why not open source the project? You might get some very useful patches from the community.

I would also like to express thanks for your other blog. It has some very useful tidbits in it, such as that technique for filtering spam posts using JavaScript.

You wrote a post about simplifying boolean expressions:

“Pretty much the only rule I know for manipulating boolean logic is how to change AND to OR so I didn’t have much luck working on the above until I realized that AND can be seen as multiply and OR as plus (with false being 0 and everything else being true).”

This and other techniques are taught in mathematical logic. You might enjoy reading a book on the subject, as I think it might offer great insights for your programming work. Unfortunately, I can’t recommend a good book, because I studied it at university from the professor’s own unpublished text.

By opening up your code to others who have studied this and other complimentary skills to yours, we can all make such improvements together much faster. While many hands on the code might quickly make a mess, many eyes on the code may be of benefit. With an publicly viewable Git repository, you can easily decide which patches to accept and which to reject, and the ideas you’ll get from our collective minds may solve many problems for you!

21 August 2009

by Allan Odgaard

I have considered making the project F/OSS, I have also considered just putting what I have on GitHub, I have made lists with pros and cons, and in the present situation, there are more cons than pros (for me). I am almost certain the source will eventually end up as F/OSS, but now is not the time.

I did “release early” with TM 1.0 and it was hard on my psyche having to be publicly mocked by dozens of blogs. I am more thick-skinned now, but with TM 1.x being out there and functioning perfectly well for a lot of people, I don’t think it makes sense to put out an incomplete product to “replace it” — unpolished software tend to give a really bad impression, and it will be a major drain on my time having to “support” it (despite disclaimers or similar, people will still report (known) issues, ask questions about it, write negative reviews, bitch in public, etc.).

In light of the various advice I get, I feel I should give some background about myself: I have a masters in computer science, minor in information psychology, did one year of math at the university, have 2 employees (one full time coder), also took a software engineering course at the university (which goes through management and development models), have been actively involved in the components developed for TextMate as F/OSS, and have been writing software for the last 20 years of my life (I am 33 now) — I don’t want to imply that I can’t be taught any more things, that there aren’t people smarter than me, or I don’t make mistakes, just, I am well read and have practical experience (managing a team, an employee, developing as open source, releasing early and iterating, etc.). People might disagree with my choices, but they are not made “out of ignorance”, is all I want to say with this :) I hope it does not come off as elitist. Also, I am not saying all my choices are 100% rational. When I view my own life, the one thing I value the most is my ability to pretty much do whatever I want whenever I want to, so if I don’t want to ship (despite what Steve Jobs thinks) then I shouldn’t ship, because that is the privilege I have been fortunate enough to earn :)

21 August 2009

by Andy Staab

Allan, my advice is to handle TextMate development the way you see fit. I’m a software developer with a little more experience than yourself, and believe me, there will always be unsatisfied users who think you’re handling things all wrong. Ignore them. It’s obvious you know what you’re doing. It’s also obvious that pleasing yourself first leads to an incredibly good product. Keep your standards high and only release when ready. The fellows at MacRabbit/Espresso/CSSEdit have taken major heat for similar reasons. In the end, if you don’t please yourself, you’ll be unhappy. You can never please everyone. If any users are really that upset with lack of communication or point releases, let them develop their own text editor or use another product! I don’t understand why so many people wherever I look (not just TextMate users) feel so damned entitled. You really don’t owe anyone anything and I share your philosophy “to pretty much do whatever I want whenever I want to.” Good for you!

Life is still sweet with 1.5, looking forward to 2.


Happy with TM 1.5 - still is the best editor. Waiting for TM 2.0 and will wait as long as I have to because nothing beats TM right now, NOTHING… I feel that people who enjoy your soft should post more frequently to get you motivated rather then bring you down.

Do not get me wrong, I would love to have TM 2.0 tomorrow, but I want Allan to keep doing what he does the way he does it. The result is TM 1.5 if you pressure the guy what the result would be?


24 August 2009

by Shawn Van Ittersum

I know this is slightly (maybe entirely) off-topic, but how many of you write code in Objective C / Cocoa?

Yeah, please don’t hijack my blog comments with this, they already see plenty of off-topic stuff ;)

Someone started a poll at the wiki about this which might answer your question.

24 August 2009

by Svalebror

TextMate is incredibly cheap for what you get. After 2.0 comes out I hope we will get the oportunity to pay more and more often.

So what’s new with TM 2?

I’m hungry for any updates you’re will to share. I don’t need War and Peace, any fresh information will do.

I don’t like that out on an (almost) unrelated post, but since the comments are turned off on the most relevant recent post this is the best place I could think of.

11 October 2009

by Philip Thrasher

And now both blogs are dead. Nice.

I don’t wanna start a flame war. He doesn’t have to give us anything. And I’m not saying he’s a bad person. I just get giddy and excited waiting for TM2… haha… so hungry for TM2


I’ve tried to just take the “pretend it’s not happening and be surprised when it does” approach.

The lack of info is really bothersome if you think about it too much - at least for me.

It all feels all like agony by now. The fire slowly burns down, enthusiasm waned. I mean, just look at the numbers of the mailing list.

I guess we all would have been glad to see an evolutionary version 2.0 with improvements around the core editor (which even now remains unsurpassed by any competitor).

Now, after all the time passed, it appears no longer possible to just release such an evolutionary update. Everybody (including foremost Allan himself) now expects to see way more than that delivered.

From the outside I must assume by now, it’s simply the fear to disappoint that keeps Allan tight-lipped. As long as he doesn’t talk about it, it’s up to everybody’s fantasy what TM2 may look like.

It’s a paradox in which he goes like: given enough time I’ll compensate for the time passed with something even greater!

(Full disclosure: I do suffer from this myself, when I’m procrastinating …)


Yep… at this point, pure agony. Now it’s dead silence. He doesn’t owe us anything… but it doesn’t change the fact that it sucks not to hear anything.

Is TM abandoned?

All I want is smart line wraps. That’s all I want, and I would be so happy.

Best regards.

All I want is smart line wraps.

What do you mean by “smart line wraps?” I presume you’re meaning something other than smart indentation, which TextMate by and large does pretty well. I confess that one of the main things that keeps me coming back to TextMate after trying each new release of BBEdit is that TextMate gets the concept of “smart indent,” and BBEdit doesn’t. (Actually, I think Bare Bones Software deliberately spurns notions like context-aware automatic indentation and intelligent backspacing with soft tabs, which is in some ways even more irksome. I’ve seen messages from them a few years ago on mailing lists in which they argue against that because you don’t know with absolute 100% surety that when a user backspaces over a string of spaces that apparently represents a tab she wants you to delete all the spaces as if it was a tab. But dudes, c’mon: every other editor I use figures this out. This is a solved problem. Seriously.)

For me, the Big Missing Feature is window splits. I’d be happy with just the ability to look at different parts of the same file in the same window rather than having to open the same file in two different windows.

Oh. And chunked undos the way every other OS X program does it. I remember the arguments from Allan Odgaard against that years ago which were pretty much the same as BBEdit’s argument against intelligently backspacing over soft tabs, but again, the existence of every other text editor on the Mac for the last quarter-century suggests this has a conventional solution. Really. :)