We are still actively working on the spam issue.
Difference between revisions of "Vim"
m (MediaWiki hates the other file.) |
JDM0wWHDld8 (talk | contribs) (→External Links) |
||
Line 79: | Line 79: | ||
[http://robots.thoughtbot.com/the-vim-learning-curve-is-a-myth The Vim Learning Curve is a Myth] | [http://robots.thoughtbot.com/the-vim-learning-curve-is-a-myth The Vim Learning Curve is a Myth] | ||
+ | |||
+ | [http://www.danielmiessler.com/study/vim/ A Vim Tutorial and Primer] | ||
[http://yannesposito.com/Scratch/en/blog/Learn-Vim-Progressively/ Learn Vim Progressively] | [http://yannesposito.com/Scratch/en/blog/Learn-Vim-Progressively/ Learn Vim Progressively] |
Revision as of 03:24, 11 February 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.
Contents
[hide]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
Configuration
All configuration is kept in the ~/.vimrc
file, ~
being your home directory. It is advisable to look up existing online vimrc
's but do not just copy them. In Vim, :h
each entry, read the description and decide for yourself if you want them.
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 implementation similar to the one found in Sublime Text
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