LoginSignup
17
19

More than 5 years have passed since last update.

rubocop gemを使うためにたった1つの重要なこと

Last updated at Posted at 2014-04-19

rubocopは.rubocop.ymlを編集すれば、独自のルールを設定できる。
ただし、この設定ファイルはデフォルトの項目を オーバーライドする!

例えば、AllCops/Excludeに設定を追加したい場合、下記のように書かないとうまく動かない。

rubocop.yml
AllCops:
  Exclude:
    - 'vendor/**' # default.ymlに設定されている項目
    - 'tools/**'  # 追加したい項目

これは、先に書いたようにデフォルトのAllCops/Excludeがオーバーライドされてしまうため。

余談だがAllCops/Excludeから'vendor/**'が失われると、インストールされているgemに含まれる.rubocop.ymlが読み込まれることになり、特にrubocop 0.20.0以降、設定項目のrenameが行われたようで、下記のようなメッセージが表示され、原因の特定が難しくなるだろう。(というかハマった・・・のでこれ書いてる
AllCops/Excludes was renamed to AllCops/Exclude

ちなみに、デフォルトの設定が書かれているファイルはrubocop gemのディレクトリ下config/default.yml
gemがvendor/bundle下にインストールされているならvendor/bundle/gems/rubocop-x.y.z/config/default.ymlにあるので、変更する際は参照してみると良いと思う。

17
19
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
17
19