Koniec linii

Koniec linii (ang. End Of Line, EOL) – znak lub sekwencja znaków oznaczająca zakończenie linii tekstu.

W przypadku protokołów internetowych przyjęło się używać, jako znaku końca linii, kombinacji kodów CRLF.

Współczesne edytory tekstu zwykle obsługują wszystkie sposoby oznaczania końca linii. Wiele innych programów również przetwarza tekst niezależnie od tego, jaki rodzaj zakończenia linii w nim występuje, jednak nie można zakładać, że automatyczne rozpoznawanie formatu zawsze zadziała poprawnie.

Błędna identyfikacja oznaczenia końca linii może doprowadzić do traktowania plików binarnych jako tekstowych i na odwrót, co może powodować błędną interpretację zawartości przy odczycie lub uszkodzenie danych przy zapisie. W związku z tym istnieje możliwość wymuszenia otwarcia lub przesłania pliku w trybie tekstowym albo binarnym. W trybie tekstowym znaki końca linii mogą być automatycznie zamieniane na znaki stosowane natywnie w systemie docelowym, natomiast w trybie binarnym wszystkie znaki pozostają nienaruszone.

Zastosowanie

W różnych systemach operacyjnych stosuje się określone znaki końca linii:

  • W systemach opartych na kodowaniu ASCII są to kombinacje kodów CR (ang. carriage return, szesnastkowo0x0D) i LF (ang. line feed, szesnastkowo 0x0A):
  • W systemach opartych na EBCDIC jest to kod NEL (ang. NExt Line, szesnastkowo 0x15).

Koniec linii a separator linii

Sama sekwencja kodująca przejście do nowej linii (LF, CRLF lub CR) nie jest jedyną różnicą między sposobem zapisu końca linii w plikach tekstowych w różnych systemach operacyjnych.

W systemach z rodziny Unix (stosujących sekwencję LF) znak końca linii występuje na końcu każdej linii. Wobec tego plik zawierający jedną linię - zawiera jedną sekwencję LF na końcu. Plik tekstowy niezawierający tej sekwencji uznawany jest za plik o długości zera linii. (Ale niekoniecznie jest pusty - może mieć tekst niebędący pełną linią.)

W systemach z rodziny DOS i Windows, sekwencja końca linii (CRLF) jest separatorem linii. Wobec tego plik zawierający jedną linię - nie zawiera tej sekwencji, plik zawierający dwie linie - zawiera jedną sekwencję CRLF itd.

Zachowanie to można często ręcznie zmienić w edytorach tekstowych.

Narzędzia do kontroli wersji, takie jak Git, wyświetlają ostrzeżenie, gdy plik nie zawiera końcowego znaku końca linii (niezależnie, czy system używa LF czy CRLF)

Alt-kody dla strony kodowej Windows-1250:

  • LF – Alt+010
  • CR – Alt+013

Zobacz też

Linki zewnętrzne

  • „The End-of-Line Story” (ang.)