gpt4 book ai didi

ruby - gets.chomp 不换行

转载 作者:数据小太阳 更新时间:2023-10-29 07:48:04 25 4
gpt4 key购买 nike

我了解 putsgets 末尾自动出现的\n,以及如何处理它们,但有没有办法保持显示点('光标位置',如果你愿意的话)在使用 gets 输入输入后移动到新行?

例如

print 'Hello, my name is '
a = gets.chomp
print ', what's your name?'

最终看起来像

你好,我叫耶利米,你叫什么名字?

最佳答案

您可以通过使用(非常缺乏记录的)getch 来做到这一点:

require 'io/console'
require 'io/wait'

loop do
chars = STDIN.getch
chars << STDIN.getch while STDIN.ready? # Process multi-char paste
break if ["\r", "\n", "\r\n"].include?(chars)
STDOUT.print chars
end

引用资料:

相关后续问题:

enter & IOError: byte oriented read for character buffered IO

关于ruby - gets.chomp 不换行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21107364/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com