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
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 ]
