Atomエディタでrubocopを使ってコードの品質を保つ
Atomエディタを使ってRuby on Railsのアプリケーションを開発している人向けの記事です。 セットアップから使い方まで書いていきます。
出来ること
コーディング規約に沿ったコードが記述出来ているか簡単に確認出来ます。 私はAtomエディタを使っているのでAtomパッケージのlinterとlinter-rubocopを使ってコードをチェックすることにしました。 以下の画像のように修正箇所や修正内容が一目で確認できます。
修正箇所が発生している状態の画面
青い波線付近へマウスオーバーさせると
> Prefer double…
のように修正内容が表示されます。
目次
準備と使い方のまとめ
- AtomパッケージのLinterとlinter-rubocopをインストール
- RubyGemsのrubocopをインストール
- Atomでファイルを保存してコードをチェック
- Atomのコマンドパレットを開き
Linter rubocop: Fix File
と入力してコードを修正
準備
Atomパッケージをインストールする
Atomの環境設定から以下の2つのパッケージを検索しインストールします。
- Linter
- linter-rubocop(Linter用プラグイン)
Atomの環境設定画面で検索します。 (Atom > Preferences… > Install タブ)
rubocop gemをインストールする
コマンドラインでrubocop gem をインストールします。
$ gem install rubocop
インストール出来たか確認します。現時点でインストールされたrubocopのバージョンは0.48.1でした。
$ rubocop -v 0.48.1
準備補足
ここまでの作業を終えてAtomエディタを開くとrubocopを使うことに必要なパッケージをAtomエディタ誘導してくれるので各パッケージをインストールします。
使い方
コードをチェックする
コードを記述したらcommand + s
でファイルを保存します。
保存が終了した頃にrubocopが解析したコードで修正した方が良いところを教えてくれます。
コードを修正する
Atomのコマンドパレットを開きLinter rubocop: Fix File
と入力してコードを修正します。
Atomのコマンドパレットの開くショートカットキーはcommand + Shift + p
です。
あとがき
rubocop導入背景
GitHubでプルリクのレビュー依頼した際に「Railsのrubocopではダブルクォート優先になってるのでそのように修正して下さい」とコメントがありました。 同じことを繰り返さないように早速rubocopを使って静的なコード解析をすることにした。Atomエディタでrubocopを使ったコード解析はファイルを保存するだけでコードのチェックが出来るため大変便利です。 その他のAtomパッケージもあるので、使い勝手や開発が活発かどうか見て改めて選択しても良さそうです。リアルタイムにチェックしてくれるパッケージもあるようです。
追記
コーディングルールを変更しよう(2017/05/29)
Rubocopのコーディングルールをデフォルトから変更したい場合、プロジェクトのルートディレクトリに.rubocop.yml
を作成してルールを書くことで、デフォルトのルールを上書きできます。『Rails
rubocop.yml
』 などで検索すると参考になるページが見つかりそうです。rails/.rubocop.yml at master · rails/rails · GitHub
rubocop-linterのパスを設定する?(2017/05/30)
公式サイトを見ると特に記載がありませんが、RVMでRubyのバージョン管理をしている場合はパスを設定する必要があるようです。 Using RVM 自身の場合はrbenvでRubyのバージョン管理しており、特にパスを設定せずに使えました。
お世話になったサイト
ありがとうございました!
binding.pryがある行をプロジェクトから一括削除する
怖話をひと通り使って感想と改善案を書く(256 INTERNS 作業週)
怖話のコンテンツが充実しすぎィィィイイイイ
どっぷり怖話を楽しんでいる@hattori6789です。
※怒られたら画像消します。
今回は、iPhoneアプリで怖話を利用するユーザー(特に閲覧者)の目線で怖話を使って、
- 操作で迷った事
- それぞれの改善策
- あったらいいかもしれない機能
について書きます。
(実際は、iPhoneアプリ、iPhoneブラウザ、PCブラウザ通り試しました。)
目次
- 怖話のコンテンツが充実しすぎィィィイイイイ
- 目次
- 操作で迷った事
- それぞれの改善策
- 自分に出来そうなこと
- あったらいいかも・その他(思いつき)
- 余談
- なぜ操作で迷った事に焦点を絞ったのか
- 自分の好みの話を出来るだけ簡単に探す方法
- おまけ
256INTERNSにリモートインターンとして参加しました
寿司と焼鳥が好物@hattori6789です。
昨日の夕方より256 INTERNS に参加しました。
ブログを作成して記事を書く、という学習週の課題があるので、256internsへの参加経緯や、2日目のカレー的な感想を簡単に書こうと思います。
目次
- 目次
- 参加経緯
- 256INTERNS
- 今日は何をしたのか
- 困った時の『行き詰まった!』ボタンに感動
- 256INTERNS 楽しい!!
- 目先の目標
- 今日のひとこと
素敵なリモートワークツールを作ります[Draft]
寿司と焼鳥が好物@hattori6789です。
自己紹介の代わりに、作りたいものを書きます。
目次
- 目次
- 大きな目標
- 自身が使いたいと思えるツールを作る
- 離れた人と面白い仕事が出来る世界
- PCを利用したアプリケーションを作ることに力を入れる
- あとがき
- 大事なことは二度言う
Pryとpry-doc gemを使ってRubyのソースコードを読む
こんにちは!@hattori6789です。
Rubyの標準ライブラリには、便利なメソッドが数多く存在します。
今回は、Rubyの対話型評価環境であるPryと、pry-doc gemをインストールし、Arrayクラスのlengthメソッドが、C言語でどのように定義されているのか気軽に見ていきます。
目次
- 目次
- 環境
- Pryについて
- pryとpry-docをインストールする
- show-sourceコマンドを使ってメソッドの定義を覗く
- 補足
ドットインストールAtomパッケージ Dotinstall Pane が想像以上に便利だった
ドットインストール公式のAtomパッケージ Dotinstall Paneを紹介します。
ドットインストールの動画を見ながらコーディングする際、Dotinstall Paneが大変便利です。
存在を知りつつSplit Viewを使っていましたが、今思えばもっと早くDotinstall Paneを使っていれば良かった。
言葉による説明だけではなく、ユーザーに実際に触って体験してもらうことがどれだけ大切なことか、実感する出来事でした。
目次
- 目次
- Dotinstall Paneとは
- 特徴
- インストール方法
- Atom上でパッケージを検索してインストール
- ターミナルを使用してインストール
- 使い方
- ショートカットキー
- その他
- 一言
- 参考URL
- 追記