2008-10-23 50 views
2

当使用类似object.methods.sort.to_yaml的东西时,我想让irb解释\ n字符而不是打印它们。在irb或脚本/控制台中解释 n

我目前得到以下输出:

--- \n- "&"\n- "*"\n- +\n- "-"\n- "<<"\n- <=>\n ... 

我想什么是类似于此:

--- 
- "&" 
- "*" 
- + 
- "-" 
- "<<" 
- <=> 

这可能吗?是否还有另外一种方法可以用来解释字符串呢?

回答

4

前缀你有puts输出:

> puts object.methods.sort.to_yaml 
--- 
- "&" 
- "*" 
- + 
- "-" 
- "<<" 
- <=> 
=> nil 
+0

非常感谢 - 这正是我一直在寻找的:) – mlambie 2008-10-23 09:18:56

0

这只是irb - 我不认为你可以控制return格式。

您仍然可以使用printputs来按需要显示它。

1

另一种选择是与noinspect选项启动IRB:

C:\>irb --noinspect 
irb(main):001:0> Object.methods.to_yaml 
=> --- 
- instance_method 
- yaml_tag_read_class 
..... 
- constants 
- is_a? 

irb(main):002:0> 
1

红宝石YAML库包括 “Ÿ” 命令,这需要兼顾yamlizing和格式化:

y object.methods.sort