flycheck
でrubocop
とruby-lint
を使う
flycheck は、Emacsで編集中に構文チェッカを走らせてエラーを表示してくれるEmacs Lispである。
flycheck
でRubyのコーディングルールチェッカ、構文チェッカであるrubocop
とruby-lint
を走らせてみる
rubocop
とruby-lint
をインストール
rbenv等の場合
$ gem install rubocop ruby-lint
システムのRubyを使う場合
$ sudo gem install rubocop ruby-lint
Emacsの設定
flycheck
のインストール
Caskを使う場合、以下をファイルCask
に追加する。
Cask
(depends-on "flycheck")
元から入っているパッケージシステムを使う場合、
M-x package-install
でパッケージを聞かれるので、flycheck
を指定してください。
Ruby modeでのflycheck
の設定
.emacs.d/init.el
;; 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
- やはりチェッカを自前で書いている