Baby step - 思考と実験の足跡

日常のちょっとした、気になって試したこと集です。

Rails Consoleを見やすくするためのgemを入れた

背景

趣味でRailsプロジェクトを立ち上げRails Consoleを開いたところ、普段見るpryではなくirbでした。

ああ、ここもgemの力でpryになってたんだなあ。 ということで、見慣れたpryにするためにgemを追加しました。

導入

Ruby: 2.7.1
Rails: 6.0.3.3

pry-rails

pry-rails はその名の通り、Railsでpryを使うためのgemです。

before

f:id:yukke722:20201219092757p:plain
before

after

f:id:yukke722:20201219092833p:plain
after

プロパティごとに改行されるようになり、見やすくなりました。

pry-byebug

pry-byebugデバッグをしやすくするgemです。 流れで入れました。

byebugに関しては、以下の記事でわかりやすく解説されていました。

cf. byebugでRubyスクリプトをコマンドラインデバッグする - Qiita

awesome_print

awesome_printRuby Objectをインデント付きに&カラフルに表示してくれるgemです。

f:id:yukke722:20201219093824p:plain
awesome_print

インデントされていていい感じですね〜

常に利用したい場合は PRY integration に従って .pryrcを作成し以下を記述します。

require "awesome_print"
AwesomePrint.

Error loading /app/.pryrc: cannot load such file -- awesome_print のエラーが出るときは?

こちらのコミット にあるように $LOAD_PATHを指定しましょう。

warning: Capturing the given block using Proc.new is deprecated; use&blockinsteadが表示される

Ruby2.7以上の場合、以上の警告が表示される可能性があります。

原因は、Ruby2.7から「メソッドに渡されたブロックを(ブロックなしの)Proc.newやprocで受けるとwarningを表示」するようになったため、です。

cf. Ruby 2.7.0-preview2がリリース|TechRacho(テックラッチョ)〜エンジニアの「?」を「!」に〜|BPS株式会社

gem側で、issueもPRも既に作られているようです。 マージされたら解消されるので、マージを待ちましょう。

まとめ

既存のプロジェクトにジョインすると、先人の知恵でこういう便利ツールが予め入っているときがあります。 それらがつい標準だと思ってしまいがちなので、まっさらなプロジェクトを立ち上げて本来を知るのは大事ですね。