Aufgabe: Einlesen eines einzelnen Zeichens ohne dass die Eingabe angezeigt wird
Lösung:
1
2
3
4
5
6
7
8
9
10
11
12
|
#!/usr/bin/env ruby
require 'termios'
begin
term=Termios::getattr($stdin)
term.c_lflag &= (~Termios::ECHO & ~Termios::ICANON)
Termios::setattr($stdin,Termios::TCSANOW,term)
p STDIN.getc # <<<<<<
ensure
term=Termios::getattr($stdin)
term.c_lflag |= (Termios::ECHO | Termios::ICANON)
Termios::setattr($stdin,Termios::TCSANOW,term)
end |