hello friends! new(ish)!
Vim: Difference between revisions
>Dsfargeg (Small description.) |
>Dsfargeg |
||
Line 4: | Line 4: | ||
==Learning Vim== | ==Learning Vim== | ||
===General Advice=== | |||
* If you're interested in learning Vim, it is likely for the purpose of programming or markup. In this case, it is recommended to look up online exercises of a language you're familiar with, and write them with Vim. | |||
* It may be tempting to use the arrow, delete, backspace, home, pageup, pagedown, and end keys, but do not. | |||
* When performing a task, always think about how to minimize the amount of keystrokes for it. Research online. | |||
* Keep a cheat sheet, write down new commands you want to learn, keep only several or so commands at a time until you've learned them. | |||
===For Beginners=== | |||
* http://vim-adventures.com/ | * http://vim-adventures.com/ | ||
* Use vimtutor | * Use vimtutor | ||
* If you're partial to books, try Practical Vim | |||
* :h | * :h | ||
==Vimconf== | ==Vimconf== |
Revision as of 17:40, 29 January 2014
Vim (Vi IMproved) is a text editor based on the standard UNIX editor Vi. Its main feature is modal editing, which minimizes the amount of keystrokes needed for performing tasks, thus greatly reducing strain.
Learning Vim
General Advice
- If you're interested in learning Vim, it is likely for the purpose of programming or markup. In this case, it is recommended to look up online exercises of a language you're familiar with, and write them with Vim.
- It may be tempting to use the arrow, delete, backspace, home, pageup, pagedown, and end keys, but do not.
- When performing a task, always think about how to minimize the amount of keystrokes for it. Research online.
- Keep a cheat sheet, write down new commands you want to learn, keep only several or so commands at a time until you've learned them.
For Beginners
- http://vim-adventures.com/
- Use vimtutor
- If you're partial to books, try Practical Vim
- :h
Vimconf
Well documented base to start out with: https://github.com/timss/vimconf
Plugins
[EasyMotion] Spatial navigation, saves a lot of keystrokes.
[Tagbar] Tag navigation, requires a ctags package.
[CtrlP] Fuzzy file, buffer, mru, tag, etc finder.
[Minimap] Minimap.
[NERDTree] Tree explorer plugin.
[CtrlP] Fuzzy file, buffer, mru, tag, etc finder.
Task Automation
[DelimitMate] Auto-completes surroundings and provides bindings for navigating through them.
[Vim-Surround] Manipulates (insert, change, delete) pairs of surroundings.
[NERDCommenter] Manipulates code comments according to the file type.
[AutoComplPop] Basic pop-up keyword-based completion.
Code Insertion/Completion
[UltiSnips] Customizable snippet engine for boilerplate code time-saving.
[Syntastic] Syntax checking.
[YouCompleteMe] Advanced semantic code completion engine.
[Eclim] Code completion making use of Eclipse's engine.
Miscellaneous
[SudoEdit] Edit files using sudo or su or any other tool.
[Multiple Cursors] Sublime Text style multiple selections
Ricing
[LightLine] Light and configurable statusline/tabline
[Vivify] Color scheme editor for Vim
External Links
The Vim Learning Curve is a Myth
Learn to speak vim – verbs, nouns, and modifiers!
Vim tips and tricks - StackOverflow
Write code faster: expert-level Vim (Railsberry 2012) - YouTube