Saturday, July 31, 2010

In which I chronicle my descent into vim

Remember when I said, two posts ago, that IDE's were the only sane way to write code?  Well, maybe.  But I'm starting to think it may be a good idea to learn vim or emacs, like really learn them, because:
- sometimes you just need to edit text that's not code.  Maybe more often than code.
- IDE's are still great for autocomplete and stuff, especially in Java.  But the higher-level the language, the less good they get.  Like python or javascript.  When it becomes a cute little syntax checker instead of a big auto-complete auto-import magic-everything Blendtec mixer ("will it refactor? that is the question."), then the overhead starts to kill it.  Speaking of which:
- the overhead in IDE's can be killer.  Especially on a big project.  Especially especially over NX or VNC or Remote Desktop or something.
- I can imagine vim/emacs as a web app (and therefore as the future).  I can't imagine Eclipse in the cloud yet.

- learning keyboard shortcuts for anything makes you instantly more badass

And given that, I'm going for vim, because I like its style: super minimal, instead of trying to do everything.  (if I want it to do that, I'll use an IDE, where ctrl-c is copy and ctrl-s is save.)  The dreaded modes are not really that daunting: you're just always in command mode, and sometimes you can press i to blip into insert mode, but only for a minute and then you escape back out into command mode.  Text reading is more common than inserting text.

So far, I think my favorite quirk is "." (do whatever you just did, again).

No comments:

Post a Comment