5 ms·
By the way, I have a question: what is the best learning material for intermediate/advanced Vim users? I know quite a lot of Vim features but apart from vimtuto
by d33 11y ago
By the way, I have a question: what is the best learning material for intermediate/advanced Vim users? I know quite a lot of Vim features but apart from vimtutorial, I never learned them in any organized way - it was more of a bunch of tricks I found via googling. It would be nice if there was a book (preferably free) on this editor.
- pvinis 11y agoI think if you are at a level where you can comfortably use vim, the best way to learn is to just keep using vim. Whenever something feels slow, or repetitive, look online for a solution or suggestion. Then you just use it until it's learned. I don't think any advanced tutorial would be useful, since it will be a collection of very specific things done by the author of the tutorial. I wouldn't be able to remember things like that if I'm not actively using them and finding them useful for me.
- nims11 11y agohttp://learnvimscriptthehardway.stevelosh.com/ http://learnvimscriptthehardway.stevelosh.com/
- frabbit 11y agoGreat book. This in combination with: a) the Drew Neil vimcasts and; b) Tim Pope's pathogen system and; c)NERDTree helped me to get to a point where Vim does most of what I want.
- zwarag 11y agoI make a list for things I know would be faster if I knew them and go on. example of my vimimprove.md: - 5 deleting word while curser is in the middle of that word - 2 insert parantesis around the word im on .... when something reaches 10, I google it and write it on a note. Then the first thing I do in the morning is doing that thing 10 times. Before I leave work, I do it again. And of coarse if you use it while working you might just have it in your muscles or you look at your little note. Then after a while your finger get that ninja stile of doing stuff you brain just things about. Like ying and yang
- arnsholt 11y agoSince I happen to have the answer to both of those: `daw` and `diw` deletes a whole word (unlike `dw` which only deletes forward). They differ in what they do with whitespace; `aw` also trims trailing whitespace (or leading whitespace if there's no trailing) while `iw` leaves the whitespace alone. These two are text objects that can be combined with other commands and quantifiers, so that `yaw` copies a word without deleting it, or `d2aw` deletes two words. Wrapping in parens requires the vim-surround plugin, but with that installed you can do `ysaw(` and `ysaw)` to wrap in parens (also works with brackets and curlies and such), either with spaces inside the parens (the former) or snugly around the word (the latter).
- aidos 11y agoIf I want to put parens around a word I do, ciw()<ESC>P (change word pulls it into the default register, insert the parens and then paste from the register back between the parens). You can use the same pattern for any selection you have visually highlighted, such is the wonderful power of vim.
- sillysaurus3 11y agoHandy trick. Thanks!
- thomasahle 11y agoNice use of the buffer. Is there a nice hack to remove the parentheses around a word as well?
- aidos 11y agoI guess you could do a similar thing: ci(<backspace><delete><esc>p
- ksmithbaylor 11y agoca( would work for this as well.
- 11y ago
- erikb 11y agoMy path from intermediate to advanced (and I think there are big differences in vim between these two) was by watching Derek Wyatt (https://vimeo.com/user1690209/videos https://vimeo.com/user1690209/videos) do his magic, and reading articles here as well as on reddit. From time to time there are cool blog posts with new things to try. It's also worth to read the source of some of the more famous plugins together with looking up stuff on :help. I definitely would not suggest to "just keep going". Improvement is slow by yourself and the things that make a major impact are not in your repertoire because you didn't even think they exist or that you could use them that way. Find people like Derek, who are admired by the vim community, then study their works. It's not about mimicing them but about understanding how they solve problems and thereby increasing your thought limits. Then you go and build your own skills with your new horizons as new limits (which is the lonely and hard part, but necessary). Once you are certainly above the threshold of intermediacy this method becomes effective. Beginners should follow tutorials. Experts have no other choice but study other experts. In intermediate level you have the luxury to get value from nearly all methods (basic courses, tutorials, videos, discussions, studying masters are the ones I know about).
- nachtigall 11y agoI also like http://vimcasts.org/ http://vimcasts.org/
- Lio 11y agoAs well as producing vimcasts.org Drew Neil has also written [Practical Vim](http://pragprog.com/book/dnvim/practical-vim http://pragprog.com/book/dnvim/practical-vim) which is a great companion to Vim/NeoVim. I particualarly like the way it teaches you efficient text editing without needing plugins.
- dockerlocker 11y agoLook, we are living in a world with many serious problems, every brain is needed to solve these problems. It would be really great if you just tried to use your brain power for something more useful than learning an ancient editor, that is such an enormous waste of time. Look around you, what is going wrong in your community? Maybe there is one problem that you might be able to solve in a single week. Not wasting brain cycles with an ancient software that has really stupid limitations and will constantly distract you from your real work because you will have to "learn tricks" to use it will release so much brain power. Just use a simple editor like geany that just works out of the box like you would expect and go on solving real problems. Younger programmers should understand: we old guys had to use vim, because there was nothing else in many cases, not because we found vim to be cool. The "cult" around that terrible piece of software was just a stupid joke, it was an evil prank to keep your co-workers distracted - while they were fighting with vim, the creative guys solved the real problems. Real hackers do not waste their precious life time with vim, instead they solve real problems.
- clishem 11y ago:h usr_toc is really one of the best introductions to vim (after vimtutor), I am surprised that not that many people seem to know about it. Get a pdf of it here: http://www.eandem.co.uk/mrw/vim/usr_doc/ http://www.eandem.co.uk/mrw/vim/usr_doc/.
- brooklyndavs 11y agoTo piggy back on this, in general how do you balance the time between switching out a toolset vs doing development work? For example, I've been using PyCharm for years but the switch in JetBrains's licensing strategy has me looking at Vim or Neovim. I use Vim from time to time just as a quick editor but I really need to sit down and learn it inside out to make it a useful tool for me. Is this something where you start incorporating it into each project or is it a situation where you just sit down with the tool for a few days and learn it inside out? Curious about people's thoughts on this.
- FF76 11y agohttp://vimgolf.com/ http://vimgolf.com/ This was by far the most effective way I went from intermediate to advanced. The key is that you can see the key sequence of how other people got to their solutions. Then you can judge whether those solutions are just a one-off niche use case or if you can put it in your tool belt of VIM dominance.
- kolme 11y agoThe user manual is great, although admittedly not a very pleasant reading. Practical Vim is a great book for intermediate/advanced users. I've been a Vim user for at least 15 years and I enjoyed it a lot.