# Installation _\*For simplicity, let's use **[VIM_ROOT]** which will mean ~/.vim (\*nix) or ~/vimfiles (Windows)_ The NERD Commenter requires Vim 7 or higher is comprised of 2 files: plugin/NERD_commenter.vim doc/NERD_commenter.txt ### Classic Install 1. Extract the plugin files into your **[VIM_ROOT]**/plugin and **[VIM_ROOT]**/doc folders respectively. 2. Finish the install by updating your help files. Run:
:helptags [VIM_ROOT]/doc
See **|add-local-help|** for more details. ### Pathogen Install 1. Navigate to your **[VIM_ROOT]/bundle** directory in your local Vim setup 2. git clone https://github.com/scrooloose/nerdcommenter.git ### Vundle Install 1. Add `Plugin 'scrooloose/nerdcommenter'` to your .vimrc file. 2. Run `:BundleInstall` ### Post Install After the **'Classic'** or **'Pathogen'** install, make sure that you have filetype plugins enabled, as the script makes use of **|'commentstring'|** where possible (which is usually set in a filetype plugin). See **|filetype-plugin-on|** for details, but basically, stick this in your vimrc: filetype plugin on # Usage The following key mappings are provided by default (there is also a menu provided that contains menu items corresponding to all the below mappings): Most of the following mappings are for normal/visual mode only. The |NERDComInsertComment| mapping is for insert mode only. **[count]\cc |NERDComComment|** Comment out the current line or text selected in visual mode. **[count]\cn |NERDComNestedComment|** Same as \cc but forces nesting. **[count]\c\ |NERDComToggleComment|** Toggles the comment state of the selected line(s). If the topmost selected line is commented, all selected lines are uncommented and vice versa. **[count]\cm |NERDComMinimalComment|** Comments the given lines using only one set of multipart delimiters. **[count]\ci |NERDComInvertComment|** Toggles the comment state of the selected line(s) individually. **[count]\cs |NERDComSexyComment|** Comments out the selected lines ``sexily'' **[count]\cy |NERDComYankComment|** Same as \cc except that the commented line(s) are yanked first. **\c$ |NERDComEOLComment|** Comments the current line from the cursor to the end of line. **\cA |NERDComAppendComment|** Adds comment delimiters to the end of line and goes into insert mode between them. **|NERDComInsertComment|** Adds comment delimiters at the current cursor position and inserts between. Disabled by default. **\ca |NERDComAltDelim|** Switches to the alternative set of delimiters. **[count]\cl** **[count]\cb |NERDComAlignedComment|** Same as |NERDComComment| except that the delimiters are aligned down the left side (\cl) or both sides (\cb). **[count]\cu |NERDComUncommentLine|** Uncomments the selected line(s).