commonmark의 스펙에 따르면
문단(Paragraph)
줄 끝은 줄바꿈(U+000A), 줄바꿈 뒤에 따르지 않는 캐리지 리턴(U+000D), 또는 캐리지 리턴 그리고 그 뒤에 따르는 줄바꿈을 의미합니다.
또는 GitHub Flavored Markdown 스펙에 따르면
문단(Paragraph)
다른 종류의 블록으로 해석될 수 없는 비공백(non-blank) 줄들의 연속은 문단을 형성합니다. 문단의 내용은 문단의 원본(raw) 콘텐츠를 인라인(inlines)으로 파싱한 결과입니다. 문단의 원본 콘텐츠는 줄들을 연결(concatenating)하고 앞뒤의 공백을 제거하여 형성됩니다.
따라서
Foo
bar
는 다음과 같이 렌더링되어야 합니다.
Foo bar
하지만 실제로는 다음과 같이 렌더링됩니다.
Foo
bar
commonmark 예제 또는 GitHub의 예제를 참고하십시오.
이것은 버그인가요, 아니면 스펙에 대한 의도적인 이탈인가요?
사용 사례
이러한 문단 처리 방식은 특히 사용자가 이메일로 답변할 때 매우 번거로울 수 있습니다. 많은 이메일 클라이언트(Thunderbird 등)는 특정 문자 수마다 줄바꿈을 생성하기 때문입니다. 디자인 관점에서 볼 때, 이메일 사용자는 이러한 점을 고려하거나 이메일 설정을 변경해야 할 필요가 없어야 합니다.
다음은 예시입니다:
이 상황이 발생하는 다른 경우로 생각할 수 있는 유일한 경우는, 새로운 사용자가 Discourse를 처음 사용할 때 때때로 이러한 방식으로 수동으로 문단을 나누는 경우입니다.


