Is Vim worth learning?

Soldato
Joined
20 Oct 2002
Posts
5,573
Im thinking of dabling in linux soon and due to the learning curve was wondering if Vim is worth the effort?

I will probably be mostly using if for editing C source code.

Anyone use it regularly, does it really help your workflow ?
 
I'm very crap with emacs, but still wouldn't dream of going back to nano or gedit from it. It's just far better. I've used it for writing some basic things in c, and quite a lot of editing matlab code.

I'm fairly sure vim ~= emacs for a new user, but I would certainly recommend trying one of them. Ideally one should probably try both, but I'm yet to look at vim.

"C in a nutshell" is an excellent book if you're starting to learn C, and could plausibly be useful a few years in too.
 
I would recommend attempting to learn vim, I think it encourages a new way of thinking and helps shake the shackles of windows. Print off a cheat sheet from somewhere, pin it up near your computer and just have a go at using it everytime you need to edit a file. I would start with the terminal version then as you gain confidence move to gVim if you really must. The learning curve isn't actually that steep, one of the few things i've read though that really helped me understand the concept more was that, when you're in 'insert' mode it's like typing in microsoft word, when your moving around and using shortcuts to change the file it's like using the mouse in word. It's seems a pretty obvious comment but it really helped me get my head round not having it in 'insert' mode 24/7, because you don't type while you're using the mouse, yes?
 
Learning Vim has really been a revelation for me in terms of productivity. It takes quite a while to truly get used to it (and I still have a lot to learn). In fact, I find it quite awkward to use "conventional" text editors now that I've become accustomed to Vim (I'd say this is a good thing though, since I'm so much more productive when I am using it :p).

One of Vim's great advantages is that it'll run quite happily in a terminal, which means you can run it remotely over SSH. Being able to edit remote code in a pinch from my Android phone wherever I am, with full syntax highlighting, features, and all my customizations is quite awesome :cool:

See this answer on Stack Overflow for a comprehensive demonstration of how awesome Vim is. The footnote kind of sums it up:

A sobering thought
I've only scratched to surface of vi's power and none of what I've described here is even part of the "improvements" for which vim is named! All of what I've described here should work on any old copy of vi from 20 or 30 years ago.

There are people who have used considerably more of vi's power than I ever will.
 
Last edited:
I think it's worth learning because it's so powerful and is on almost all machines.

I use nano (or pico) myself as I've only just started really, but vi is on my "to learn" list.
 
Vim is awesome. But it can't be explained, only experienced :)


It can take as little as 15-30 mins to learn vim enough to operate it as a 'notepad' replacement. Which is enough to use it to create and edit files etc. The cool thing is the commands can all be chained or stacked so creating seemingly complex commands is no different from doing simple commands.

Simply using it and looking up commands as needed will increase your knowledge and productivity 100 fold over time.

run through vimtutor firstly to get the basics nailed.
 
Vi is a fantastic editor, moreso once you enable syntax highlighting :)

:syntax on

Well worth learning!
 
Not quite vim, but many years ago I asked one of the Unix admins at work whether it was worth learning vi. His answer stuck with me; every unix like system ever installed will have vi. So you'll be able to view and edit files on any system without having to learn a new editor.
 
Back
Top Bottom