rubocopは.rubocop.ymlを編集すれば、独自のルールを設定できる。
ただし、この設定ファイルはデフォルトの項目を オーバーライドする!
例えば、AllCops/Excludeに設定を追加したい場合、下記のように書かないとうまく動かない。
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にあるので、変更する際は参照してみると良いと思う。