はじめに
基本のrubocop設定を自分用の備忘録として記述します。
Rubocopとは
RuboCop とは、Ruby のコードがコーディング規約に沿っているかを検査することができる「静的コード解析ツール」の一つです。
RuboCop をアプリケーションに取り入れることで、コードの品質を保つことができます。
Rubocop 基本設定
.rubocop.yml
AllCops:
# チェック対象から除外するディレクトリ,ファイル
Exclude:
- "vendor/**/*"
- "db/**/*"
- "bin/*"
- "node_modules/**/*"
- "config/initializers/devise.rb"
- "config/environments/*.rb"
- "Gemfile"
- "Rakefile"
# # frozen_string_literal: true というマジックコメントのないファイルの許可
Style/FrozenStringLiteralComment:
Enabled: false
# コンパクト記法とネスト記法の両方を許可
Style/ClassAndModuleChildren:
Enabled: false
# ドキュメントの無い public class を許可
Style/Documentation:
Enabled: false
# config/routes.rb をブロック行数のチェックから除外
Metrics/BlockLength:
Exclude:
- "config/routes.rb"
# メソッドの行数40行まで許容
Metrics/MethodLength:
Max: 40
# メソッドの複雑度の指標を40まで許容
Metrics/AbcSize:
Max: 40
参考
公式ドキュメント
https://docs.rubocop.org/rubocop/1.15/configuration.html