Quantcast
Channel: Vimタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 5608

NERD Commenterでコメントアウト、アンコメントを楽にする

$
0
0

プログラミングしてたら絶対にやるコメントアウト、アンコメント。
それを色々と楽にしてくれるvimのプラグインの紹介です。

プラグインの特徴

コメントの状態(コメントアウト、アンコメント)を切り替えるコマンドや、
行末にコメントの挿入といったコマンドなど、コメントアウト関係のコマンドを提供してくれるプラグインです。

またファイルタイプを見ているため、PHPなら//、htmlなら<!-- -->といった具合に
言語仕様に合わせた適切なコメントアウトを挿入してくれます。

コマンド

多数のコマンドが提供されているが、便利なもの、特徴的なものを抜粋。全てのコマンドはこちらから。

コメントの状態を切り替える <leader>c<space>

カーソル位置の行、選択している場合は選択行のコメントの状態を切り替える。
選択行の1行目を見て、コメントされていない行なら全てコメントアウト、
コメントされている行なら全てアンコメントを行う。

NERDComToggleComment

選択した行のコメントの状態を個別に切り替える <leader>ci

さきほどのコマンドとは違い、こちらは1行毎個別に切り替える。

NERDComInvertComment

行末にコメントを追加する <leader>cA

カーソル位置の行末にコメントを追加した後、挿入モードに切り替える。

NERDComAppendComment

ブロックコメントを挿入する <leader>cs

カーソル位置の行、選択している場合は選択行を囲う形でブロックコメントを挿入する。
ブロックコメントが存在しない言語の場合は各行に単一行コメントを挿入する。

NERDComSexyComment

設定

多数の設定が提供されているが、便利なもの、特徴的なものを抜粋。全ての設定はこちらから。
いずれもデフォルトでOFFになっている設定で、.vimrcに追加することで設定可能。

コメントの後にスペースを追加する

NERD Commenterでコメント挿入した時、コメント記号の後にスペースを挿入してくれるようになる。
コメントが見やすく見やすくなるのでオススメ。

letg:NERDSpaceDelims=1

コメント記号を左に並べる

ネストしている場所をコメントアウトする時、コメント記号を左に並べるようにする。

デフォルトではこうなるが・・・
NERDComToggleComment

設定するとこうなる。
NERDDefaultAlign_left

letg:NERDDefaultAlign='left'

使ってみた所感

コメントアウトもアンコメントも一瞬でできる

普段コメントアウトする際、「行頭に移動して〜、挿入モードに切り替えて〜、コメント記号挿入して〜」って
やってた事がコマンド1発で終わるので快適。複数行だって選択した後にコマンド1発で済む。
コマンドの中でも特にコメントの状態を切り替えるコマンド(<leader>c<space>)が超便利!
このコマンド1種類で事足りるのがでかい。とりあえずこれだけ覚えるだけでも快適になる。

どんなファイルでも悩むことなくコメントアウトできる

NERD Commenter側がファイルタイプに合わせてコメントアウトしてくれるので
「この言語のコメントアウトは何の記号だっけ・・・」って悩む必要がない。
細かいファイルタイプまで対応しているので普段触らないファイルでも安心。
複数種類のファイルを触る人ほど恩恵がでかい。

そんなわけで、NERD Commenterを入れてよかった!✧\٩( 'ω' )و /✧

プラグインの入れ方

.vimrcに以下を追加

NeoBundle 'scrooloose/nerdcommenter'

その後、NeoBundleInstallで入れることでプラグインが入る。

また、ファイルタイプを参照するので、

filetypeon

も.vimrcに付け加える必要がある。

NERD Commenter

https://github.com/scrooloose/nerdcommenter


Viewing all articles
Browse latest Browse all 5608

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>