给定以下Ruby程序:
def getch
begin
system("stty raw -echo")
ch = STDIN.getc
puts "[#{ch}]"
ch
ensure
system("stty -raw echo")
end
end
print "Press a key: "
getch
puts "Have a nice day!"
以及以下运行:
$ ruby a.rb
Press a key: [t]
Have a nice day!
为什么缩进"祝你今天愉快!"?为什么输出不是那样的:
$ ruby a.rb
Press a key: [t]
Have a nice day!
好的,添加opost
应该可以修复它。将第三行改为这样:
system("stty raw opost -echo")
我希望这就是你正在寻找的答案。