

Eclipse to Textmate: An IDEological Change - johns
http://particletree.com/features/eclipse-to-textmate-an-ideological-change/

======
allertonm
TextMate is a great editor, but I do find that it's support for any given
language lacks the depth you might find in IDEs, even multi-language IDEs.

So I find myself wanting to use TM, because as a pure editor it is very nice -
but for example find that the Ruby specific features in Netbeans* are such
huge timesavers that it is impossible to justify sticking with TM. I found the
same to be true with Objective-C and Xcode as well.

(*I have been no fan of NB in the past, and there are many things about it
that suck, but they have done an amazing job with Ruby, nothing else I've seen
comes close.)

That said, whatever you do, do NOT tie your development/build process to an
IDE. You need to allow every developer to use the tools they prefer, and you
want the freedom to be able to switch these tools quickly.

~~~
jcromartie
I agree that Xcode beats TextMate in several areas when it comes to C and
Objective-C (mainly the CodeSense completion). What I find compelling,
however, is the extensibility of TextMate. I'm fairly certain that it is
possible to build something along the lines of CodeSense as a TextMate bundle,
if it does not already exist. I've been really falling behind when it comes to
coding in my spare time (something I'm ashamed of), so I haven't kept up with
the latest TM bundles.

~~~
allertonm
If you get the latest Objective-C bundle from TextMate's SVN it does a
reasonable job of codesense completion - but XCode is still a little better at
it. The other thing that drives me nuts in TM with Obj-C is that building is
an order of magnitude slower than doing it from XCode directly.

------
BrandonM
I find it funny (from the perspective of a vim user) that all of these people
who have been using heavyweight IDEs and scoffing at us with our "basic"
editors are slowly coming our way. I'm not sure exactly whom I mean by "all of
these people," but there are certainly a lot of Mac users and Java programmers
who are singing the praises of lightweight editors like TextMate when vim and
emacs have been around for decades.

On the topic of vim, I highly recommend it for those who haven't tried it out.
Sit me in front of vim and a unix terminal and I can quickly do any
refactoring task that needs done. I have used vim macros to turn an HTML table
into a C array in a few seconds. Seriously, once you _get_ a powerful editor,
it is so flexible and applicable that you will never want to be without it.
Navigating text in an editor without vim's movement commands (W, w, B, b, {,
}, *, #, and so many more) is simply painful.

~~~
Tichy
Any good introductions to vim? I did the odd editing with vim with a cheat
sheet side by side, but I never heard about the "cool features" before reading
Hacker News.

~~~
BrandonM
I used <http://jmcpherson.org/editing.html> as well as a cheat sheet. There's
also <http://vim.org/tips/> which seems to come up a lot whenever I'm
searching for specific functionality. Other than that, simply immerse yourself
in vim and deal with the pain for no more than a week before you'll find that
you're already becoming more efficient.

Some less-commonly-used-but-awesome features:

    
    
      C-X C-F in insert mode: complete file names
      C-X C-L in insert mode: complete entire lines of code
      C-N, C-P in insert mode: complete word forward, previous
      v (V) in edit mode: entire visual mode (visual line)
      gq in visual mode: rewrap selection
      >> in edit/visual mode: indent current line/selection
      gg=G in edit mode: reformat indentation of entire file
      @@ in edit mode: repeat last keyboard macro
    

There's a lot I've left out (obviously), but that's a little teaser. One
paradigm I use a lot is when I need to change a variable name... this is very
easy. While on the variable itself, press * to search forward for it. Then
type cw to erase the word and type in the replacement, followed by ESCAPE (of
course). From then on, you can use n to find the next occurrence and then type
. to change the name, because . repeats the last command.

Oh, and one last thing. Remap ESCAPE to CAPS LOCK, or get used to using C-[.
Both are more convenient than reaching for the top corner; CAPS LOCK is
superior in my experience, but it will kill you when you're on a non-mapped
system.

~~~
BrandonM
One more good link: <http://www.viemu.com/a-why-vi-vim.html>

------
asnyder
If only there was a real PC equivalent to TextMate. I find myself using
eclipse due to the Remote Systems Plugin. Unfortunately, Eclipse is insanely
buggy and has cost me countless hours of development time. One issue that
keeps cropping up from time to time is that when I think I"m saving my file,
it actually doesn't, and then I spend the next few minutes trying to figure
out what's going on.

From time to time I look for alternatives, and sometimes find myself back in
Notepad++. I guess that's the punishment I get for liking my ThinkPad
hardware.

~~~
nanexcool
How about installing OS X on your ThinkPad? Which model do you have?

~~~
asnyder
ThinkPad T61p, I couldn't find any decent hackintosh post on that. I wouldn't
mind running it in some VM either.

~~~
astine
I have a T61p. I use Emacs on it. TM may be easier to use, but my .emacs file
is cross platform and is just a malleable if not more. Perhaps it could make a
decent substitute?

~~~
ajross
TextMate is easier to _learn_. Once you know emacs or vim, there really aren't
any tools that are more productive to use. But the trick is that you have to
_really_ know the tools. It's not enough to fire it up and try it for a while.
You need to use it full time (for everything: mail, documentation, notes,
poetry -- editors aren't just for code) for a good while. Get the keystrokes
into your fingers. Emacs users should think seriously about remapping Ctrl to
the left of "A" where it was when the bindings were designed. Keep your hands
off the mouse as much as possible. Learn the various tools and modes if you
like, but above all get used to the idea of living in your editor.

What you'll find is that the modern GUI mechanisms for interacting with code
are just terribly awkward. You'll start using keystrokes for other stuff too
(like Alt-Tabbing to your command line), and everything will fall into place.
Eventually, you'll start writing rants like this one trying to convince all
the young'uns about how wrong they are about what they want in their tools.

~~~
msg
I guess it's a question of how much you want to invest in your tools. Learning
vi and emacs is like a lifetime of compound interest.

I agree that if you just want to code something yesterday, you probably won't
reach for these most powerful tools. I'd say that if you're committed to
programming over the long-term, though, you'd be hamstringing yourself by not
starting on them now.

Long story short, I started Emacs a few months ago and I'm never going back.

------
nradov
So in other words, if you have an extensible editor you can keep extending it
until you've built an IDE.

------
babul
For java development I actually like IntelliJ IDEA
(<http://www.jetbrains.com/idea/>) more than Eclipse as in many ways it is
much more productive and puts the fun back in programming.

Its not free, but you get what you pay for.

------
tlrobinson
I'm a heavy TextMate user but had no idea about these awesome plugins.
Excellent.

~~~
jamongkad
Speaking of Mac only editor's, I cannot wait to try Coda from Panic.

