RuboCopをVimで使う設定(Syntastic/プラグイン)

スポンサーリンク

RuboCop は Ruby のコーディングスタイルをチェックしてくれる gem ライブラリです。Ruby の標準的なコーディングスタイルを強制する警告を出してくれるので、コーディングスタイルを身につけたい場合やチーム開発等でコーディング規約を統一したい時とかに便利かと思います。

https://github.com/bbatsov/rubocop

— 環境 —
Mac OS X Yosemite
Vim 7.3(MacVim)
rubocop 0.34.1

【お知らせ】 英単語を画像イメージで楽に暗記できる辞書サイトを作りました。英語学習中の方は、ぜひご利用ください!
画像付き英語辞書 Imagict | 英単語をイメージで暗記
【開発記録】
英単語を画像イメージで暗記できる英語辞書サービスを作って公開しました
スポンサーリンク

RuboCop の gem をインストール

以下 rbenv 環境下での rubocop インストール。

ターミナルで rubocop コマンドが使えるようになるので、チェックしてみます。

編集したファイルを毎回ターミナルでコマンドを打ってチェックするのは大変なので、Vim 上でチェックが走るように設定します。以下 rubocop の Vim プラグインを使う方法と、Vim プラグインである Syntastic でチェッカーに rubocop を設定する2つの方法があります。

Vim プラグインで入れる

NeoBundle を使ってること前提です。rubocop の vim プラグイン vim-rubocop を入れる。

~/.vimrc

上記を ~/.vimrc に追加して、

https://github.com/ngmy/vim-rubocop
Vim プラグインの管理に NeoBundle を導入 | EasyRamble

Syntastic で rubocop 実行

Syntastic(Vim プラグイン)でチェッカーに RuboCop を使う。私は既に Syntastic を使っていましたので、こちらの方法を採用しました。

~/.vimrc

上記を ~/.vimrc に追加して、

ファイルタイプが Ruby の時のみにチェックする設定。

~/.vimrc

syntastic_mode_map の mode は、active または passive を指定。active だと保存時にチェックが走り、passive だと :SyntasticCheck コマンド実行時にチェックが走る。デフォルトは active っぽいです。

動かない場合

当初どこか設定をミスったのか Vim 上でチェックが走らなかった。いつの間にか動くようになったのですけれども。動作しない場合の確認のためのコマンド等を、いくつか紹介しておきます。いずれも Vim 上のコマンドモードで実行します。

1 が返ったら rubocop が有効になっている。これで、

と 0 が返ってきたら、Vim で RuboCop が有効化されていない。また、以下のコマンド等もチェックに使えます。

syntastic を使って RuboCop を入れた場合、Syntastic で用意されているコマンド(:SyntasticInfo)でもチェック可能です。

Available checkers:, Currently enabled checkers: の箇所に、有効化されているチェッカーが表示されます。

以上 RuboCop を Vim 上で使うための設定でした。RuboCop で Vim 上でシンタックスを自動チェックさせると、チェックにちょっと時間がかかるので若干ストレスフルかもです…。個人的なプロジェクトでは OFF にしたい感じもしますが、標準的なコーディングスタイルを細かく指摘してくれるのは助かります。

スポンサーリンク
 
スポンサーリンク

Leave Your Message!