セクション

commentout.vim : ソースをコメントアウト ←→ コメントアウト解除

作者: 小見 拓 最終変更 2010年01月11日 11時48分
— カテゴリ:

Visual Modeで選択した範囲のソースを コメントアウトしたり、逆にコメントを外したり出来るスクリプトです。 (Windows, Mac)

概要

vim online Tip #271: easy (un)commenting out of source code
http://www.vim.org/tip_view.php?tip_id=271

Visual Modeで指定した範囲のソースにコメントを付けたり、外したりするスクリプトです。

インストール方法

vim onlineのTip #271 を参考にして、 スクリプトを製作しました。

中身は以下のようになっています。

" commentout.vim
" lhs comments
vmap ,# :s/^/#/<CR>:nohlsearch<CR>
vmap ,/ :s/^/\/\//<CR>:nohlsearch<CR>
vmap ,> :s/^/> /<CR>:nohlsearch<CR>
vmap ," :s/^/\"/<CR>:nohlsearch<CR>
vmap ,% :s/^/%/<CR>:nohlsearch<CR>
vmap ,! :s/^/!/<CR>:nohlsearch<CR>
vmap ,; :s/^/;/<CR>:nohlsearch<CR>
vmap ,- :s/^/--/<CR>:nohlsearch<CR>
vmap ,c :s/^\/\/\\|^--\\|^> \\|^[#"%!;]//<CR>:nohlsearch<CR>

" wrapping comments
vmap ,* :s/^\(.*\)$/\/\* \1 \*\//<CR>:nohlsearch<CR>
vmap ,( :s/^\(.*\)$/\(\* \1 \*\)/<CR>:nohlsearch<CR>
vmap ,< :s/^\(.*\)$/<!-- \1 -->/<CR>:nohlsearch<CR>
vmap ,d :s/^\([/(]\*\\|<!--\) \(.*\) \(\*[/)]\\|-->\)$/\2/<CR>:nohlsearch<CR>

" block comments
vmap ,b v`<I<CR><esc>k0i/*<ESC>`>j0i*/<CR><esc><ESC>
vmap ,h v`<I<CR><esc>k0i<!--<ESC>`>j0i--><CR><esc><ESC>

スクリプトダウンロード し、|BR| このスクリプトを$VIMRUNTIME/plugin/に入れてください。

使用方法

サンプルのJavaソースコードです。

/dist/img/vim/commentout_default.jpg

コメントアウトしたい範囲をVisual Modeで選択します。 マウスで選択しても良いでしょう。

/dist/img/vim/commentout_select.jpg

選択したら、 素早く(重要)

,/

と入力すると、

/dist/img/vim/commentout_1line.jpg

と選択した範囲がコメントアウトされます。

,b

で、複数行コメントアウトすることもできます。

/dist/img/vim/commentout_block.jpg

コマンド一覧

一行コメント

コマンド コメントの種類
,/ Java, C++の一行コメント
,# shell, perl, 他
,> email, quote
," vimスクリプト
,% latex, prolog
,! assembly
,; scheme
,- SQL
,c 上記の種類のコメントを削除するコマンドです。

複数行コメント

コマンド コメントの種類
,* Java, C++の複数行コメント
,( Standard ML
,< HTML
,d 上記の種類のコメントを削除するコマンドです。

複数行一括コメント

コマンド コメントの種類
,b Java, C++の複数行コメント
,h HTML, XMLの複数行コメント

注意事項など

キーマップが悪さをする場合には、 自分でスクリプトを編集し直してください。

ドキュメントアクション
コメント
{no}. {user_name}  {posted}
{message_body}

(必須)
氏名を入力してください。
Eメールアドレスを入力してください。
(必須)
送りたいメッセージを入力してください。
Recent Comment
EnhCommentify.vim : 複数のファイルタイプに対応したソースコメントアウト、コメントアウト解除スクリプト — 名無しのvim使い
==> anonymous [2010/03/22 06:32:47]
vimエディタから外部のプログラムやコマンドを実行する。 — 名無しのvim使い
==> 通りすがりnoです [2010/02/04 18:28:49]
==> 通りすがりの者です [2010/02/04 18:30:28]
==> 通りすがりのものです2 [2010/02/04 18:41:38]
PCに昨日初めてさわった人でもわかるgvim超々入門 (Windows、vim6) — 名無しのvim使い
==> anonymous [2009/11/05 11:57:11]
==> 佐藤 よしお [2009/11/27 15:53:34]
==> 小見 拓 [2009/11/27 18:40:42]
==> anonymous [2010/01/06 19:48:09]
Update Feed
RSS1.0 / RSS2.0 / ATOM