Quote:
Originally Posted by borked
Old school is admirable and all, but you're the first person I've heard of that develops/writes in vi/nano.
|
I use vi quite frequently. Vi has code completion just like an IDE has as well. Most people don't know about it though. I used GUI's before vi, I just found vi easier to work with once I went through the learning curve. Of course I also type on a dvorak keyboard for most English based text (emails and IM) ;)
Once you master vi you can get things done so much faster. The problem is it can take you a week to get to the proficiency level of notepad and another month before you start seeing any real benefit to using it. A lot of GUI's force you to switch between keyboard and mouse. I keep my hand on the keyboard the entire time and don't even move my hand to the arrow keys. Moving your hand from home row to the arrows takes away from thinking power.
vi doesn't really make you productive until you can edit code without using the arrow keys (h,j,k,l) and can jump around the file. In a GUI you would have to click at the spot or you'd have to hold down the key until you get to the correct cursor position. When you get good at vi you can literally jump to where you want in fractions of a second (even if it is 40 lines down and 8 tokens in).
Still GUI's have their uses. They are good if you need to jump between multiple files and be taken right to the function. Of course, vi does this a well but I haven't spent the time to learn that part of it yet.
I also use TextMate, Emacs (when working in interactive REPL-based languages), and occasionally GUI's. It all depends on the task and what I need to do at that moment. If I need a lot of keyboard macro's I'll use textmate. If I need to just do general coding or quick one off repetitions I'll use vi. If I need to jump around code a lot from file to file I'll use a GUI. It's all about the right tool at the right time. I'll edit the same file in multiple editors sometimes.