奇怪的irb行为,列出内容当前目录

时间:2012-03-04 22:08:54

标签: ruby irb

当我在irb提示符下粘贴此代码时,我获得了当前目录的列表 第if true行。

def some_method()

  if true
        raise StandardError
    end

end

输出示例:

irb(main):151:0> def some_method()
irb(main):152:1> 
irb(main):153:1*   if true
irb(main):154:2> 
.Skype/                          .m2/                             Desktop/
...

我使用irb 0.9.5(05/04/13)ruby 1.8.7 (2011-12-28 patchlevel 357)

这是一个错误,还是其他什么?

2 个答案:

答案 0 :(得分:4)

以下行中将包含制表符:

        raise StandardError

irb使用readline,这意味着Tab键用于标签完成。双选项卡将显示所有可用选项。

要查看此操作,只需启动irb并按Tab键两次。

有关如何禁用它的指导,请参阅https://superuser.com/questions/37148/how-to-disable-double-tab-to-show-available-commands-in-linux-console

答案 1 :(得分:1)

由于Don Cruickshanks提到的原因,您应该设置选项以在文本编辑器中将制表符转换为空格。