初めに
以前の記事でrubocopを導入しましたが、
rubocop-airbnbの方が使い勝手が良かったので、そちらに変更しました。
圧倒的に設定やら何やらはこっちの方が楽です!!!
Gemfile導入
前入れたrubocopとはおさらばです。gem 'rubocop-airbnb'
bundle install します。
ファイルの作成
.rubocop.ymlと.rubocop_airbnb.ymlを作成します。
Gemfileがあるところと同じところです。
ファイルに記述
.rubocop.yml
inherit_from:
- .rubocop_airbnb.yml
#ここにはrubocopでコード解析したくないファイルやフォルダを指定します
AllCops:
Exclude:
- 'db/**/*'
- 'bin/*'
- 'config/environments/*'
- 'config/application.rb'
- 'config/initializers/*'
- 'config/spring.rb'
- 'lib/tasks/*'
- 'vendor/**/*'
- 'path/ruby'
.rubocop_airbnb.yml
require:
- rubocop-airbnb
起動!
起動のコマンド
bundle exec rubocop --require rubocop-airbnb
自動修正のコマンド
bundle exec rubocop --require rubocop-airbnb -a
もう1回起動し、以下のようになりました。ここからは自分での訂正になります。
コードの修正作業
①Gemfileに同じ記述が2つあると指摘されています。
→gemfileに同じ記述を2回していたので削除しました。
②unless A また Bという記述をしていましたが、
unlessのときは、one conditionalしか使えないそうなので修正。
③そして少し厄介なのが以下です。
default scopeはNGなんですね・・・・。