Boar Alter ist das ein Hammer...
So... schön... funktioniert soweit alles. Nur aussehen tut's nicht so berauschend. Soll heißen - und das ist auch im selben Atemzug meine Frage:
Wie bieg ich dem Socket/Konsole jetzt bei, daß er jedes Zeichen sofort empfängt und verarbeitet? Der Effekt ist nämlich folgender:
Wenn ich im Putty-Client auf der Fernwartungskonsole TAB drücke für die automatische Komplettierung durch ReadLine, steht da erstmal ^I (für die Leseschwachen: Hütchen + großes i
![Wink ;) ;)](https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f609.png)
). Drücke ich zum Beispiel Cursor Links, um in der Kommandozeile ein paar Zeichen nach links zu wandern, steht da stattdessen ^[[D. Andere Sondertasten reagieren genau so. Ich kann dann normal damit arbeiten, als hätte das System die Eingabe korrekt empfangen. Zum Beispiel kann ich mit Cursor rauf/runter durch die Befehls-History steppen, auch wenn da dann statt des Befehls immer nur ^[[A und ^[[B steht. Nach einem Druck auf Return wird der nicht sichtbare, aber aus der History korrekt ausgewählte Befehl wie gewünscht ausgeführt. Woran wird das liegen? Wie mach ich das, daß statt dieser merkwürdigen Zeichenfolgen die gewünschte Optik entsteht, also die Befehle da stehen, der Cursor wie gewünscht wandert, das Programm sofort mit Befehls-Komplettierung reagiert und so? Und vor allem: wie mach ich es, daß mein Programm sofort nach dem Tastendruck von TAB oder Cursor rauf/runter drauf reagiert und nicht erst, nachdem ich ENTER gedrückt habe? Zu beachten: es handelt sich hierbei um einen TCP Server (Linux Socket), auf dem ein Putty Client hängt. Nicht um ein reguläres Terminal!
Das'n Problem, was?! Und damit schlag ich mich jetzt schon seit Stunden rum. Bin zwar schon paar Schritte weiter gekommen, aber der ultimative Geistesblitz bleibt noch aus.
Bitte helft mir! Ich komm da so jetzt nicht weiter! Google schweigt sich nämlich leider auch aus, bzw. versucht einem wieder irgendwelche schmuddeligen Spielzeuge zu verkaufen.
![Roll eyes :rolleyes: :rolleyes:](https://cdn.jsdelivr.net/joypixels/assets/8.0/png/unicode/64/1f644.png)