PinkyThePig continues on the same line as the above answer, but adds some practical examples:. The user butthackerz also delves into practical examples to show how powerful Vim can be:. As we can see, there are more than enough reasons for one to learn Vim.
But there's also some downsides. I'm leaving them out of this article because this is supposed to be a reference article, but feel free to comment with what is less than ideal in Vim. If you like what you are reading, please consider buying us a coffee or 2 as a token of appreciation.
We are thankful for your never ending support. I have NEVER, in my nearly 25 years of web development and server administration, seen a way vi can be better than something simple like nano. I guess if you are a super power user nerd who wants to customize your editor of thousands of IT people I have worked with NONE of them has bothered to do this it can be helpful. If editing massively large files it could be helpful but I just use easier tools like sed , awk and grep. And fun? Are you insane?
The last thing I want to do is have to spend 6 months learning all the absurd finger acrobatics required to do something as simple as change a typo. Personally I think all the vi users love it only because they are trying to justify all the time they sank into learning the over-engineered tool and because they like the elitist feeling they get from knowing something massively complex even though that complexity has no practical value.
Personally I find it sad that this is the best you can do in providing a top 10 reasons to use the tool. Vi or Vim is definitely useful on servers. Basically almost every distro has vi or vim preinstalled. A last it can be found in default repositories. It is small and powerful but definitely not simple to use and learn. The command structure of Vim has not changed since the editor was created. It is still as esoteric and byzantine. Many thanks for sharing your thoughts with us.
When I try to print the page on my tablet using Chrome browser the stupid sliding bar on the side overwrites the top of each page. Please have something added to turn it off!!! Have a question or suggestion? Please leave a comment to start the discussion. I've noticed that things that didn't use to bother me, like reaching for the arrow keys, now feel wrong and too much effort. It's definitely decreased my hand motion and usage of the mouse, which is good for both ergonomics and productivity.
It depends what you want to do with VIM. It doesn't make sense to learn it only because many people cannot live without it. You could always count on it -- even if the machine is not yours that from the customer.
Now I program in C and mostly work on windows environment. Evaluate if you really need VIM and if it supports you in your "flow of work". Try it out. Play with it. If you think you need it, stick to it In my case IntelliJ idea is very good at the task, because I can code for hours without grabbing the mouse. I don't know how much shortcuts does VS has, but if they are as discoverable as Eclipse, I think you are in trouble go for vi. But if you don't know any other command-line editors very well, it's worth learning it.
I used to use Vim for editing and VS Editor for debugging. This probably seems a bit crazy, but I found the Vi paradigm macros, home key based editing etc such a boost to my productivity, that editing in VS was paintful. Thanks to Viemu , I don't even have to do the switching any more. It is not the perfect solution yet code completion is sometimes not as elegant as in native vim and the macro recording isn't perfect , but it is much better than switching back and forth constantly.
The learning curve for Vim is probably exaggerated. I think once you get into it, it is pretty intuitive. My job forced me to pick up vim and it has quickly become second nature. Now my complaints are about IDE's that do not have vim emulation or plugins. I do notice that the esc key has become my enemy outside of vim.
Firstly good vi m knowledge will save you the time you have to hustle to do emergency editing of config files on a server under seige. It can hold up on a laggy ssh connection. Admin stuff aside vim's input method will be your best defence against carpal tunnel if you use it effectively with an ergonomic keyboard. The best way to see the point of vim is to start a casual project at home, unplug your mouse and tape over your arrow keys.
I am maintaining a very big linux project on the remote computer. I've been working there for 3 years. And I set my vim just for this project. And still tweaking. Now I can do any thing from the Vim: source control, sql, debug, compile, browsing - really fast browsing over 1Gb source code. Visual Studio or Eclipse couldn't handle all of this.
I'd say vim is definitely worth learning. I picked it up last summer, and it is now my editor of choice for just about everything java is a stretch, but doable when I don't need extensive analysis support. As everyone has already affirmed, it is a wonderfully efficient tool. For what it's worth, I only learned a fairly small subset of vim's features which took a day or two from a graphical tutorial , and a few odds and ends from here long read , and the search and replace functionality, and I was hooked.
I've learned things since then, but at my leisure. I'd say the learning curve flattens out at this point, but then, I was using it pretty heavily and was surrounded by others who were, too. I'm in the same situation as you, and as a beginner to Vim I originally found it a little daunting - the learning curve seems steep. From what I've learned in just a few hours I'm already feeling like I won't be able to live without it. Here are a few links that I've found for useful Vim screencasts to show you what it's capable of.
A good bit of advice that Bram Moolenaar benevolent dictator of Vim gave in that last link is that it would be inefficient to try to learn every single command and function, just figure out what it is that you're doing that isn't working very well, look for a way to make it more efficient and then make it a habit. Even on Windows if you do have install capabilities 'Vim' is free and easy to install. As opposed to investing your learning curve purely in something like UltraEdit, which although an excellent editor might not be available for you all the time Learning vi can set you up for learning other tools like 'sed', and regex in general: stuff that is generally transferable.
I think it's definitely worth the time and effort to learn vim. Don't get intimidated by all the fancy features of vim. Once you've used it enough, you'll figure out which commands you use the most, and you'll figure out which things you can forget about. The amazing ubiquity of Vim, and the even more amazing ubiquity of Vi-clones in general, on Unix systems alone is enough to make it worth learning.
Besides that, the whole Vi-style thinking is something that I really think has made me a bit more productive. For a person not used to modes such as the command mode and insert mode, it seems a bit excessive to have to enter a mode just to insert text.
But, when one has been using Vim for a few months, and has learned quite a few tips and tricks, Vim seems to be an asset that seems to be worth it. Of course, the Emacs crowd says the same thing regarding Emacs-style thinking, but I gave up on learning Emacs because Vim was simpler and did the job for me.
I learned to like vi after watching someone who was very skilled with it navigate around to make edits at an insanely fast clip.
You really can code quickly with it. Another reason I like it is that sometimes I find that mousing around in an IDE really hurts my hands after a while and vi provides a nice change. As others have mentioned it's also almost always available on unix systems and works well even over lousy connections. One thing that I haven't seen mentioned is that knowing vi has the added benefit of "geek cred" in some circles.
I can think of at least a few people who chuckle when they see a new programmer fire up nedit to make some changes to a file. Don't be scared off by the number of commands, I've not met anyone who used more than a couple dozen at most. I find it indispensable, because when I'm thinking about code I'm thinking about text, moving to thinking about mice just messes me up.
The big tricks, I think, are to learn it a little at a time, and don't be hesitant to play around - the undo features is great for exploring its behaviors. I was happy at my textpad and ecplise world until i had to start working with servers running under linux.
Remote scripting and set up of config files was needed! You might want to learn vim because you might not be happy with the editors you're already using. You might want to learn vim because many people say it is cool.
Just look how many answers you've got to this question. I will provide an additional reason for learning vim. It has a reputation for the quality and the completeness of its docs. So you will find most answers to your questions in its help system as soon as you will manage to stick the proper keywords in your help queries.
To learn vi m fast one must first understand the whole design. Vim has a great set of cursor-movement commands, check a few X is a character, a digit :. Many of these support a count before the command, like 4j to move 4 lines up. Now, back to the design, you type a command like d for delete followed by a cursor movement and the command applies to the piece of text from the cursor position till the movement end. For example H moves to the top of the screen, dH deletes to the top of the screen and cH changes replaces to the top of the screen.
This design is quite powerful. It also reduces, or organizes, what you need to learn. Definitively the first step is to learn a few cursor movement commands.
Say,8 or 10 at first. Then you are almost done. Learning something new is always worth the effort, IMHO. I suggest you print out a cheat sheet and force yourself to use it day-in and day-out. Vim is definitely worth learning to partly summarize what has been stated previously here are the main reasons:.
Also on a side note if you find you like the Vim key bindings, there are also IDEs which include vim bindings in their editors for simple commands, for example Komodo Edit. For help on learning Vim, try typing 'vimtutor' into your terminal and follow the instructions.
There is also a book which is particularly good Hacking Vim. Stack Overflow for Teams — Collaborate and share knowledge with a private group. Create a free Team What is Teams? Collectives on Stack Overflow. Learn more. What are the benefits of learning Vim?
0コメント