更美丽,缩进,漂亮的印刷

Ano*_*noE 1 ruby pretty-print inspect

Array.inspect 以平线返回其输出:

aoa = [ [1,2,3], [4,5,6] ]
puts aoa.inspect # => [[1, 2, 3], [4, 5, 6]]
Run Code Online (Sandbox Code Playgroud)

是否有一种简单的方法来获得缩进的输出?确切的格式(例如,第一次之后是否有换行符[)对我来说并不重要.我只是想让它更具可读性.

比较Perl:

  DB<2> print Dumper([[1,2,3],[4,5,6]])
$VAR1 = [
          [
            1,
            2,
            3
          ],
          [
            4,
            5,
            6
          ]
        ];
Run Code Online (Sandbox Code Playgroud)

解决方案也应该支持哈希并优雅地处理其他事情.

spi*_*ann 5

您可能想要尝试AwesomePrint gem,它默认返回以下内容(实际输出是彩色的)并且可以自定义:

aoa = [ [1,2,3], [4,5,6] ]
#=> [
#     [0] [
#       [0] 1,
#       [1] 2,
#       [2] 3
#     ],
#     [1] [
#       [0] 4,
#       [1] 5,
#       [2] 6
#     ]
#   ]        
Run Code Online (Sandbox Code Playgroud)