我對ruby相當陌生,並且正在配置IRB。我喜歡漂亮的印刷品(要求'pp'),但總是爲它打印pp來打印它很麻煩。我想要做的就是默認打印它,所以如果我有一個var,'myvar',並輸入myvar,它會自動調用pretty_inspect而不是常規檢查。我從哪裏開始?理想情況下,我可以在自動調用的.irbrc文件中添加一個方法。有任何想法嗎?Ruby將IRB默認配置爲Pretty_Inspect
謝謝!
我對ruby相當陌生,並且正在配置IRB。我喜歡漂亮的印刷品(要求'pp'),但總是爲它打印pp來打印它很麻煩。我想要做的就是默認打印它,所以如果我有一個var,'myvar',並輸入myvar,它會自動調用pretty_inspect而不是常規檢查。我從哪裏開始?理想情況下,我可以在自動調用的.irbrc文件中添加一個方法。有任何想法嗎?Ruby將IRB默認配置爲Pretty_Inspect
謝謝!
漂亮的印刷對象正是hirb是爲了做。 Theseposts解釋hirb如何將幾乎任何東西轉換爲ascii表。雖然hirb意味着每類進行配置,你可以有顯示爲表中的所有對象:
# put this in ~/.irbrc
require 'rubygems'
require 'hirb'
Hirb.enable :output=>{'Object'=>{:class=>:auto_table, :ancestor=>true}}
# in irb
>> %w{three blind mice}
+-------+
| value |
+-------+
| three |
| blind |
| mice |
+-------+
3 rows in set
>> 1..5
+-------+
| value |
+-------+
| 1 |
| 2 |
| 3 |
| 4 |
| 5 |
+-------+
5 rows in set
>> {:a=>1, :b=>2}
+---+---+
| 0 | 1 |
+---+---+
| a | 1 |
| b | 2 |
+---+---+
2 rows in set
This related overflow solution也有行動hirb的例子。
當irb啓動時,它從您的$ HOME目錄中讀取.irbrc。如果您編輯(或創建)該文件並添加
require 'pp'
它會在您每次啓動irb時加載。
檢出this addition也pretty_print方法列表。折騰,在你的.irbrc,你可以這樣做:在默認情況下IRB
>> 5.pm
%(arg1) Fixnum
&(arg1) Fixnum
*(arg1) Fixnum
**(arg1) Fixnum
+(arg1) Fixnum
[email protected]() Fixnum(Numeric)
-(arg1) Fixnum
[email protected]() Fixnum
/(arg1) Fixnum
<<(arg1) Fixnum
>>(arg1) Fixnum
[](arg1) Fixnum
^(arg1) Fixnum
abs() Fixnum
ago(arg1, ...) Fixnum(ActiveSupport::CoreExtensions::Numeric::Time)
between?(arg1, arg2) Fixnum(Comparable)
byte() Fixnum(ActiveSupport::CoreExtensions::Numeric::Bytes)
bytes() Fixnum(ActiveSupport::CoreExtensions::Numeric::Bytes