flycheck でrubocopとruby-lintを使う
flycheck は、Emacsで編集中に構文チェッカを走らせてエラーを表示してくれるEmacs Lispである。
flycheckでRubyのコーディングルールチェッカ、構文チェッカであるrubocopとruby-lintを走らせてみる
rubocopとruby-lintをインストール
$ gem install rubocop ruby-lint
$ sudo gem install rubocop ruby-lint
Emacsの設定
flycheckのインストール
Caskを使う場合、以下をファイルCaskに追加する。
(depends-on "flycheck")
元から入っているパッケージシステムを使う場合、
M-x package-installでパッケージを聞かれるので、flycheckを指定してください。
Ruby modeでのflycheckの設定
;; flycheck
(add-hook 'ruby-mode-hook
'(lambda ()
(setq flycheck-checker 'ruby-rubocop)
(flycheck-mode 1)))
「あれ、ruby-lintは?」と思うかもしれませんが、チェッカー`ruby-rubocop'は両方でチェックしてくれます。
蛇足
ちょっと前までは、flycheckはrubocopやruby-lintに対応していなかったらしく、自前でflycheckのチェッカを書く必要があったようです。
rubocop-modeというのもあったようですが、flycheckがあれば不要でしょう。
参考文献
-
本家
-
EmacsでRubyの開発環境をさらにめちゃガチャパワーアップしたまとめ | Futurismo
- 題名の通り、すごいパワーアップしていて、本記事の件以外でも参考になるのでおすすめです
-
rubocop,ruby-lintのチェッカを自前で書いている
-
RubyMotionアプリ開発に、motion-mode + Rubocop を導入 - Qiita
- やはりチェッカを自前で書いている