[Allegro] a99: Problem mit mittellangen Zeilen bei get
Bernhard Eversberg
ev at biblio.tu-bs.de
Fr Dez 9 07:58:48 CET 2011
Am 08.12.2011 13:02, schrieb Thomas Berger:
>>
>>
>>> Die Funktion könnte am Ende ein NewLine mitliefern, wenn die
>>> gelesene "Zeile" kürzer war, oder eben nichts, wenn sie länger war.
>>> Was genau sollte also am besten passieren? Wobei bestehende Anwendungen
>>> wohl besser nicht durch eine Änderung betroffen werden sollten.
>>
>> Das "\n" am Zeilenende nicht wegzuoptimieren waere damals wohl
>> die schlauere Art gewesen, "get" zu implementieren. Dafuer ist
>> es nun aber zu spaet.
>>
Vielleicht doch nicht. Denn falls die Zeile dann mit "ins #..."
verarbeitet wird, fallen die \n und \r sowieso weg. Und das ist ja
wohl die häufigste, wenn nicht alleinige Verwendung.
Sollten wir also mal versuchsweise die Codes 13 und 10 drinlassen? Sie
stehen ja zwangsläufig nur am Ende einer "Zeile", weil "get" an der
Stelle das Lesen beendet.
Wenn wir nun noch einbauen, daß bei if %...% auch Steuerzeichen
möglich sind, wie bei (b"...") usw., also ^M für 13 und ^J für 10,
könnte man deren Präsenz leicht mit if %^M% etc. abprüfen und
die Zeichen, wenn's denn sein soll, mit var (F"^M^J") wegnehmen.
Ich denke, das wäre die einfachste Lösung und würde wohl bestehende
Anwendungen nicht beschädigen.
B.Eversberg
Mehr Informationen über die Mailingliste Allegro