#!/usr/bin/perl -w
######################################################################
# (c) Michael Schilli 1999
######################################################################

use Term::ReadKey;               # Modul einbinden
$| = 1;                          # Ausgabe entpuffern

###############################################################
# 'Blinde' Eingabe
###############################################################
ReadMode('noecho');              # 'Blinde Eingabe' aktivieren
print "Paßwort eingeben: ";      # Aufforderung zur Eingabe
$pass = ReadLine(0);             # Normale Zeilen-Eingabe
chop($pass);                     # Newline abschneiden
print "Paßwort: '$pass'\n";      # Probehalber ausgeben
ReadMode('normal');              # Terminal zurücksetzen

###############################################################
# Eingabe einzelner Zeichen
###############################################################
$timeout = 5;                    # Abbruch nach 5 Sekunden

print "Zeichen eingeben, mit 'q' abbrechen: \n";
ReadMode('raw');                 # Kontroll-Zeichen 
                                 # blockieren

while(1) {                       # Endlos-Schleife
    while (!defined ($key = ReadKey($timeout))) {
                                 # Noch nichts eingegeben
        print "Hallo, Aufwachen!\n"; 
    }
    print "Eingegeben: '$key'\n";
    last if $key eq "q";         # Abbruch oder wiederholen
}

ReadMode('normal');              # Terminal-Modus 
                                 # zurücksetzen
