Bye Bye Moore

PoCソルジャーな零細事業主が作業メモを残すブログ

awesome_printでRubyオブジェクトをさらに見やすくする(その2)

前回紹介したawesome_printは凄まじいgemです。
オブジェクトの可視化に抜群の効果を発揮します。
その上、ppにはないような機能を多数備えています。

オプションを使う

長い出力を中途省略する

ap (1..0xffff).to_a, limit: true
[
    [    0] 1,
    [    1] 2,
    [    2] 3,
    [    3] .. [65531],
    [65532] 65533,
    [65533] 65534,
    [65534] 65535
]
=> nil

…正直に白状すると、このgemのこの機能を知るまで、
こういった長い出力は自力で整形してブログに貼り付けていました。
もう、そういった不毛なことはしなくてよい…

出力のインデント

出力のインデントだって、お手の物です

ap (1..0xff).to_a, limit: true, indent: 0
[
[  0] 1,
[  1] 2,
[  2] 3,
[  3] .. [251],
[252] 253,
[253] 254,
[254] 255
]
=> nil

ap (1..0xff).to_a, limit: true, indent: 2
[
  [  0] 1,
  [  1] 2,
  [  2] 3,
  [  3] .. [251],
  [252] 253,
  [253] 254,
  [254] 255
]
=> nil

ap (1..0xff).to_a, limit: true, indent: 20
[
                    [  0] 1,
                    [  1] 2,
                    [  2] 3,
                    [  3] .. [251],
                    [252] 253,
                    [253] 254,
                    [254] 255
]
=> nil

これまたブログ記事化で大活躍ですね(感涙