Я немного запутался с входными данными Ruby.
Всякий раз, когда я пытаюсь получить ввод, он не регистрирует клавишу «Backspace». Кроме того, он никогда не принимает «Enter» в первый раз. Мне всегда приходится нажимать «Ввод» после ввода, обычно 3 раза, прежде чем оно действительно вводится.
Например,
просмотр источника
Распечатать?
1 my_var = gets.chomp
Если бы я хотел ввести «Привет», мне пришлось бы набирать его, а затем нажать клавишу возврата 3 раза, прежде чем он действительно вводится.
Теперь я нашел способ решить эту проблему, используя ...
просмотр исходного кода
Распечатать?
1 STDOUT.flush
2 my_var = gets.chomp
Но ...
1) Кажется странным, что нужно вводить КАЖДЫЙ раз, прежде чем я хочу ввести?
2) Это все еще не решает проблему регистрации возврата.
Если бы я набирал напрямую «Hello World», но с двумя случайными нажатиями клавиш, такими как: Hello Worpold
Даже если бы я использовал клавишу Backspace, она появлялась при входе: Hello World
Если бы я затем продолжал «ставить» или «печатать», он выводил бы: Hello Worpold
Знаете, как я могу это исправить, чтобы он принимал backspace, и знаете другие способы пропустить STDOUT.flush?
Заранее спасибо