![]() You can get good functionality out of vim by learning the meanings of only 16 keys: ijkdbw9:q!%s/nN Esc. Fortunately, at least for some situations, there's ways to get around this.Īgain, it's addictive, and although you won't lose any productivity from actually using Vim, you will waste hours searching for good tips to make your Vim experience even better, and reading the Vim tag on Stack Overflow. It's addictive, and you'll find yourself wishing you could use Vim commands in all your computing, and cursing whenever you can't. There's also two good reasons not to learn Vim: I actively enjoy it-which is pretty ridiculous, when you think about it. It's fun! Editing text is like a game to me now. I was up to the level where I could use Vim at work without taking any noticeable productivity hit within less than a week's worth of lunchtimes. Run through the Vim tutor once ( vimtutor at a shell, or in Windows run it from the Vim folder in the Start Menu), and you'll already be well on your way to competence, and it's all downhill from there. It's not half as much effort as you think it's going to be. vi is at once ubiquitous and incredibly powerful, and by learning it once, you gain the ability to exercise that power on pretty much any computer that has a keyboard.Īnd these are the lesser known reasons to learn Vim:.There's one obvious reason that anyone who uses Vi(m) will tell you, and two others that people never seem to mention. You can use vim-style controls in the less(1) command, on Slashdot, on gmail, etc. For example, you can use Emacs-style controls in any text input field in Mac OS, in most Unix shells, in Eclipse, etc. If you do nothing else, learn the basic navigation controls for both vim and Emacs since they pop up all over the place. For example, in vim, if you're manually performing every step in a multi-step process or if you're using the arrow keys or the mouse then there's probably a better way to do it. The trick to switching to any of these is to force yourself to use them the way they were intended. ![]() I'm personally a very happy TextMate user now after years of using vim/gvim. Emacs is the most common example, of course, and it's much more than just an advanced text editor if you really dig into it. There are plenty of alternatives, however. It's also usually very fast and lightweight even when editing huge files. Usually vim's killer features are considered: A) that it's available on pretty much every Unix you'll ever encounter and B) your fingers very rarely have to leave the home row, which means you'll be able to edit text very, very quickly. This is trivial in A Serious Text Editor, but ridiculously cumbersome otherwise. For example, consider adding the same bit of text to the end of every line. The reason is that these editors are highly optimized to perform the kinds of tasks that you will be doing a lot. Which Serious Text Editor you learn is not terribly important and is largely dependent on the types of environments you expect to be editing in. If you're a programmer who edits a lot of text, then it's important to learn an A Serious Text Editor. I'd like to hear from people who have learnt it and if it ends up being one of those things you cannot live without.Īt work, I use VS2008, C# and R#, which together make editing code a lot faster and easier than ever, but even so I think I could enjoy not having to use the mouse at all. I've always considered learning VIM but the amount of time needed to master it has always made me want to step back. Now imagine this same scenario but on a laptop. and it gets worse when I want to move further - I end up using the mouse. Things like a simple copy & paste from a different line (or even the same line), or moving 1 or 2 lines up or down from the current position require too much typing or involve the use of the arrow keys. If there's something I've never gotten used to during all this time, it's these annoying and almost unconscious constant micro-interruptions I experience while coding, due to some of the most common code editing tasks. It is not currently accepting new answers or interactions.Īs a programmer I spend a lot of hours at the keyboard and I've been doing it for the last 12 years, more or less. This question and its answers are locked because the question is off-topic but has historical significance.
0 Comments
Leave a Reply. |