1
0

More than 1 year has passed since last update.

[Ruby on rails] RuboCop(リーダブルコード)②Rubocop-airbnbを導入してみた

Last updated at Posted at 2021-08-20

初めに

以前の記事でrubocopを導入しましたが、
rubocop-airbnbの方が使い勝手が良かったので、そちらに変更しました。
圧倒的に設定やら何やらはこっちの方が楽です!!!

Gemfile導入

前入れたrubocopとはおさらばです。

gem 'rubocop-airbnb'

bundle install します。

ファイルの作成

.rubocop.ymlと.rubocop_airbnb.ymlを作成します。
Gemfileがあるところと同じところです。

スクリーンショット 2021-08-20 13.47.42.png

ファイルに記述

.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回起動し、以下のようになりました。ここからは自分での訂正になります。

スクリーンショット 2021-08-20 13.26.25.png

コードの修正作業

①Gemfileに同じ記述が2つあると指摘されています。
→gemfileに同じ記述を2回していたので削除しました。

②unless A また Bという記述をしていましたが、
unlessのときは、one conditionalしか使えないそうなので修正。

③そして少し厄介なのが以下です。
default scopeはNGなんですね・・・・。
スクリーンショット 2021-08-20 13.51.21.png

終わりに

前回入れた通常のrubocopだとメソッド名が長すぎる!!!!という指摘や、
日本語のコメントアウトも大量に指摘されていましたので、圧倒的にこちらの方が使いやすいというか、
コードを整えやすいと感じました。

1
0
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
1
0