ruby - removal - Obtener solo char desde la consola inmediatamente
bitdefender usb immunizer 2018 (4)
Esta pregunta ya tiene una respuesta aquí:
- ¿Cómo conseguir un solo carácter sin pulsar Intro? 6 respuestas
¿Es posible obtener cada char de STDIN una vez que se proporciona (sin esperar la clave de retorno)?
Esto es posible con el nuevo método getch
Ruby 1.9.3:
require ''io/console''
input = STDIN.getch
Docs (Core): http://ruby-doc.org/core-2.3.0/IO.html#class-IO-label-io-2Fconsole
Docs (Lib): http://ruby-doc.org/stdlib-2.3.0/libdoc/io/console/rdoc/IO.html#method-i-getch
Fuente: https://github.com/ruby/ruby/tree/trunk/ext/io/console
Para una solución sin bloqueo, vea mi respuesta en https://.com/q/8274275/190135
"Cómo conseguir un solo carácter en ruby sin pulsar enter"
Sí, hay muchas maneras de hacer esto, y además de gemas, puedes manipularlas directamente con terminfo a través de gemas para termios, ncurses o stty program
tty_param = `stty -g`
system ''stty raw''
a = IO.read ''/dev/stdin'', 1
system "stty #{tty_param}"
print a