LogoHome   >>   Compress   >>   XLAT   >>   EOL

EOL

Одна из самых забавных (и нелепых) причин преобразования текстовых форматов связана с тем, что Unix и его многочисленные последователи (Mac, DOS, Win) по-разному отмечают переход к новой строке в тексте. Исторически, в эпоху электромеханических пишущих машинок и телетайпов, прокручивание валика подачи бумаги (LF - Line Feed) и возврат печатающей каретки в исходную позицию (CR - Carriage Return) были двумя существенно различными операциями. Таблица ASCII включает оба управляющих кода для принтера (наряду с горизонтальной - HT и вертикальной - VT табуляцией). Для компьютерной обработки текста два (в сущности, идентичных) маркера избыточны. И в то время, как DOS тупо требует обоих - <CR><LF>, Unix использует только <LF>, а Mac - только <CR>. Некоторые глючные программы издают последовательность <LF><CR>, приводящие к ступору некоторые глючные редакторы, а сами EOL-конверторы - обширный раздел на любой файловой помойке. Может показаться, что замена EOL не является табличной заменой (по крайней мере, односимвольной). Но это не так: коды <CR><LF> никогда не используются в тексте (относятся к диапазону служебных символов) и, вместе или порознь, всегда обозначают именно переход к новой строке. При замене одиночного символа парой (или наоборот), происходит именно односимвольная замена - с изменением размера кода, этот символ представляющего.

© Gazlan 2011 * gazlan@yandex.ru

Hit Counter