Обоснование выбора различий в представлении новой строки Unix, Mac, DOS / Windows? - PullRequest
7 голосов
/ 19 января 2010

Кто-нибудь знает исходное обоснование или историю различных платформ, каждая из которых выбирает свое, но в какой-то степени похожее представление новой строки? Там должны быть некоторые дизайнерские решения, сделанные первоначально. (Я не верю, что это случайный выбор ...)

  • Unix / Mac OS X: LF (\ n)
  • Mac OS 9 и более ранние версии: CR (\ r)
  • DOS / Windows: CRLF (\ r \ n)

Ответы [ 2 ]

9 голосов
/ 19 января 2010

Джефф Этвуд опубликовал эту тему в «Великий раскол Новой Линии»

Википедия охватывает историю новой строки .

Короче говоря, CR + LF - это ссылка на дни электрических печатных машин, когда вы сначала использовали бы возврат каретки для перемещения курсора влево и перевод строки для перемещения вниз по строке. Иногда вы можете просто использовать один или другой для написания специальных символов, таких как подчеркивание или зачеркивание.

CRLF

Компьютеры приняли эту номенклатуру, поскольку она была полезна для взаимодействия с телетайпом машинами. Вот почему MS-DOS и впоследствии Windows используют CRLF.

LF

По-видимому, Multics и впоследствии Unix воспользовались черновиком проекта стандартов ISO 1963-64 гг., В котором указывалось, что CRLF или LF могут представлять символ новой строки, и использовали один символ LF. *

CR

Я все еще немного озадачен историей применения Apple CR. Я смотрю на это ... Пока что, я думаю, это связано с тем, что Apple рано различала enter и return keys . В первые дни ключ возврата сопоставлялся с возвратом каретки и ключом ввода для перевода строки, а не с единственным ключом ввода, который выполняет двойную функцию, как в мире Windows. Для пользователей пишущих машинок, которые обычно используют возврат каретки для специального форматирования, возможно, имеет смысл разделить их, и Apple, фактически, использовала клавишу возврата для специальных параметров форматирования.

Где я не совсем уверен, как, когда они отказались от этого, они остановились только на использовании CR, но я предполагаю, что это датируется этим ранним решением использовать CR для ключа возврата ... но я могу ошибаться .

2 голосов
/ 19 января 2010

Что ж, \ r \ n - это возврат каретки, а затем перевод строки, то есть та же последовательность клавиш, что и для начала новой строки в левом столбце пишущей машинки.

...