Hi all, this is the second post about ‘Vim Plugins’. This time I am going to introduce you a new plugin called ‘NERD_commenter.vim’.
NERD commenter is a plugin for Vim that allows for easy commenting for many filetypes. The NERD commenter provides many different commenting operations and styles which are invoked via key mappings and a menu. NERD_commenter can handle single line, multi line, partial line commenting. This is a must have plugin if you’re programming in VIM.
How to use NERD_commenter.vim
This is the default block of code we will be working with:
$queue = '/queue/foo';
$msg = 'bar';
/* connection */
try {
$stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
die('Connection failed: ' . $e->getMessage());
}
/* send a message to the queue 'foo' */
$stomp->send($queue, $msg); |
,cc |NERDComComment|
Comments out the current line or text selected in visual mode.
//$queue = '/queue/foo';
//$msg = 'bar';
// connection
try {
$stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
die('Connection failed: ' . $e->getMessage());
}
/* send a message to the queue 'foo' */
$stomp->send($queue, $msg); |
,cn |NERDComNestedComment|
Same as |NERDComComment| but forces nesting.
//$queue = '/queue/foo';
//$msg = 'bar';
//// connection
try {
$stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
die('Connection failed: ' . $e->getMessage());
}
/* send a message to the queue 'foo' */
$stomp->send($queue, $msg); |
,c<space>|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.
create connection
try {
$stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
die('Connection failed: ' . $e->getMessage());
} |
,cm |NERDComMinimalComment|
Comments the given lines using only one set of multipart delimiters if
possible.
// create connection
/*try {
$stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
die('Connection failed: ' . $e->getMessage());
}*/ |
,ci |NERDComInvertComment|
Toggles the comment state of the selected line(s) individually. Each selected
line that is commented is uncommented and vice versa.
create connection
//try {
//$stomp = new Stomp('tcp://localhost:61613');
//} catch(StompException $e) {
//die('Connection failed: ' . $e->getMessage());
//} |
,cs |NERDComSexyComment|
Comments out the selected lines “sexily”
// create connection
/*
*try {
* $stomp = new Stomp('tcp://localhost:61613');
*} catch(StompException $e) {
* die('Connection failed: ' . $e->getMessage());
*}
*/ |
,cy |NERDComYankComment|
Same as |NERDComComment| except that the commented line(s) are yanked
before commenting.
// create connection
//try {
//$stomp = new Stomp('tcp://localhost:61613');
//} catch(StompException $e) {
//die('Connection failed: ' . $e->getMessage());
//} |
pasted the yanked lines you will get
try {
$stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
die('Connection failed: ' . $e->getMessage());
} |
,c$ |NERDComEOLComment|
Comments the current line from the cursor to the end of line.
try {
$stomp = /*new Stomp('tcp://localhost:61613');*/
} catch(StompException $e) { |
,cA |NERDComAppendComment|
Adds comment delimiters to the end of line and goes into insert mode between
them.
try {
$stomp = new Stomp('tcp://localhost:61613'); // cursor here
} catch(StompException $e) { |
,cI |NERDComPrependComment|
Adds comment delimiters to the start of line and goes into insert mode between
them.
try {
// cursor here $stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) { |
,ca |NERDComAltDelim|
Switches to the alternative set of delimiters.
switches between // and /* */ for example. Here’s ,cc after applying this
/*$queue = '/queue/foo';*/
/*$msg = 'bar';*/
// create connection
try {
$stomp = new Stomp('tcp://localhost:61613');
} catch(StompException $e) {
die('Connection failed: ' . $e->getMessage());
} |
,cl |NERDComAlignedComment|
Same as |NERDComComment| except that the delimiters are aligned down the side.
// create connection
/*try {*/
/* $stomp = new Stomp('tcp://localhost:61613');*/
/*} catch(StompException $e) {*/
/* die('Connection failed: ' . $e->getMessage());*/
/*}*/ |
,cr |NERDComAlignedComment|
Same as |NERDComComment| except that the delimiters are aligned down the right side.
// create connection
// create connection
/*try { */
/*$stomp = new Stomp('tcp://localhost:61613'); */
/*} catch(StompException $e) { */
/*die('Connection failed: ' . $e->getMessage());*/
/*}*/ |
,cb |NERDComAlignedComment|
Same as |NERDComComment| except that the delimiters are aligned down both sides.
// create connection
/*try { */
/* $stomp = new Stomp('tcp://localhost:61613'); */
/*} catch(StompException $e) { */
/* die('Connection failed: ' . $e->getMessage());*/
/*} |
,cu |NERDComUncommentLine|
Uncomments the selected line(s).
send a message to the queue 'foo'
$stomp->send($queue, $msg); |
Installing NERD_commenter.vim
To get the latest version:
* 1. Download NERD_commenter.zip.
* 2. Extract NERD_commenter.zip to ~/.vim (on Unix/Linux) or ~\vimfiles (on Windows).
* 3. Run :helptags ~/.vim/doc (on Unix/Linux) or :helptags ~/vimfiles/doc (on Windows) to rebuild the tags file (so that you can read :help NERD_commenter.)
* 4. Restart Vim.
Recent Comments