Textmate2 Goes Open Source
github.com
github.com
Allen is a great guy and I love TM. However, here are some facts. TM2 has taken SIX YEARS. It was "90% done" 2009.
This is a living, breathing case study in why quick customer-driven releases are better than "big upfront plans" and "giant system rewrites." Anyone who has developed a major application knows what I'm talking about. These "big rewrites" almost always take much longer than expected, as has clearly happened here.
I have learned to listen to what your customers want, and just build it. Develop it in a few weeks, release it, and then ask again what your customers want. Some people call it "customer-driven development" and I think that's a good way of phrasing it.
[1]: http://www.joelonsoftware.com/articles/fog0000000069.html
I think that the real lesson to be learned is that you should beware of rules that start with "always" and "never".
Actually, that is the definition of a case study.
The ReadMe, build process, and licensing instructions all point towards this being a well planned Open Sourcing of a product.
I'm pleased with this, and hopefully it will spur development of TM2, allowing it to truly compete with the up-and-coming Sublime Text 2.
Sublime Text 2 has been released since later this June[0]
[0] http://www.sublimetext.com/blog/articles/sublime-text-2-0-re...
It does appear to be, because there's no history -- everything is "Initial commit".
From the readme:
>sudo port install ninja ragel boost multimarkdown mercurial
Yes it says later that it's only for a the SCM library tests, but it is ported to Github. Why not test the SCM library with git if you were using that? Seems more likely that he used Hg and was testing with it as well.
Since you can certainly sell a GPL'ed app, is this "well-planned open sourcing" going to continue to sell the installer version, start giving it away, or discontinue it? I don't see any mention of this issue on either site, but maybe I just missed it.
Can we save the editor wars for another thread and maybe, just maybe, actually talk about the code?
I'm not a TextMate user, but from what I've seen, this is confirmation that the TextMate author isn't going to release TM2 even though he advertised it as an incentive to buy TM1 several years ago, and has subsequently continued to promise.
I wonder if there is still enough interest in the app where people will contribute all of the community's desired changes -- I hope there is.
Am I one of the only Textmate users who feel that Sublime isn't the right "upgrade"? I much prefer Chocolat or Vico as they feel more like native OS X applications.
1) The GUI is incomplete: look at the preferences, for instance. To change a setting, you have to open the defaults settings file, find the setting you want, copy it into a different file (user settings), and change it there. Actually, I take it back: it's worse than Emacs in this regard.
2) What GUI is there often works strangely. For example, if you open a folder you get both a sidebar and a tab bar. You can put files in the tab bar by double-clicking them, or you can browse the directory in the sidebar. But if you select a file in the sidebar which is not open in a tab, you end up with a tab bar with no selected tabs, which is quite jarring, since tab bars in all other applications always have one active tab. If you only have one tab visible, it looks like it's active even if in fact you have selected some other file in the sidebar (the fact that active and inactive tabs look very similar in the default theme does not help).
3) The default theme gives you a window that is a strange mix of light gray and dark gray, with no apparent logic. It looks like parts of two different applications got mashed together. I have yet to find a theme that looks satisfying.
The last bit is in response to the parent post by frou_dh:
I feel ST2 is healthily past "good enough" as a Mac application.I've never ued ST, but it being an text editor, you'd think that they would have _that_ down right, FFS
I don't get what you mean by "if there is still enough interest". If you wanted a particular feature or change, couldn't you just fork Textmate and then implement it? That's the advantage of it going open-source. We are not at the mercy of some developers who don't think our requests are worthwhile. If I want something on top of my open-source editor of choice, I can just "get up to speed" [1] with the source and go ahead and implement what I want.
I do think we rely a little too much on other people to do things that we want for ourselves. If you really want a feature and no one else offers to do it, then you will have to pony up and do the legwork yourself. And that's a good thing.
[1] Getting acquainted with the source code doesn't have to be that hard, either. It is a bit of a problem in less-organized projects, but still better than a closed-source base. As a developer, I think this is something more people should be used to. That is, rolling their own solutions when they don't get what they want.
No, I could not.
1) I have other things to do than building my own tools. I work creating _stuff_, not creating tools.
2) You assume I have spare time to delve into the code of a project, understand the whole structure and add a feature --which might need tons of changes all around the engine.
3) You assume I can do it. I might not even code in Obj-C/C/Cocoa. I might just be some HTML/Javascript/Python whatever developer.
Besides, with open source you have more than just the original developer on whom you can use cash to entice him to make your favorite changes.
Effort spent on tools != effort spend on adding some feature I'd like on a programmer's editor. I could just switch to something better.
Plus, you probably overestimate how more productive a tool like a programmer's editor makes you.
The truth is an editor can make editing less repetitive, but it's not like an order of magnitude better. Not even 2x or 3x more productive. Thing is, there are very successful programmers using all kinds of editors, from Emacs and Vim to Eclipse (notch), to Textmate, to Notepad++. And tons of classic unix programs, including C and Unix itself, were written in ed or similar primitive editors.
> People have to prioritize their lives
Yes, totally agree. Prioritisation is inherently about making choices - I'm sure you don't disagree with that?
Don't conflate not wanting to or being unwilling to do something with impossibility. They're very different.
I'm extending this idea of rolling your own code to anything/everything open-source, not just text editors. If you're playing a game, or using a webapp and there's some feature or pain point you want to add... well now writing it yourself is an option!
Don't get me wrong, I'm not saying you have to write it because you have a thousand other things to focus on or that the reward/effort ratio isn't worthwhile or whatever reason. But you can.
But you can't tell me that having the option to do so isn't so freaking awesome. Would you prefer abandonware instead? Or seeing where Textmate 2 was going (evidently, nowhere) if it wasn't open-sourced?
Oh, no problem, I didn't get that impression.
>I'm just praising the model and abilities of open-source and how much power it gives to the user.
Well, what I'm tried to say it that much of this is "potential" power and not actual. It takes a community or at least several interested programmers to actualise it. Else, it's just the same as if the user didn't have the option at all.
>But you can't tell me that having the option to do so isn't so freaking awesome. Would you prefer abandonware instead?
No, sure, Open Source is better than closed source abandon-ware. Only pointing it that open source can be abandon-ware too (tons of abandoned projects on SourceForge and GitHub -- and not all for lack of interested users, mainly for lack of interested programmers).
That's why I think programmers as users (that can contribute back!) are so beneficial. Heck, they can even help the lead programmer debug by finding stack traces, culprit lines in code, working on things the author can't make time for, etc. etc.
You're right in that it's "potential" power, but I think it's just a matter of time of getting more people into the open-source and contributing mindset. I don't think enough of my coworkers or previous peers from uni respect the power of open-source. They just see open-source software as something... 'fixed'. It's either good, or not. They don't realize that they can easily change it with some determination.
On a sidenote, have you read about the "Cathedral and the Bazaar" [1], by Eric S. Raymond? I thought it was quite an eye-opener on the merits of open-source vs the closed-source alternative.
[1] http://firstmonday.org/htbin/cgiwrap/bin/ojs/index.php/fm/rt...
For example, ST2 doesn't let me select the folder inside a project. It only lets me reveal or hide its contents, and rather briskly, at that.
ST2 has no passion for the subtleties of user interface and the joy it can bring. I don't think a lot of people get it.
I also don't need ST2's thumbnail view of the document constantly showing me where I am in it taking up real-estate in the project window. That's clever, but a distraction, at best.
If I'm going to be moving away from TextMate as I know it, it's going to be to something better, not TextMate's uglier brother.
I tried ST2 for a month and ultimately decided it wasn't making me any faster or more productive than I was in TM1. When I do finally get to a place where I'm ready to leave TM1, it'll probably be for Chocolat. I've already bought my license.
I use Vim on OS X right now and I like it but used ST2 just yesterday (odd timing). I agree with others that it is basically the TM2 we were waiting for.
I find it more annoying than the lack of, say, Cmd + T in MacVim, so I've found myself spending more and more time using that — even after a concerted effort to use SublimeText for a while.
I recommend giving that a shot, but I do completely understand your reluctance. You're right, the absences are jarring!
But now my hands are wrecked. My fingers have minds of their own. My muscles have learned a subset of vim that does not seem to be a subset of any vim plugin maintainer's usage. I'll be in Vimperator or Eclipse vi-mode or Vintage and I'll hit cf" and nothing will happen, and I'll realize I'm completely lost. I lose my chain of thought and it takes me a non-negligible amount of time to realize that I'm going to have to hold down shift and use the arrow keys like some sort of Notepad user. I become irrationally angry and wish horrible torture upon the poor soul who wrote the (altogether pretty good) vim plugin I'm using, because who are they to not include EVERY SINGLE VERB AND NOUN that my fingers have painstakingly learned over the past few years. I slam my keyboard against the table, throw the mouse through the monitor, then roundhouse-kick the tower off the desk before I set fire to my desk every time a vim plugin is incomplete.
Vim has reduced me to a pathetic teary wreck every time I have to use a text editor that isn't vim.
I wrote this in vim.
I used to feel this way. I worked really hard to make all my configs and editors act the same across OS X and a few unix platforms. Then one day I woke up and decided I just wanted to work with the best editor on the best platform. (Both personal, subjective opinions, of course.) And that choice has worked out great for me.
When I was first looking at Sublime Text and I saw it as a disadvantage when I noticed they had Windows version. I don't mean to come across as smug, I just mean that I fundamentally feel that OS X is a lot better than Windows. (A personal opinion.) My point is that I need to be philosophically aligned with my editor's developer. And if they have chosen to support Windows, they could have spent that time pushing the OS X app forward, which doesn't align with my position. I want the best editor possible, not the best editor on every platform.
The other way I look at it is to applaud their ambition and results with creating a great cross platform editor. I think cross platform software is incredibly important, but I would paradoxically prefer my editor was not. In other words, I'm glad that ST exists, but I don't it's for me.
This is taking things a bit too far, I think. If you're a one platform kind of person the most important thing should be "How well does it work on (my platform)?".
Luckily my preferences have nothing to do with the outcome, much like the weather.
And while it's unlikely: I may find myself in a position where I have to use Windows. I'll be glad not to need to learn a new editor I don't want to. Or maybe I'm away from my Macbook and I want to code? We aren't all complete masters of our own destiny like DHH. I like to be prepared. :)
As a member of the set of "every programmer", I have to disagree with this. I develop on the same machine every day. I don't care if my editor is cross-platform. I just want a good editor. It being performant and feeling "nice" for my purposes is way more important to me than being able to use it on machines where I won't ever use it.
I really like a few features:
* View your whole project from the root directory: mate .
* Open a bunch of files in arbitrary locations at once: find . -name 'something.' | xargs mate
* Write a script and run it using command-R
* Banging out html using tab complete
* Compared to any IDE it is ridiculously fast.
* I wrote a bundle (for Oracle Databases) that I used for awhile.
Kind of cool stuff.... might be available in other editors but I found 'em for the first time in TM 1.5.
I forgot to mention ackmate and the extension that disable project refreshing when connected to a network share
I prefer stronger opinion with an editor. I don't care if you have an awesome editor that only works on Windows as long as I have an awesome editor that works on my preferred OS.
Awesomeness is what editors should be about. I have to work with it all day long, it better be.
I don't work in vi if I don't have to though, and I like editors that feel natural, are a pleasure, leverage the virtues of the OS I use, and interact with the shell. Textmate 1 has been able to do all that. It's just my preference, nothing more.
The keyboard shortcuts follow whatever is expected on that platform. They have support for specifying different keyboard shortcuts for different OSs so 3rd party packages can also provide out-of-the-box settings that are native to each platform.
It does Lion-style save/resume your workspace so even if you shut down and restart, it opens all your sessions with unsaved work and scratch buffers still the same.
I'm not sure I found anything that made me feel this was a Mac app ported to Windows or vice versa.
The way TextMate2 was going, I'd bet it's something like, it wasn't getting done, and the author was too busy or uninterested to continue, so open sourcing it probably is a way that it may actually ever get finished.
You only need to change settings (or right-click and hit Open) if you are running unsigned binaries.
However TM is being kept out of the app store for other reasons, such as it's ability to prompt for an administrator password to allow writing to protected files.
Apparently, you can alt-click and select open, but my gut tells me that this was an oversight and will not last long. This feature was touted as a potential way to protect children, and if overriding it doesn't even require entering a password it fails at that pretty badly.
http://www.apple.com/osx/whats-new/features.html#gatekeeper
And even explicitly mentioned in a system dialogue:
http://cdn.arstechnica.net/wp-content/uploads/2012/07/gateke...
I am still not on Mountain Lion, so I don't know if you need to enter a password (which children shouldn't have) or right clicking is enough?
xattr -d com.apple.quarantine myTrojan.app
Now you can run the application no matter what the Gatekeeper setting is set to. No need to be paranoid. Gatekeeper isn't meant to lock down the Mac against yourself. It is a security feature only.
There is a tiny bit more info on the mailing list:
http://lists.macromates.com/textmate/2012-August/035206.html http://lists.macromates.com/textmate/2012-August/035208.html
--------------------------------------------------
> This is very cool, but it calls into question what your plans are for future commercial development (by you and your team) of TM2. Is it a dead parrot?
I will remain active working on TextMate and I hope we can still sell some licenses even though people can now do their own build (w/o any license enforcement).
--------------------------------------------------
> @allan will you (or do you now) work for someone then?
I’m still my own boss and I don’t plan for that to change :)
--------------------------------------------------
https://github.com/downloads/albertz/textmate/TextMate-2012-...
Doable, but I don't think many people will be queuing up for the task.
But GNUStep isn't exactly up to par with Cocoa, never mind not exactly the default desktop environment. Porting the whole editor from Obj-C++/Cocoa to C++/KDE or C/Gtk would be a pretty huge task, where you'd better off starting from scratch anyway (as with a lot of GUI apps, it's mostly about the ideas, not the implementation).
But yeah, you're right the Cocoa aspects are the bigger overhead, I should have been more clear.
I have mixed feelings about TextMate going open source. If QuickSilver is any indication, it will now definitely take forever for a new release. Dang! and I seriously don't like ST2.
That's just my opinion. Time (and commits) will tell.
If TM isn't updated much, then it's because of the same reason that QS is not updated much anymore, because most people moved on to something else and are no longer interested in it.
And really who cares how some Windows program with a fraction of features and capabilities is compared to a Mac app
The actual layout/folding code, for example, is in C++. When it needs to draw it calls Core Graphics C functions. A lot of the other things like commands are similarly abstracted. But the thing is, if you look in Frameworks/layout/src/layout.cc for example (the code that actually lays out the text), it looks like nice platform-independent C++ code. Ah, you think, this will be easy! Until you get to, say, CGRect layout_t::rect_for (row_tree_t::iterator rowIter). The return type is CGRect and it's calling CGRectMake. These are Mac-specific Core Graphics calls. The drawing code is similarly Mac-specific.
So the first thing you'd need to do is follow the architecture and start TRULY abstracting the core functionality into these C++ classes and, when they make a call to something platform-specific, you'll need to replace it with something platform-independent.
To do this, you'll need to:
- Make or move to an abstracted Graphics Context library. You could use something like Cairo or roll your own (which is what WebKit does).
- Further abstract the application structure away from the actual classes. So, for example, you would have platform neutral code to talk about the UI logically but then have each "MyWindow" C/C++ class hold a "PlatformWindowHandle" which, on Linux might be a GTKWindow pointer, on Win32 might be a Window HANDLE or COM object reference to a .NET Window, and on Mac be a pointer to an NSWindow. You'd obviously need similar platform-neutral library infrastructure to call into each of these with a similar API and translate to the platform actually running at the bottom. You could write this yourself, or you could maybe just use wxWidgets or some other library that's had a decade-long head start. You lose some control that way, though.
- Repeat with all other areas of the app that are still Mac-specific.
My opinion is this would be a good starting point for such a thing, and if you really wanted to make it happen you could. But you're NOT going to just go in there and replace NSWindows with GTKWindows and NSButtons with GTKButtons and call it a day. It will be MUCH more work than that.
The latter would of course be great, the former rather sad from a user perspective since most former closed source apps do not survive for long after a switch to open source.
TM2 alpha didn't fix it. Gave up.
What an absurd generalization.
To be fair… watching a highlighter crawl down a small file is a complete joke
> Note: parts of Ragel output are copied from Ragel source covered by the GNU
> GPL. As a special exception to the GPL, you may use the parts of Ragel output
> copied from Ragel source without restriction. The remainder of Ragel output
> is derived from the input and inherits the copyright status of the input
> file. Use of Ragel makes no requirements about the license of generated code.
ragel is actually extremely cool and I've used it extensively in non-open source code for various things. I haven't even scratched the surface yet with how powerful it can be and I definitely want to spend more time with it.It's good to see that they are sharing their hard work with the community but it's sad to see a legendary text editor basically die!
I've had no issues during either conversion (aside of mistyping an author name, but filter-branch helped). All branches were successfully transferred.
Now I wonder what kind of issues you were having.
Even though he said he would make TM2 a free upgrade, my plan was always to buy another copy to show my support.
On http://macromates.com/ I just see a download to a 30 day trial version of TextMate 1.5.11.
After googling, I found http://blog.macromates.com/2011/textmate-2-0-alpha/ which is from 2011 and provides a TextMate 2.0 alpha (r8930) download which also requires a licence key.
Now I can code that myself (oh joy :)
Does anyone else have that issue?
Here the developer talks about regretting the free upgrade: http://old.nabble.com/TM2-to28405435.html#a28707277
So it's a bit wrong of you to think you were bamboozled.
3 years of use from a product, plus we now have the almost-guaranteed support and speedier development because of it's Open Source nature. I think it was worth the money.
If you paid for it last week, I can understand frustration.
I am more pessimistic. I think the project died and open sourcing will just reanimate it to undead Zombie status.
A year later, I bought it again... that time my license number was #37475. (Though I think at that point it had been in various promotions and bundles, so who knows how much $ it translates to.)
If you program for your day job you're using your editor something like 2,000 hours a year. I paid for TextMate something like 5 years ago... given that I used it for approaching 10,000 hours since then...
A text editor and a computer have such an amazing return on investment it makes anything else pale in comparison. Even if you're paid $50,000 per year, your $50 investment into TextMate made you $250,000... or paid for itself 500 time over. (Edit: Sorry, I mean 5,000 times over.)
: Pedantry concludes.
How many hours did you use it?
Well worth the $50
I use my keyboard for work constantly, but it is not worth more than maybe $10 to me.
I use my keyboard for work constantly, but it is not worth more than maybe $10 to me.
I'd say his measurement of utility makes a lot more sense than yours.
I've bought 3 Microsoft Natural 4000s (about a $60 keyboard) over the past 3 years simply because I was away from my office for an extended period of time and my wrists started hurting.
I have an old Model M at home that I value at a hell of a lot more than $10; I am not here to argue the merits of expensive keyboards. My point though is that the cheap keyboards I have around that have gotten a lot of use are not worth more because I have gotten a lot of use from them. No matter how much work I have gotten paid for while working on a $10 keyboard, it is still a $10 keyboard.
The intrinsic values that the keyboard itself has should set its worth, not the value you extracted from it in the past. It is a keyboard, not an heirloom.
The value is in replaceability. It comes down to the question, "if I take this away from you, what will you do then?".
Textmate was valuable because it was a piece of software that its users could not easily replace to their satisfaction.
If I take your $10 keyboard away, your next move would be to pick up some other $10 keyboard. Hence why the value is $10.
Some pieces of software are valuable even if you barely ever use them. It may be something you use once a year to complete a project, but if it's not easily swapped out for some other replacement, and completing that project is something of high value to you, then that piece of software is valuable - much more so than the small amount of time you spend using it would indicate.
My only issue is with what I saw as a suggestion that if you are dissatisfied with a purchase then you can offset that by using that purchase a lot.
Presumably owenjones thinks he paid too much for textmate/textmate2, and presumably was not planning on using textmate/textmate2 for less than two years when he thought it was a good deal. Pointing out that he should be satisfied because he used his purchase for two years so far seems very silly to me.
If you use something for longer than its expected lifespan, then I can see it. If you buy a car expecting it to last 100k miles but it lasts 200k miles instead, then yes you should feel satisfied with your purchase even if you feel you were being ripped off at the time by the dealer. -- Now, if you were planning on 100k miles, and got 100k miles, then simply getting the usage you were planning on getting at purchase time really shouldn't make you feel better about being overcharged.
This is only going to be <$10 in general if you have a pile of spares right to hand, with unit cost <($10 - epsilon). Not having a spare, it'd cost me a lot more than that to replace my keyboard. Gulp. Better get one...
I've gotten far more than $50 out of having access to Textmate 2 during that time.
I don't feel miffed at all.
No Vim or Emacs style brilliantness, no BBEdit style tons of features and mature engine, no IntelliJ like, er, intelligence, no ST2 comprehensiveness, etc etc.
Plus, the Textmate 1.x text engine was probably a mess too -- I remember the very first versions being laggy (and that's coming from someone who doesn't find even Eclipse laggy). That he couldn't easily fix the one-character-undo is another pointer to that (and, for all I've seen, the 2.x engine is not that better).
It's main saving grace was the many extensions it had, and looking half-decent and native on OS X. Basically, it caught on because it appeared on the right time, and appealed to OS X users like web programmers etc, that wasn't old-time unix buffs, and wanted something native looking without forking for BBEdit (which itself was/is Carbon based and with a custom text display widget).
I don't think Textmate deserved all that success --it should have happened to a better editor.
No, seriously. Typing Japanese characters in TextMate is a worse experience than, say, typing them into a terminal window, or typing them into an aged Carbon application that was obviously not designed for Japanese input.
The degree of success is something I allude to as being congruent with the success of Apple products in general - well designed, cohesive, but definitely not the core demographic being power users. If anything you could probably say it was many's first powerful editor... and as people people grew in their abilities lament formed from its limitations, much of which was to be addressed in TM2, but the extended wait opened the door for people to move onto other, more powerful editors, and esp. set the stage for Sublime - which I'm neither here nor there with and may go back to VIM. But hey, its plugins are in Python and it has a VIM-like mode with an elegant UI so it's definitely a solid step in the right direction.
I think its success was well deserved given its core demographic and esp. tie-in with the Rails community which seemed to grow with it. I'm glad it existed, I consider it a great 'gateway' editor :) And now Sublime is its spiritual successor and I consider that a pretty good thing. Some people, esp. web designers, are just not going to give up UI polish no matter what so it is what it is. And it may very well have introduced others to VIM or EMACS who wouldn't have given them a look initially, finding the old school look and complexity daunting at first blush.
Usability wise it was impressive, keyboard shortcuts made sense, creating your own snippets and extensions was a breeze, block mode was simpler than on any other text editor out there and there was support for most programming languages out of the box.
Consider for a moment that Gedit and Notepad++ are used professionally even today by many devs.
While I'm a big fan of Vim today and wouldn't go back I think TM 1 was a step up for me as it was for numerous other developers at the time. I went from using Gedit to Textmate and I was blown away by the feature set.
Yes, and it feels completely alien on OS X.
If you say that another editor should have been as successful, then what do you mean? That TextMate users have never heard of vim, emacs or ST2? That developers have been lazy and should have out-done TextMate (which ST2 arguably did)? I think this as clear of a deserved success as it gets - it's a programmer's editor and people decided it was the best one to program in.
TM1 out of the box had all my web dev needs already there. Plus, tabs worked great. The only things I've replaced on it over the past few years were search in project (via grep in project) and the file drawer on the left (forget what that plugin was called). Speaking of plugins / bundles - those were super easy to install. For what I needed, they pretty much just always worked.
For the OP who said that Textmate didn't deserve its success I say, whatever. Everyone that I worked with over the past 5+ years doing web dev used TM. And NO ONE complained that it got in their way of getting their work done. So, cool, that's your opinion, but I think TM deserved all the success it got - it's helped me make a good amount of money over the past few years and I still use it today.
The fact that TM2 is now on Github, that's great. Will anything come of it? Dunno, but I guess I can't blame Alan for putting it on there and maybe moving on. TM1 is almost 8 years old and that's a long time to be beholden to something. Oh, and I never felt ripped off; it was money well spent and has lasted a long time..
http://code.google.com/p/emacs-textmate/
No idea how well it works, but I suppose the only major difference in some respects is having to use Ctrl/Alt/Esc instead of Command.
* snippets
* fuzzy file finder
* project file list
* multi-column editing
This is in addition to the non-text related good things TM did: grouping languages, snippets and scripts into a single folder, the bundle community, etc.However, those 4 features were what moved me over to TM - I was more than willing to plunk down my $50 for these features that no other editor (at the time) had
I used SubEthaEdit prior to TextMate and was quite happy, but it lacked multi-file editing and tabs.
I tried Textmate many times, but single-character undo was always unforgivable.
I've heard this complaint before. On the other hand, I can't forgive multi-character undo. I think it's just user preference.
Furthermore, I still use TM1 all day every day. When people call it sub-par or compare its features to other editors it often reminds me of the checklists comparing the first iPhone to other (crappy) phones at the time. You can check all the boxes you want, but if the product doesn't get the details right it doesn't matter. TM isn't for everyone, but it's certainly for me, and I shopped around. (I don't mean to imply all other editors are crap.)
edit: I'm a life long Mac user, 15 year emacs user. I think it has a lot of appeal to non-switchers. That said, it definitely rode the Rails wave.
I've been developing for the Mac for since 2000, and TextMate is the only app I can recall seeing with that "feature".
Is 2 hours a considerably "steep learning curve" for the thing you are going to look at and interact with 8 hours/day, 40 days/week, for the rest of your engineering career?
Also, at the point that you first pick up an editor like Vim, you have no idea whether it's going to work for you, so the 8 hours/day is a furphy.
I use vim daily and it's my editor of choice (so far, at least), but it needs commitment and time to get use to the modal system and to be used without feeling that is absolutely broken. After 8 years I'm sure it feels very natural (as it feels now to me), but I sure remember that it took me time to get use to it. It's not just reading a tutorial...
This doesn't make much sense. You say it appeared at the right time and was pretty and native on OS X. What better editors deserved the success it had that were available when TextMate was popular? Which editors were available on OS X that weren't giant IDEs or VIM and Emacs style editors that have a ridiculously steep learning curve?
I've never understood when people say something or someone doesn't deserve something they've earned. TextMate is successful because lots of people bought it. Who are you to judge what deserves to be successful and what doesn't, especially when history seems to disagree with you?
I'm not claiming that TextMate was the best choice, just that it's unfair to call it a bad choice or sub-par. It was a very solid, decent text editor.
Textmate is about bringing unix and scripting power to people who don't have time to learn an esoteric system
imo the real problem is laziness
The fact that there wasn't another editor that fulfilled all those "needs" at the time (mainly: simple, native looking) does not mean that it deserved it's success. What I'm saying is, it got its success not because it was better than the competition but because there was no competition.
So, I just wish that something better was available at the time with the wanted features (mainly: simple to use and native looking). It would have been better for all in the long run.
>I've never understood when people say something or someone doesn't deserve something they've earned.
You can earn something for lots of reasons, not always the best of reasons. Nixon got the vote, doesn't mean he also deserved it.
>TextMate is successful because lots of people bought it. Who are you to judge what deserves to be successful and what doesn't, especially when history seems to disagree with you?
Actually history seems to agree with me. Did you miss the part when the promised 2 was worked on for 6 years, got nowhere, delivered a disappointing alpha and got dump half-heartedly (as in with GPLv3, with the intention to continue commercial development) on GitHub?
What kind of doublespeak is that? If there's a race, and you're the only one who shows up, you deserve to win, period.
It's not doublespeak, it's common sense. If "you're the only one who shows up" it's not much of a race (or a victory).
I dunno. I think the part where he could afford to spend 6 years working on some pie in the sky product which never released, subsisting entirely on income from TextMate 1 which was minimally enhanced during that time, suggests that history agrees with the "TextMate was very successful" view.
And most importantly, check out Technomancy's emacs starter kit. It even comes with a package that lets Textmate users keep using their familiar keyboard shortcuts if they want.
You're 22 and a half version numbers short. Emacs is more than 30 years old, remember.
Textmate introduced a huge number of features that now show up in other editors. Snippets, command-t, a tightly integrated community-driven extension system.
Textmate was a lightweight editor for lightweight dynamically typed languages. It was the perfect contrast to Eclipse and Java, and was instrumental in changing the status quo for web development (for the better, imho).
No, I haven't worked with vimscript. What does it have to do with anything?
Vim/vi is a brilliant piece of editor software, with a solid concept (an editing language, the dual modes etc). And it is in continuous use for 30+ years now. Does anybody disagree with that?
Now,vimscript being crap, or even it being totally absent, would not change those facts. In fact, most of the decades of vi/m using by hundreds of thousands of programmers have been without vimscript existing at all.
Btw, please don't use the word "troll" out of context. I made an argument. Reply or ignore it, but don't use conversation killing words like "troll".
vim is great, but most of its great features are at the end of a very difficult (but necessary) learning curve. The learning curve for developing plugins is even steeper (and unnecessarily so).
In contrast, most people can pick up and use textmate instantly. They can alter the extensions easily, since everything is done in a sane script environment (python/ruby). They can also share/alter/manage their extensions more easily without causing conflicts. Pathogen/vundle are recent vim plugins that finally make this easier for vimmers.
In a sense, textmate changed the nature of what an editor was about. I think extensions are a large part of an editor's value now. ST2, vim, and others are now following textmate's approach, and I admit, they're doing a better job of it than textmate. However, you still have to give credit to the originator.
You've never used Emacs, have you?
I'm talking about light weight editors that support light weight scripting in a number of different languages. I consider emacs to be more IDE-like. That's admittedly a weak distinction though.
If, on the other hand, these extensions were written in a number of scripting languages rather than Emacs Lisp, I'd need to maintain a like number of scripting language runtimes in each guest OS. Given the amount of code I write in Emacs pales in comparison to the amount of contributed third-party code I use, the fact that I have to write it in Emacs Lisp is a vanishingly small price to pay. Besides that, for lightweight scripting at least, I actually like Emacs Lisp.
I don't speak Ruby so I've never been able to alter much of anything in TextMate beside creating/customizing snippets in my 4 years of heavy usage (user ID in the lower 4 digits).
However, picking up vimscript for my small needs was relatively easy.
One of the key features it had in the early days, that most other OS X editors did not, was a file tree drawer that worked well. From the terminal, you could type "mate ." and you'd have an editor with a file drawer right there. No "project" BS, no modal dialogs to navigate around files.. all very handy for working on file heavy Rails projects.
What TextMate did do was act as a nice gateway drug to Vim and Emacs for many developers and also paved the way for other editors like SublimeText to prosper. Who would have thought that a one-man text editor startup on a single platform could actually be financially viable?
Not sure why this is supposedly so much better than ST2. I've got a Go(lang) bundle installed and a theme that I prefer over my current ST2 theme, but I like the file browser, tabs and menu layout better in ST2.
Clearly a lot of open source projects maintain active development for years/decades. But there aren't many success stories I can think of offhand when it comes to closed source commercial software converting to open source. The only big one that immediately comes to mind is OpenOffice, and it's a pretty unusual case -- it still had an actively-maintained proprietary commercial version developed alongside the open source version for years.
If you as an individual think having your editor be open source is critical, you weren't using TextMate anyway. If you were using TextMate, you're probably willing to pay $50-60 for a "Mac-like experience" with a closed source but extensible editor. That mostly leaves diehard TextMate 1.x users and people who would try a free TextMate for beer rather than speech reasons. I'm dubious as to whether there's a sufficiently talented and motivated subset of that group to seriously further TM's development.
Lastly, I'm not sure there's room for another "industrial strength" open source text editors. It's probably not much of an exaggeration to say that there's Emacs, Vim, jEdit for the weirdos, and Things Only Their Authors Use. And in all of the big cases, those editors are cross-platform. TM isn't and won't be for years, if ever.
* You need a leader, a figure head, to move a project along. But I think Allan Odgaard lost interest.
* Working on feature rich text editor is hard and not sexy. If it was in the long years since TM1.5 an OS project would have catched fire.
* Strong competition by existing editors like ST2 or BBedit or Textwrangler or chocolatapp.com
* Design by committee
TextMate is dead simply because everyone's already written it off. Some people are still on TextMate 1.5 because of the strength of the product, but it's been hemorrhaging users for years, and the TM2 alpha has been underwhelming to say the least.
I mean it's really hard for someone who wasn't around at the time to grok how amazing TextMate was at its release. I first saw it in the Rails demo and was like "what is that, I've got to try it right now". For all the build-up that TM2 had, after that long a wait it needed to pack a serious punch like that to reinvigorate people. Instead it just seemed buggy and slow and not something you'd want to do serious work in.
Maybe some of them could step up and do some pull requests.