Возврат каретки , иногда называемый возвратом картриджа и часто сокращаемый до CR , <CR>
или возврата , является управляющим символом или механизмом, используемым для сброса позиции устройства на начало строки текста . Он тесно связан с концепциями перевода строки и новой строки , хотя его можно рассматривать отдельно.
Первоначально термин «возврат каретки» относился к механизму или рычагу на пишущей машинке . Для машин, где элемент набора был зафиксирован, а бумага удерживалась в движущейся каретке , этот рычаг был слева, прикреплен к движущейся каретке, и срабатывал после набора строки текста, заставляя каретку возвращаться в крайнее правое положение, чтобы элемент набора был выровнен по левому краю бумаги. Рычаг также обычно подавал бумагу для перехода на следующую строку.
Многие электрические пишущие машинки, такие как IBM Electric или Underwood Electric, сделали возврат каретки еще одной клавишей на клавиатуре вместо рычага. Клавиша обычно была помечена как «возврат каретки», «возврат» или «возврат питания». В пишущих машинках, таких как Selectric , где элемент набора перемещался во время печати, а бумага оставалась неподвижной, клавиша возвращала элемент набора в крайнее левое положение, и для этой функции иногда использовался термин « возврат каретки ».
Для улучшения клавиатуры для неговорящих по-английски был введен символ ↵ ( U +21B5, HTML entity ↵
), обозначающий комбинированное действие возврата каретки и перевода строки.
В вычислительной технике возврат каретки является одним из управляющих символов в кодировке ASCII , Unicode , EBCDIC и многих других кодах. Он командует принтеру или другой системе вывода, такой как дисплей системной консоли , переместить курсор на первую позицию в той же строке. Он в основном использовался вместе с переводом строки (LF), переходом на следующую строку, так что вместе они начинают новую строку. Вместе эта последовательность может называться CRLF . [1]
Функции возврата каретки и перевода строки были разделены по практическим соображениям:
Еще в 1901 году код Бодо содержал отдельные символы возврата каретки и перевода строки.
Многие компьютерные программы используют символ возврата каретки, отдельно или с переводом строки, для обозначения конца строки текста, но для этой функции также используются и другие символы (см. newline ); другие используют его только для разрыва абзаца («жесткий возврат»). Некоторые стандарты, которые вводят свои собственные представления для управления строками и абзацами (например, HTML ), и многие языки программирования рассматривают возврат каретки и перевод строки как пробелы .
И в ASCII, и в Unicode возврату каретки присвоен код 13 (или 0D в шестнадцатеричном формате ); его также можно увидеть как control+M или ^M . В символьных и строковых константах в языке программирования C и во многих других языках (включая представления регулярных выражений [2] [3] ), на которые повлиял C, \r
обозначает этот символ. [4]