Also got hooked on vim, and couldn't thank Textmate's inactivity more for I may have never been pushed in the right direction and discovered the wonderful efficiency of the vim paradigm.
If I were to use Textmate now, it would need to be just a faster vim, with a less clunky vimscript, and it'd need to embed in a terminal, as vim made it possible for me to do everything on the command line and truly use working directories as my sole division between contextual workspaces.
Oh, I'm aware it does. I was implying that as much as I like all the little, nice touches in Sublime Text 2 I still wouldn't use it without vi bindings. I started using it as my main editor after the last update which introduced vintage mode. :)
Warning, it doesn't always behave like vi. One thing I found was visual mode and pull up, pulls more than just the selected line (seems to be the entire block). Shift-V, j, Shift-J for those who want to confirm.
MacVim is great for that (if, of course, you are on a mac). It has all the great vi stuff along with the core OS style commands that everyone is familiar with. I believe gVim on Windows does the same but I'm not positive on that.
I was kind of in the same boat; the UI is there, but the way to open a folder (compared to vim) is semi non-obvious. Project > Add Folder to Project.
Once you do that, you get the sidebar view typical of textmate, and the extremely handy Ctrl-(or Command, depending on platform)-P. Slap that combo, start typing in a file, and it'll filter out the one you want from within the project. It makes navigating around for snap edits very quick :).
TextMate still has the best find-in-project functionality. Sublime Text 2 doesn't compare if you want to rename something throughout the app.
As for vim, it's nice when you're in a console, but I don't think it's as pleasant to use.
The delay with TextMate has been rather absurd, though. Version 1 goes largely unmaintained (still no full-screen functionality for Lion). The last update was in November of 2010. Before then it was November of 2009.
Similarly, Ack.vim is indispensable, providing errorlist integration with `ack`. Between that and your project plugin of choice, or just a terminal tab per project, you get something much nicer than anything in TextMate (because of errorlist workflow).
Yes, you have to exclude a whole lot. You also need to exclude binary files (like database dumps and tarballs) that you have lying around in your project directory, because once TM accesses those files it will read everything into memory, and it seems particularly bad at doing that.
Another problem with TM's built-in "find in project" is that it's not incremental. AckMate will list matches as it finds them, whereas TM will only return results once it's read everything.
Please vote for the "Search & replace across projects/directories" feature suggestion for Sublime Text 2 (http://sublimetext.userecho.com/topic/21604-search-replace-a...) if you miss the feature. The developer(s) seem to be implementing lots of new features from while ST2 is in beta and a global replace would be great.
Both PeepOpen and CommandT for vim offer superior file switching functionality (by fixing a problem with Textmate's version whereby it does not take the directory into consideration, which can really help narrow down a search).
My experience with ackmate has entirely not been seamless.
While it is vastly preferable to the default cmd+shift+s (cause it doesn't beachball TM for 30 min), you can only Ack in project when you have a file open, and the result list definitely does not play nice with many of the color schemes available for TM.
ack is a really great search tool in general (and one that I use constantly now that I have "discovered" it)... I had no idea there was an integration of it into TM. I'll def. be taking a look at this, thanks!
BBEdit's find functionality is _much_ better and doesn't require you to set up annoying project files. (Needless to say, BBedit is also well-supported.)
Textmate was an inspiring piece of software when it first came out, but it barely runs under Lion (I fired it up to verify that find-in-project was as I remember, and it crashed on the way out), and still has one-character-at-a-time undo/redo which is unbearable.
Still, Textmate (and ST2 and BBEdit) is nice in that you don't have to go google "Quit Textmate" or read a man page or ask someone on IRC to figure out how to quit the damn program. Other features, like Filter Through Command, are easily discoverable via the menu system. Likewise, configuration options are easily discoverable through the Preferences window.
I may be a programmer, but that doesn't mean I want to learn a new language just to use my text editor.
That doesn't seem to be true at all. I scroll in vim on my thinkpad all the time, the setup of which makes it very simple to scroll (I have that mapped to my entire touchpad) without moving the cursor (which is only done with the clit-mouse).
> I may be a programmer, but that doesn't mean I want to learn a new language just to use my text editor.
You don't need to program emacs to use it to edit source code and interoperate with revision control and so on. A lot of other emacs hackers have done all that for you, in many cases upwards of 20 years ago.
> Likewise, configuration options are easily discoverable through the Preferences window.
Believe it or not, modern emacs has this. It's accessible the menu at the top of the window (or, in Mac-land, screen), even.
> Other features, like Filter Through Command, are easily discoverable via the menu system.
Again, odd as it may seem, emacs has this as well these days.
> you don't have to go google "Quit Textmate"
And emacs can be quit through the menu. You know, the one at the top of the window or screen. Unless you started it in a terminal window or some other text-only context, in which case you damned well got what you asked for.
Yeah, the only problem is that it has a nasty habit of devouring your RAM when used. On my job's Rails project, doing a single find-in-project results in 1.6GB RAM bloat. It never goes higher than that, but it's unacceptable. AND it's not performed in a separate thread! Though it's hard to beat its command-T behavior (and yes, Vim plugin - TM has had it for years).
As to unmaintained, there are bugfixes occasionally, but yes, no feature changes for quite a while. But that still makes it by far one of the most solid applications I've ever used - everything but my terminal application crashes more often than TextMate.
All that said, ack/grep all the way. Faster, with/without context, and doesn't leave bloat around.
I still find the search and replace functionality in ST2 awkward, especially across multiple files. It's a solved problem in many other text editors, so I wonder why ST decided to implement it that way. I hope it's just a temporary beta thing.
One way you could streamline your rename/relocate process in Sublime Text is to install DTerm. It's basically an in program keyboard shortcut that gives you a command line interface for the current directory that your program is accessing.
So.. if I'm working with index.html and need it to be index.php, all I need to do is: cmd+ctrl+return, then: mv index.html index.php
What? TextMate has great file finding functionality, but the find in project is certainly a weak point… It grinds to a hault on HDDs with large projects. It's alright with an SSD, but I wouldn't say it any better than using vim's Ack plugin.
I think everything has been said that can be said about the ridiculously-long release cycle of textmate, but I still don't get what is so great about sublime. The only thing it seems to have over textmate is split panels and the code overview (which looks cool but has never been very practical, at least for me). Am I missing something?
Go to anything allows you to go to methods/functions, do a find in file and go to the line in a file. For example, if I know I want the getWidgets method in Widgets_Controller, I can type Widgets Con[stop typing when the right file is at the top]@getWidgets. To find, replace the @ with a #, and to go to a line, replace the @/# with a :.
I don't if TextMate does this or not, to be honest.
Mostly. I patched that package to support global search (show all tags across all files that roughly match this string) and I fixed a number of bugs where file paths didn't get normalized correctly. And I refactored the indexing logic (moved it to the crontab) so all libraries I use also get indexed properly.
Since I use it for Python/Django/CSS/JS work I also had to add some rules to ~/.ctags to correctly identify JS and CSS declarations.
I'll believe it when I see it. Hopefully it doesn't turn out like Duke Nukem Forever did. Also, I really sincerely hope that they'll open source the 1.x version, although if they do ever release 2.0 it might make that more unlikely.
Mine started with a bunch of IDEs like MSVC, Anjuta, Eclipse, Winefish and Bluefish, interspersed with short bursts of Vim and Emacs every now and then, but that didn't stick. I used anything and everything, really. Those days were spent in a plethora of activities ranging from LaTeX to PHP to Matlab to C++. But again, nothing stuck, really.
Then Textmate. My first big text editor that I invested time in. Textmate proved to be immensely powerful for LaTeX. Matlab worked fine, too. C++ less so, but manageable.
Then XCode, which worked great for Obj-C and Cocoa. Then MSVC again, as required by my job. Then I added Visual Assist X to make C/C++ programming bearable, then added ViEmu to fight off boredom.
But ViEmu led me down a slippery slope. When I had to leave MSVC for ventures into Ruby, Python, Lua, XML, JSON and Qt I naturally started gravitating towards Vim. And during all those ventures, I continuously improved my cross language vimming skills way beyond anything MSVC had to offer.
When I finally came back to MSVC I found it lacking. My fingers now walked and breathed Vim, and every feature of Vim that ViEmu did not implement was crippling my ability to code. Thus I looked into extending Vim with the IDE features I missed.
This is certainly not the end of the journey, but Vim has proved to be an amazingly powerful tool. It is the first editor I actively look forward to using. Sometimes I get this exhilarating sensation of power when slicing and dicing the code with Vim, fingers flying on the keyboard and Vim moving and changing code as if by magic.
That is bliss. Thank you Textmate for getting me started. Thank you ViEmu for showing me the way. Thank you Vim for liberating me!
I like BBEdit, but I think its age is a weakness. Until version 10, BBEdit felt and looked like old software with many bits and pieces stuck on over time with little attention paid to how they fit together.
I started using BB Edit way back in the day, and at the time the price was pretty reasonable, like $50 or so. I asked another developer once why he preferred TextMate to BB Edit and he said that BB Edit was too expensive. I went to look and to my shock the price had gone up to over $100. I think Bare Bones pretty effectively locked out a whole group of younger programmers, despite offering the free TextWrangler edition.
Notepad -> Dreamweaver -> Netbeans -> Eclipse -> SubEthaEdit -> TextMate -> Netbeans -> emacs (lasted all of a week) -> vim/MacVim
In that list is a switch from one platform to another (after Eclipse).
Now, would it be nice to have TextMate 2.0? Yes, absolutely. Do I think I will seriously start working with it? It really depends on the features that it gives me, I am so used to vim now that I am not sure I could live without it.
I think I went something like: Notepad -> Frontpage Express -> PHPEdit -> Notepad++ -> SciTE -> Notepad2 -> PSPad -> Zend Studio -> e Text Editor -> Aptana Studio 2 -> Komodo -> Aptana Studio 3 -> Sublime Text 2/vim
But I've probably missed some out. You can sort of see me slowly progressing from PHP to Python depending on the work I'm getting (also Windows to Linux).
The experimental renderer in MacVim creates a much more fluid editing experience than Vim, I find. Other than that, I think the only thing I use from time to time that is MacVim-specific is command-S, which aliases nicely to :w or to a file browser where you can enter a file name if the file is unnamed.
About MacVim vs vim and 'color scheme support' and 'solarize': Actually the issue is with Terminal.app which has some weird setup where changing the background is either impossible or always looks horrible.
Also it's particularly difficult to get Solarized setup in a terminal using 256 colors rather than manually resetting the 16 colors of your terminal to custom values.
If you have a sane terminal, vim works fine with 256 color support. A lot of people on OSX use iTerm 2 which I hear has fine 256 color support. I just use gnome-terminal on Linux that's had support forever and dropped solarized since the maintainer is not interested in making any setup work besides gVim/MacVim it seems.
Happy MacVim user here, but for me replacing TextMate with MacVim led me to replace e-texteditor with gVim when I'm on Windows. I have a shared vimrc I use on ubuntu server too, so it's really all vim. Maybe that's what minikomi meant.
As an aside, I wish someone would write a Windows version of vim as good as MacVim. (Yes, I also wish I was talented enough to do it myself.)
Visual Studio (C++, VB and C#) -> Eclipse (Java) -> Zend Studio (PHP from here on) -> EclipsePHP -> Aptana -> Komodo Edit -> Netbeans -> Emacs -> TextMate -> Visual Studio (C#) -> Sublime Text 2 (back to PHP :(, though glad to be using ST2)
Wonder how that works out. It's not just that people are waiting quite a while for an upgrade, it's also about regaining trust that once you get your beta (or even 2.0 final) out, the next pause won't be as long…
Given that 2.0 is labelled as a free upgrade to 1.x users and that the market for TextMate is already saturated (TM users have probably already bought a license and given how poorly TM has been supported, I doubt there are many people switching to TM), I wonder how long it'll be until a paid 2.1/3.0 ships with critical bug fixes and the features 2.0 left out in order to get it out the door.
I've played with Vicoapp but it just didn't work for me, for some reason there was just too much of a disconnect with commands I was used to in vim not working as expected. I haven't tried it lately, might have to give it another go.
I recently stumbled across the RopeMate bundle for TM. For Python it gives you intellisense/code-sense style autocompletion, and also a nifty 'refactor' command (ie. pull the selected code out into a new function which accepts any referenced variables as arguments), replacing the existing code with a call to the new function.
I've always just used Coda since I got a Mac 5 years ago. I haven't had any problems, so I haven't been compelled to switch. However, I keep hearing people talking about Textmate and Sublime. Why should I switch (I've been holding out for Coda 2, but I'm starting to lose hope)?
I think a healthy amount of skepticism is good. Just because TextMate was initially good doesn't mean that TextMate 2 will meet everyone's expectations. And like it or not, TextMate 2 will have to live up to everyone's expectations... you can't pre-announce a new version three years in advance and expect everyone to ignore their own expectations.
And every additional year makes your point even more relevant — I can understand, even if it is just subconsciously, that one cannot fit all the things I expect in a 6 or 12 month release cycle. I cannot accept the same for a 60 month cycle, even though I do know that that’s not how software development works (cf. mythical man month, etc.)
I'll never understand why everyone loves TextMate so much. I mean, its a nice text editor but there are much better ones out there. Maybe I'm inexperienced or maybe I work far differently than TextMate users but Espresso is where it's at for me. Actually now there's Chocolat (http://chocolatapp.com). The alpha is shedding bugs quickly and it's shaping up to potentially be my favorite text editor of all time.
Everyone I work with is a former textmate user. Seriously, at least a couple dozen people. I know maybe 1 or 2 who are dumb/crazy/lazy enough to keep using it. Not a good retention rate.
It was good software, and had great longterm potential. But Allan's personality destroyed it (he's an artist, not a coder). I'm sure there's a great story behind how the project fell into the toilet, I'm looking forward to the book.
Why are people dumb/crazy/lazy for continuing to use it? Some of use just want a clean text editor with syntax highlighting and a few other features. Some of us also do not follow Internet drama and know nothing about Allan's personality.