Groups | Search | Server Info | Keyboard shortcuts | Login | Register
Groups > de.comp.text.misc > #57
| From | Helmut Waitzmann <nn.throttle@xoxy.net> |
|---|---|
| Newsgroups | de.comm.software.mozilla.mailnews, de.comp.text.misc |
| Subject | Wie «text/plain; Format=Flowed; DelSp=Yes» funktioniert (was: [TB/BB] "f=f" und der Parameter "DelSp=Yes") |
| Followup-To | de.comp.text.misc |
| Date | 2022-09-20 23:50 +0200 |
| Organization | Aioe.org NNTP Server |
| Message-ID | <83v8phyaub.fsf@helmutwaitzmann.news.arcor.de> (permalink) |
| References | <af17/cc00/dcsmm/211bbird@barghahn-online.de> |
Cross-posted to 2 groups.
Followups directed to: de.comp.text.misc
Thomas Barghahn <Th.Barghahn@t-online.de>: [Es geht um den MIME‐Typ «text/plain; Format=Flowed; DelSp=Yes»] > Der Parameter "DelSp=Yes" soll laut RFC 3676 dazu dienen, dass > aus einem Soft-Break auch ein Hard-Break werden darf, was in > manchen Situationen durchaus sinnvoll ist. Zeilenwechsel, die wahlweise als soft (also beim Neuumbrechen verschwinden dürfen) oder als hard (beim Neuumbrechen erhalten bleiben) interpretiert werden dürfen, gibt es nicht. Von jedem Zeilenwechsel ist genau festgelegt, ob er beim Neuumbrechen verschwinden darf oder erhalten bleiben muss: Zeilenwechsel an Fließformatzeilen, also an solchen, die (nach Entfernung eines eventuell vorhandenen Space‐Stuffing‐Leerzeichens) mit einem Leerzeichen enden, dürfen beim Neuumbrechen verschwinden. Zeilenwechsel an Festformatzeilen, also an solchen, die (nach Entfernung eines eventuell vorhandenen Space‐Stuffing‐Leerzeichens) nicht mit einem Leerzeichen enden, müssen beim Neuumbrechen erhalten bleiben. Der Sinn von «DelSp=Yes» ist, das Fließformat auch in Schriftstücken von (menschlichen) Sprachen, in denen Leerzeichen nur sehr selten oder nie vorkommen, anwenden zu können (siehe im folgenden). >Aus RFC 3676 - 4.1 ab 3. Absatz > >| If the line is flowed and DelSp is "yes", the trailing space >| immediately prior to the line's CRLF is logically deleted. If the >| DelSp parameter is "no" (or not specified, or set to an unrecognized >| value), the trailing space is not deleted. >| >| Any remaining trailing spaces are part of the line's content, but the >| CRLF of a soft line break is not. Man muss diesen dritten Absatz im Zusammenhang des ganzen Abschnitts 4.1 (<https://datatracker.ietf.org/doc/html/rfc3676#section-4.1>) lesen: Der Abschnitt beschreibt, wie ein Newsreader Stück für Stück vorgeht, wenn er eine Fließformat‐Nachricht anzeigen (und dabei möglicherweise neuumbrechen) will: Er nimmt sich jede Textzeile zur Brust und bearbeitet sie in folgenden Schritten: Als erstes schaut er, wieviele Zitatmarken («>») vorne an der Zeile stehen. Er merkt sich die Anzahl und entfernt die Zitatmarken. Dann schaut er, ob die so bearbeitete Zeile mit einem Leerzeichen beginnt. Ist das der Fall, betrachtet er das Leerzeichen als Space‐Stuffing‐Leerzeichen. Er entfernt es. Dann schaut er, ob die so bearbeitete Zeile mit einem Leerzeichen endet. Ist das der Fall, betrachtet er die Zeile als Fließformat‐Zeile, die Teil eines Absatzes, der neu umbrochen werden darf, ist. Endet die Zeile nicht mit einem Leerzeichen, betrachtet er die Zeile als Festformat‐Zeile. (Eine Ausnahme ist die Signaturtrennerzeile: Obwohl sie mit einem Leerzeichen endet, wird sie weder als im Fließformat noch als im Festformat stehend betrachtet, siehe Abschnitt 4.3.) Wenn die Zeile als im Fließformat stehend erkannt worden ist und der MIME‐Typ‐Parameter «DelSp» auf «Yes» steht, entfernt er das Leerzeichen am Zeilenende. Beachte: Das bedeutet nicht, dass diese Zeile ins Festformat übergehen soll; es bedeutet nur, dass diese Fließformat‐Zeile dieses Leerzeichen am Zeilenende, das normalerweise alle Fließformat‐Zeilen haben, nicht mehr hat. Halte kurz inne und überlege: Jede Fließformatzeile endet in unbearbeitetem Zustand mit einem Leerzeichen, und ohne «DelSp=Yes» ist das Leerzeichen auch nach einem Neuumbrechen des Absatzes noch im Text vorhanden (nur möglicherweise nicht mehr an einem Zeilenende). Nun gibt es (anscheinend) Sprachen, in deren Schrift Leerzeichen nur sehr selten oder überhaupt nicht vorkommen. Um es diesen Sprachen zu ermöglichen, einerseits Fließformattext verwenden zu können, trotzdem aber nicht mit den für den Fließformattext technisch notwendigen Leerzeichen belästigt zu werden, wurde der Parameter «DelSp=Yes» erfunden. Nun weiter in der Bearbeitung des Absatzes: Der Newsreader umbricht den Absatz wird neu. Das bedeutet, er entfernt Zeilenwechsel oder fügt welche ein, um Zeilen passender Länge zu erhalten. Und das macht der Newsreader so, dass jede Zeile außer der letzten mit einem Leerzeichen endet. Das ist natürlich bei Sprachen, in denen Leerzeichen rar sind oder ganz fehlen, schwierig bis unmöglich. Um das trotzdem zu ermöglichen, fügt der Newsreader an jedes Fließformatzeilen‐Ende ein Leerzeichen an und gibt dem MIME‐Typ «text/plain» den Parameter «DelSp=Yes» mit. Genaueres steht im Abschnitt 4.2 (<https://datatracker.ietf.org/doc/html/rfc3676#section-4.2>) des RFCs 3676. Er hängt vor jede Zeile, die es nötig hat, (alternativ: vor jede Zeile) ein Space‐Stuffing‐Leerzeichen. Als letztes werden die gemerkten Zitatzeichen (siehe oben) vor jeden Zeilenanfang innerhalb des Absatzes gesetzt. Falls weiteres Interesse an der Diskussion, wie das Fließformat funktioniert, besteht, bitte ich um einen Umzug nach «de.comp.text.misc». Crosspost & Followup-To: de.comp.text.misc
Back to de.comp.text.misc | Previous | Next — Next in thread | Find similar
Wie «text/plain; Format=Flowed; DelSp=Yes» funktioniert (was: [TB/BB] "f=f" und der Parameter "DelSp=Yes") Helmut Waitzmann <nn.throttle@xoxy.net> - 2022-09-20 23:50 +0200
Re: Wie «text/plain; Format=Flowed; DelSp=Yes» funktioniert Jörg Knobloch <jorgk@jorgk.com> - 2022-09-21 00:33 +0200
Re: Wie «text/plain; Format=Flowed; DelSp=Yes» funktioniert Thomas Barghahn <Th.Barghahn@t-online.de> - 2022-09-21 01:02 +0200
Re: Wie «text/plain; Format=Flowed; DelSp=Yes» funktioniert Thomas Barghahn <Th.Barghahn@t-online.de> - 2022-09-21 01:08 +0200
Re: Wie «text/plain; Format=Flowed; DelSp=Yes» funktioniert Michael Bäuerle <michael.baeuerle@stz-e.de> - 2022-09-21 10:51 +0200
Re: Wie «text/plain; Format=Flowed; DelSp=Yes» funktioniert Thomas Barghahn <Th.Barghahn@t-online.de> - 2022-09-21 14:06 +0200
Re: Wie «text/plain; Format=Flowed; DelSp=Yes» funktioniert Michael Bäuerle <michael.baeuerle@stz-e.de> - 2022-09-21 14:35 +0200
Re: Wie «text/plain; Format=Flowed; DelSp=Yes» funktioniert Thomas Barghahn <Th.Barghahn@t-online.de> - 2022-09-21 16:26 +0200
Re: Wie «text/plain; Format=Flowed; DelSp=Yes» funktioniert Michael Bäuerle <michael.baeuerle@stz-e.de> - 2022-09-21 17:16 +0200
Re: Wie «text/plain; Format=Flowed; DelSp=Yes» funktioniert Thomas Barghahn <Th.Barghahn@t-online.de> - 2022-09-21 18:12 +0200
Re: Wie «text/plain; Format=Flowed; DelSp=Yes» funktioniert Michael Bäuerle <michael.baeuerle@gmx.net> - 2022-09-21 21:01 +0000
Zitiermarken mit Leerzeichen von einander trennen? (was: Wie «text/plain; Format=Flowed; DelSp=Yes» funktioniert) Helmut Waitzmann <nn.throttle@xoxy.net> - 2022-09-22 23:49 +0200
Re: Zitiermarken mit Leerzeichen von einander trennen? Michael Bäuerle <michael.baeuerle@stz-e.de> - 2022-09-23 10:25 +0200
Zitiermarken mit Leerzeichen von einander trennen? (was: Wie «text/plain; Format=Flowed; DelSp=Yes» funktioniert) Helmut Waitzmann <nn.throttle@xoxy.net> - 2022-09-22 22:39 +0200
Re: Zitiermarken mit Leerzeichen von einander trennen? Thomas Barghahn <Th.Barghahn@t-online.de> - 2022-09-23 06:18 +0200
Re: Zitiermarken mit Leerzeichen von einander trennen? Thomas Barghahn <Th.Barghahn@t-online.de> - 2022-09-23 06:35 +0200
csiph-web