Nový řádek
Z Wikipedie, otevřené encyklopedie
Nový řádek je speciální znak, nebo sekvence znaků v počítačovém souboru, které označují konec řádku. Výraz „nový řádek“ se používá proto, že se následující znak objeví na novém řádku.
[editovat] Historie
Znaky CR (Carriage Return, ASCII kód 0x0D) a LF (Line Feed, ASCII kód 0x0A) pocházejí ještě z období dálnopisné komunikace. Znak LF byl interpretován jako posun papíru o řádek vzhůru a znak CR jako návrat vozíku s papírem nebo tiskovou hlavou. Znaky byly interpretované elektromechanicky a proto bylo výhodné mít pro každou relativně samostatnou činnost jeden speciální znak. Kód CR se vždy posílal jako první, aby se tiskový vozík stihl vrátit, než se začne tisknout nový řádek. Někdy bylo dokonce nutné posílat CR+LF+NUL (poslední znak nevyvolává žádnou činnost) nebo CR+CR+LF. V době, kdy se tyto činnosti začaly řešit pomocí software, ztratila oddělená existence těchto znaků smysl. Záleželo pak jen na tvůrcích systémů, jak se s možností jeden z nich vypustit vypořádali.
[editovat] Reprezentace
Počítačové programy a operační systémy obvykle reprezentují nový řádek pomocí jednoho nebo dvou řídících znaků.
- Systémy používající ASCII reprezentují nový řádek buď kódem
LF(Line feed,0x0A) nebo kódemCR(Carriage return,0x0D). Některé operační systémy používají dva znaky – sekvenci znakuCRnásledovaného znakemLF(CR+LF). - Systémy založené na EBCDIC, zejména IBM mainframe systémy zahrnující z/OS (OS/390), i5/OS (OS/400) používají
NEL(Next Line,0x15). EBCDIC také obsahuje řídící znakyCRaLF, ale číselná reprezentaceLFse liší od ASCII kódu. - OpenVMS používá souborový systém založený na záznamech. U textových souborů ukládá každý řádek do nového záznamu bez ukončení řídícími znaky. Pokud to aplikace vyžaduje, systém může znaky transparentně doplnit při čtení souboru.
[editovat] Standard unicode
| Zkratka | Název | Unicode | ISO-8859-2 | EBCDIC | Open MVS EBCDIC | C String |
|---|---|---|---|---|---|---|
| CR | carriage return | 000D | 0D | 0D | 0D | "\r" |
| LF | line feed | 000A | 0A | 15 | 25 | "\n" |
| CR+LF | carriage return and line feed | 000D,000A | 0D,0A | 0D,25 | 0D,15 | "\r\n" |
| NEL | next line | 0085 | 85 | 25 | 15 | |
| VT | vertical tab | 000B | 0B | 0B | 0B | |
| FF | form feed | 000C | 0C | 0C | 0C | |
| LS | line separator | 2028 | ||||
| PS | paragraph separator | 2029 |

