Zeilenvorschub

aus Wikipedia, der freien Enzyklopädie
(Weitergeleitet von Linefeed)
Zur Navigation springen Zur Suche springen
<LF>

Der Zeilenvorschub (englisch line feed, kurz LF, deutsch veraltet auch ZL) ist auf Ausgabegeräten für Text die Anweisung, die nächste Zeile anzusteuern.

Der Zeilenvorschub ist vom Wagenrücklauf und vom Zeilenumbruch als der Kombination von Zeilenvorschub und Wagenrücklauf zu unterscheiden.

Schreibmaschinen

[Bearbeiten | Quelltext bearbeiten]
Zeilenvorschubeinstellung 1, 2, 3
Underwood No. 4/5, um 1920

Unter Zeilenvorschub versteht man im ursprünglichen Sinne das Drehen der Walze bei einer Schreibmaschine. Der Wagen wird zu Beginn einer neuen Zeile mit dem Zeilenschalthebel von Hand zurückgeschoben (Wagenrücklauf). Dabei wird auch das Papier um den vorher am Wagen einzustellenden Zeilenvorschub weitertransportiert. Dazu betätigt der Zeilenschalthebel einen Ratschenhebel, der in ein Zahnrad an der Walzenachse eingreift und diese weiterdreht. Für den Zeilenvorschub gibt es verschiedene Rastpositionen für den Zeilenabstand sowie teils auch Tasten, die den Zeilenvorschub unterbinden oder rückwärts ausführen, um in eine darüberstehende Zeile zu gelangen.

Zeilenvorschub- (ZL) und Wagenrücklauftaste (WR) eines Siemens-T37h-Fernschreibers, 1950er Jahre

Für Fernschreiber benötigte man ein Steuerzeichen, das sinngemäß genau das Gleiche hervorruft, nämlich das Bewegen in die nächste Zeile. Historisch wurden für „neue Zeile“ zwei Steuerzeichen eingeführt: erst ein Wagenrücklauf (WR; englisch carriage return, CR) und dann der Sprung in die nächste Zeile (ZL; line feed, LF). Das rührt daher, dass ein simpler Zeilenvorschub im mechanischen Sinn nur die Walze vorschiebt, die Schreibposition also in die nächste Zeile befördert. Erst der Wagenrücklauf bringt ihn ganz an den Anfang dieser Zeile. Wegen der großen zu bewegenden Masse dauerte ein Wagenrücklauf länger als der Abdruck eines Zeichens oder ein Zeilenvorschub. Bei voller Schreibgeschwindigkeit, insbesondere bei Verwendung von Lochstreifen, war der Schreibkopf noch horizontal in Bewegung, während das zweite Zeichen für Zeilenvorschub verarbeitet wurde. Das nächste Textzeichen wurde (bei bester mechanischer Einstellung des Wagenrücklaufs) genau am Anfang der neuen Zeile gedruckt. Der Abschluss einer Zeile mit dem Doppelzeichen CR LF war somit unvermeidlich.

Mit dem Aufkommen der elektronischen Datenverarbeitung und der dazugehörigen Peripheriegeräte wie Drucker und Bildschirm wurde auf die Technik der Fernschreiber zurückgegriffen, um den Zeilenumbruch darzustellen und den Cursor zu steuern.

In den verschiedenen Betriebssystemen wurde aber uneinheitlich verfahren. Bei manchen wurde die Interpretation der typografischen Absatzmarke (Pilcrow) durch die Zeichenkette CR LF (entspricht ASCII 0x0D 0x0A) unverändert weitergenutzt – so etwa bei CP/M, DOS und Windows (und damit auch in Texteditoren wie Notepad) –; bei anderen, namentlich Unix und Unix-artigen Systemen, wurde dieser auf das einzelne Zeichen LF (Line Feed) für den Zeilenvorschub gekürzt, unter klassischem Mac OS hingegen auf das einzelne Zeichen CR (Carriage Return) für den Wagenrücklauf.[1] Wieder andere Systeme kennen ein eigenes Zeichen NL oder NEL (engl. für New Line oder Next Line) oder ein Zeichen EOL (engl. für End of Line). Aus diesem Grund ist der Austausch von Textdateien zwischen unterschiedlichen Betriebssystemen erheblich erschwert. Viele Programme (zum Beispiel Browser) akzeptieren daher jedes dieser Steuerzeichen als Zeilenvorschub, auch wenn dies technisch nicht ganz korrekt ist. In anderen Programmen unterscheiden CR und LF das Absatzende und den harten Zeilenumbruch oder den Spaltenumbruch.

Zeichencodierung und Eingabe

[Bearbeiten | Quelltext bearbeiten]

Ein Zeichen Zeilenvorschub ist notwendig, um Texte mit Umbrüchen und Absätzen entsprechend ausgeben zu können. Daher wurde in praktisch allen Zeichensätzen ein solches Steuerzeichen vorgesehen.

Die übliche Abkürzung ist LF

  • im ASCII-Zeichensatz, dem am weitesten verbreiteten und meistgenutzten Zeichensatz weltweit, wurde z. B. das Zeichen hexadezimal 0A bzw. dezimal 10 dafür vorgesehen.
  • im EBCDIC-Code ist es das Zeichen hexadezimal 25 bzw. dezimal 37. (Alle EBCDIC-Codes führen auch NL New Line auf hex. 15, dez. 21, und heute (2007) auf 06 RNL Required New Line, „benötigt neue Zeile“ für bedingte Codierungen innerhalb des automatischen Umbruchs.)

Eingegeben werden kann der Zeilenvorschub:

  • unter Windows oder DOS und ähnlichen Systemen durch Festhalten der (linken) Alt-Taste und nachfolgendem Eintippen des Dezimalcodes eines Steuerzeichens auf dem Ziffernblock der Tastatur: Alt + 010. Akzeptiert wird das Zeichen im Allgemeinen nur auf der Kommandozeile und in Programmiereditoren, Programme der höheren Anwendungsebene wandeln das Zeichen meist um.
  • Manche Systeme erlauben es, das LF-Zeichen mit der Tastenkombination Strg + J einzugeben.
  • In manchen Programmen entspricht die Kombination ⇧ Shift + Enter dem CR LF, während Enter (daher auch die Bezeichnung Return) CR LF oder CR codiert.
  • als Escape-Sequenz in C-Code \n (CR ist \r)

Der direkte ursprüngliche Befehl „Zeilenvorschub“ wird durch die Cursorsteuerung über die Pfeiltasten mit Textmarke nach unten erreicht, wobei die Reaktion des Cursors uneinheitlich ist: In manchen Editoren (insbesondere systemnahen) wird die Marke tatsächlich konsequent nach unten versetzt, in anderen springt der Cursor bei kürzeren Zeilen an deren Zeilenende, wobei teilweise die alte Position gespeichert wird und der Cursor bei einer darauffolgenden längeren Zeile wieder an die ursprüngliche Position gesetzt wird.

Einzelnachweise

[Bearbeiten | Quelltext bearbeiten]
  1. Dirk Louis: C, C++: das komplette Programmierwissen für Studium und Job. Pearson, 2010, S. 920 (Volltext in der Google-Buchsuche).