Согласно спецификации CommonMark
Параграф
Разрыв строки — это символ новой строки (U+000A), символ возврата каретки (U+000D), не сопровождаемый новой строкой, или символ возврата каретки и следующая за ним новая строка.
Или спецификации GitHub Flavored Markdown
Параграф
Последовательность непустых строк, которую нельзя интерпретировать как блоки других типов, образует параграф. Содержимое параграфа получается в результате парсинга необработанного содержимого параграфа как строчных элементов. Необработанное содержимое параграфа формируется путём конкатенации строк с удалением начальных и конечных пробельных символов.
Таким образом,
Foo
bar
Должно отображаться как
Foo bar
Но вместо этого оно отображается как
Foo
bar
Смотрите пример CommonMark или пример GitHub.
Это ошибка или намеренное отклонение от спецификации?
Сценарий использования
Такой подход к обработке параграфов становится особенно раздражающим, когда некоторые пользователи отвечают по электронной почте, так как многие почтовые клиенты (например, Thunderbird) создают разрывы строк каждые несколько символов. Однако с точки зрения дизайна пользователи электронной почты не должны об этом задумываться или менять настройки своего почтового клиента.
Вот пример:
Единственная другая ситуация, которую я могу придумать, когда это также происходит, — это когда новые пользователи начинают использовать Discourse; иногда они создают параграфы вручную таким образом.


