我是在 irb 中发现错误还是我在这里遗漏了什么?
- 当 irb 在没有额外初始化的情况下运行并以交互方式加载完成模块时,一切都按预期工作:
irb> 'abc'.str<TAB pressed> irb> 'abc'.strip irb> 'abc Def'.str<TAB pressed> irb> 'abc Def'.strip
- 但是,当使用
irb -f -r irb/completion
或使用irb
.irbrc确实包含唯一行时,require 'irb/completion'
奇怪的事情开始发生:
irb> 'abc'.str<TAB pressed> irb> 'abc'.strip irb> 'abc dEf'.str<TAB pressed> dEf'.strftime dEf'.string dEf'.strip dEf'.strip! irb> 'abc Def'.str<TAB pressed> <no possible completions are displayed>
字符串中的空格和空格后面的大写字母会以某种方式破坏完成代码,但前提是完成模块是以非交互方式加载的!
Ruby 1.9.3p286 Irb 0.9.6 Linux x86_64