nntp2http.com
Posting
Suche
Optionen
Hilfe & Kontakt

Re: n ausgabe bei <STDIN> verhindern

Von: Ferry Bolhar (ferry.bolhar@chello.at) [Profil]
Datum: 13.08.2008 21:50
Message-ID: <e976e$48a33aef$54718838$19624@news.chello.at>
Newsgroup: de.comp.lang.perl.misc
"Gerhard Wolf":

> wie kann ich bei: $input = <STDIN>;
> verhindern, dass wenn ich mit \n die Eingabe bestätige dieses auch
> ausgegeben wird?

In dieser Form gar nicht. Wenn man mittels readline (diese
Anweisung steckt hinter dem <> Operator) Daten einliest,
schließt man diesen Vorgang mittels CR ab. Dieses CR wird
- wie alle anderen Zeichen - am Eingabegerät ausgegeben.
Das hat mit Perl ansich nichts zu tun, das macht der Terminal
Treiber.

Du könntest dir IO::Prompt näher ansehen. Diese Modul
versetzt den Terminal Treiber des angegebenen Devices in den
"raw"-Modus und bestimmt dadurch ganz alleine, wann welche
Zeichen ausgegeben werden. Damit kannst du festlegen, ob ein
eingegebenes CR ausgegeben wird und falls ja, mit welchem
Zeichen. Du kannst aber auch die Eingabe von vorneherein mit
einem anderen Zeichen abschließen, oder nachdem eine bestimmte
Anzahl von Zeichen eingegeben wurde. In beiden Fällen erspart
sich der Benutzer die Eingabe eines CR, das dann natürlich auch
nicht am Schirm aufscheint.

LG, Ferry
--



[ Auf dieses Posting antworten ]