Назовите меня доисторическим, но я пытаюсь использовать тип документа XHTML, закодированный на html-странице UTF8 с тегом PRE, содержащим текст с некоторыми разрывами строк Unicode u2028.
Firefox, по крайней мере, кажется, не соблюдает u2028 как разрыв строки в блоке PRE. Изменение символа на u000D или u000a, кажется, приводит к разрывам строк, которые я ожидаю. (Технически u2028 закодирован в UTF8 как 3-байтовая последовательность, но я предполагаю, что она нормализуется при чтении). Я еще не тестировал это с другими браузерами.
Я пытался копаться в документах W3C по HTML, но не смог выяснить из раздела PRE, какие именно символы обрабатываются как разрывы строк. Где глава и стих о том, что именно интерпретируется как перевод строки в PRE? Рассматривается ли u2028 как таковой, если Firefox неисправен, или мозг стандарта HTML мертв, не интерпретируя u2028 как разрыв строки при обнаружении в файле Unicode?
Мне кажется довольно странным, что текстовый файл (например, исходный код), содержащий юникод, не будет использовать u2028 в качестве стандарта для разрывов строк (на самом деле у меня есть генератор кода, который создает такой исходный код, и я пытаюсь отобразить этот код на HTML-странице). Таким образом, размещение такого кода прямо в блоках PRE, я думаю, приведет к ожидаемому поведению.