Textmate vs. MacVim

Greg Donald wrote:

NetBeans is great where an IDE is wanted -- which it isn't for Rails development.

Learn the API, then you won't need an IDE.

I don't really agree there: for environments where I *do* benefit from IDEs (i.e. not Rails), code completion is not the major benefit. Automating repetitive tasks (such as complex builds), switching between related files, and Swing/Cocoa GUI construction are among the major advantages of IDEs for me.

(Then again, that may be because I *do* learn the API in question...)

-- Greg Donald destiney.com | gregdonald.com

Best,

I don't really agree there: for environments where I *do* benefit from IDEs (i.e. not Rails), code completion is not the major benefit. Automating repetitive tasks (such as complex builds), switching between related files,

C-x <arrow> to move to the next or previous buffer in Emacs. No IDE required, just a keyboard.

and Swing/Cocoa GUI construction are among the major advantages of IDEs for me.

(Then again, that may be because I *do* learn the API in question...)

It's been my experience programmers *cough* who require an IDE are usually the most useless people to have on the team.

I'd take an Emacs loving, API-knowing coder over a "I need Netbeans 'cause I need code completion" wanna-be coder any day of the week.

Because that's what Ruby, Rails and OSS is about: elitism.

No one in this thread mentioned anything about "i needz kode compleeshun" - you're jumping into prejudicial, and pejorative rants.

Keeping system resource usage low isn't elitism, it's just being a good computer scientist.

I'd rather use Emacs or Vim than waste half my machine's memory on some bloated IDE, all because of laziness not wanting to learn the API. Either you're a programmer who knows the API you're working with, or you're punching a time clock.

I don't know what you are getting so excited about, no-one here will disagree with you on needing to know the API inside out. That has nothing to do with what sort of development environment each individual is happiest using, which is purely a matter of personal preference. I like jEdit, Marnen likes Komodo Edit, others like the Netbeans environment, you like Emacs and Vim. So be it.

Colin

I've been working diligently to 'really try' to use MacVim for my Rails stuff. For those using vim for Rails, I assume you are using some flavor of FuzzyFinder... how do you get the results to look nice? For example, if I want to look at new.haml.html files in multiple directories but I just want to see the available ones by typing “new” here is how it looks in fuzzyfinder:

http://dl.dropbox.com/u/86998/vim-fuzzy.png

and here is how much nicer it looks in TextMate – notice the simple single name ‘type’ it belongs to after the file name?

http://dl.dropbox.com/u/86998/textmate.png

That's the big problem I'm having with MacVim for Rails.. it just ends up not polished enough. For example I'm using the following plugins: rails plugin, NerdTree, FuzzyFinderTextMate, BufferWipe, and bufmru, and things are just awkward sometimes. For example if I'm in the NerdTree pane and I then opt to use FuzzyFinder to find a file, the file will end up opening in the nerdtree window - not good. You have to remember to switch back to your main window first before using fuzzyfinder.

I might just stick to IDEA (ruby plugin - same thing as RubyMine). I get excellent vim navigation plus a few other niceties (refactoring, little hints you might have made a typo on a method call, etc), and since I'm apparently not as low on RAM as some of you guys, I'm not afraid to have it open:)

That's the big problem I'm having with MacVim for Rails.. it just ends up not polished enough. For example I'm using the following plugins: rails plugin, NerdTree, FuzzyFinderTextMate, BufferWipe, and bufmru, and things are just awkward sometimes. For example if I'm in the NerdTree pane and I then opt to use FuzzyFinder to find a file, the file will end up opening in the nerdtree window - not good. You have to remember to switch back to your main window first before using fuzzyfinder.

Try Command-T: http://www.vim.org/scripts/script.php?script_id=3025

Regards, Rimantas

Much better thanks! (Once I figured out it had to be compiled against ruby 1.8.7 :slight_smile: