RuboCop
参考:
RuboCop – The Ruby Linter/Formatter that Serves and Protects [Official]
使い方
参考:
RuboCop を使ってコーディング規約に準拠させる方法 | vdeep
RuboCop を使ってコーディングルールへの準拠チェックを自動化 – Qiita
RuboCop で Ruby コードのスタイルガイド準拠度をチェックしましょう | Sider Blog
RuboCop を Rails オプションや Lint オプションで使ってみよう | Sider Blog
RuboCop でコーディングスタイルを矯正する | momota.txt
RuboCop を無理なく既存プロジェクトに導入する | FiNC Tech Blog
初心者が Rails + Devise で Todo アプリ作る/Rubocop/RSpec/Travis CI | freedom-man
Basic Usage | RuboCop [Official]
Basic Usage | RuboCop Docs [Official]
概要
参考:
RuboCop なるものがあるらしい | Yamane Toshiaki
スタイルガイド
参考:
Ruby スタイルガイドを読む/ブロック、proc | TechRacho
The Ruby Style Guide (rubystyle.guide)
The Rails Style Guide (rails.rubystyle.guide)
rubocop/ruby-style-guide: A community-driven Ruby coding style guide – GitHub
rubocop/rails-style-guide: A community-driven Ruby on Rails style guide – GitHub
ruby-style-guide/README.ja.md at japanese · fortissimo1997/ruby-style-guide – GitHub
rails-style-guide/README-jaJA.md at master · satour/rails-style-guide – GitHub
Relaxed Ruby Style (relaxed.ruby.style)
janlelis/relaxed.ruby.style: A Relaxed Style Guide for Ruby & Configuration for RuboCop – GitHub
ルール設定
参考:
RuboCop を調教、規約よりも速度優先な rubocop.yml を試してみよう | Sider Blog
RuboCop がチェックしてくれるもの一覧表 スタイル編 – Qiita
自作アプリに RuboCop のデフォルト設定を適用した | YOSHINO 日記 (archive)
Configuration | RuboCop Docs [Official]
Include / Exclude
参考:
Including/Excluding files – Configuration | RuboCop [Official]
Cop-specific Include and Exclude – Configuration | RuboCop [Official]
Disable a cop for a specific directory · Issue #3694 · rubocop-hq/rubocop – GitHub
How to tell Rubocop to ignore a specific directory or file – Stack Overflow
Include の指定
参考:
RuboCop をアップデートしたら対象ファイル数が2つだけになった話 – Qiita
Formatters
違反項目が多い順にファイル名を表示する。
$ rubocop -f worst
参考:
Formatters | RuboCop [Official]
比較
参考:
RuboCop vs Rails Best Pratices/それぞれの特徴/初心者はどう使う? | Sider Blog
pre-commit を使って git commit 直前に rubocop を自動実行する
参考:
pre-commit gem で git commit に連動して RuboCop を実施する|Developers.IO
jish/pre-commit: A slightly improved pre-commit hook for git – GitHub
フォーマッター
参考:
RuboCop 作者が Ruby コードフォーマッタを比較してみた 前編 翻訳 | TechRacho
ネストしたクラス・モジュールの定義
参考:
ネストした Module / Class を Ruby で定義する時のコーディングスタイルの話。| Sooey
Layout/TrailingBlankLines
参考:
Make new cop aware of no newline at end of file · Issue #31 · rubocop-hq/rubocop-jp – GitHub
Style/MultilineBlockChain
参考:
Metrics/LineLength
参考:
A Cheatsheet for Multi-line Strings in Ruby | Cmdr Coriander
Multiline strings – Heredoc or quotes – My Daily Technical Notes
Multiline strings in Ruby 2.3 – the squiggly heredoc | Infinum
Can I write multi-line string with no concatenation? – Stack Overflow
Metrics/AbcSize
参考:
Metrics/AbcSize – Metrics Cops | RuboCop [Official]
RuboCop の Metrics AbcSize チェックについて – Qiita
RuboCop の ABC Size チェックについて調べた | 毒シューマイ
Security/Open
Kernel.#open
を使わずに、用途に応じて open
を使い分ける。
File.open("path/to/file")
IO.popen("program arg1 arg2 arg3")
URI.parse("https://example.com/path/to/document").open
参考:
Security/Open – Security Cops | RuboCop [Official]
ドキュメント
参考:
RuboCop Docs | RuboCop [Official]
リポジトリ
参考:
RuboCop Rails
参考:
RuboCop Rails | RuboCop [Official]
Cops – Rubo Cops Rails | RuboCop [Official]
Usage – Rubo Cops Rails | RuboCop [Official]
Documentation for rubocop-rails | RubyDoc.info
rubocop-performance
参考:
RuboCop Performance | RuboCop [Official]
rubocop/rubocop-performance: An extension of RuboCop focused on code performance checks – GitHub
rubocop-performance | RubyGems.org
erb-lint
参考: