Я не думаю, что это решает проблему под рукой. Вы начинаете со строки HTML и еще не проверяли случайное количество пробелов в текстовом источнике.

юбом произвольном текстовом файле, полном печатных символов, как это можно преобразовать в HTML, который будет отображаться точно так же (с учетом следующих требований)?

Не полагается ни на что, кроме правил пробелов HTML по умолчаниюнет<pre> тегНет CSSwhite-space правила<p> теги в порядке, но не обязательно (<br />и / или<div>с нормально)

Пробел поддерживается точно.

Учитывая следующие строки ввода (игнорируйте ошибочную автоматическую подсветку синтаксиса):

Line one
    Line two, indented    four spaces

Браузер должен отображать вывод точно так же, сохраняя отступ второй строки и разрыв между «отступом» и «пробелами». Конечно, я не ищу моноширинный вывод, а шрифт ортогонален алгоритму / разметке.

Учитывая две строки как полный входной файл, пример правильного вывода будет:

Line one<br />&nbsp;&nbsp;&nbsp;&nbsp;Line two, 
indented&nbsp;&nbsp;&nbsp; four spaces

Мягкая упаковка в браузер желательна. То есть результирующий HTML не должен заставлять пользователя прокручиваться, даже если строки ввода шире, чем их область просмотра (при условии, что отдельные слова все еще сужаются, чем указанная область просмотра).

Я ищу полностью определеннуюалгоритм. Бонусные баллы за реализацию впитон или жеJavascript.

(Пожалуйста, не просто ответьте, что я должен использовать<pre> теги или CSSwhite-space правило, так как мои требования делают эти варианты несостоятельными. Просьба также не публиковать непроверенные и / или наивные предложения, такие как «заменить все пробелы на&nbsp;«В конце концов, я уверен, что решение технически возможно - это интересная проблема, не правда ли?)

Ответы на вопрос(4)

Ваш ответ на вопрос