핵심 표면
문단 하나입니다.
문단 둘입니다.
- 목록
- 목록경계 규칙
빈 줄은 문단을 분리한다
Markdown에서 줄바꿈 하나는 대개 같은 문단의 연속으로 처리됩니다. 문단을 확실히 나누려면 빈 줄을 넣어야 합니다. 이 규칙을 모르면 source에서는 줄이 나뉘어 보이지만 렌더링에서는 한 문단으로 붙는 일이 생깁니다.
첫 번째 줄
두 번째 줄
새 문단문서 초안에서는 줄 길이에 맞춰 hard wrap을 하더라도, 의미상 문단이 바뀌는 곳에는 빈 줄을 넣어야 합니다.
block 앞뒤 빈 줄은 renderer 차이를 줄인다
heading, list, blockquote, code block 같은 block 요소는 문단과 붙어 있어도 처리되는 경우가 있습니다. 하지만 renderer마다 애매한 경계에서 다르게 보일 수 있으므로, 문단과 block 사이에는 빈 줄을 넣는 편이 portable합니다.
설명 문단입니다.
> 참고 문장입니다.
다음 문단입니다.특히 README를 GitHub, 정적 사이트, PDF 변환 도구로 함께 렌더링한다면 빈 줄을 명시적으로 쓰는 편이 안전합니다.
목록 안 빈 줄은 tight list와 loose list를 바꾼다
목록 항목 사이에 빈 줄이 있으면 renderer는 목록을 loose list로 보고 각 항목을 문단처럼 감쌀 수 있습니다. 짧은 체크리스트는 빈 줄 없이 쓰고, 항목마다 추가 설명 문단이 있는 목록은 빈 줄을 넣어 구조를 넓히는 편이 좋습니다.
- 짧은 항목
- 짧은 항목- 첫 항목입니다.
추가 설명입니다.
- 둘째 항목입니다.목록이 갑자기 세로로 넓게 보이면 항목 사이의 빈 줄을 먼저 확인해야 합니다.
선택 기준
| 상황 | 빈 줄 사용 |
|---|---|
| 문단 분리 | 필요 |
| 문단 뒤 heading | 권장 |
| 문단 뒤 blockquote | 권장 |
| 짧은 bullet list | 항목 사이 빈 줄 없음 |
| 항목마다 설명 문단 있음 | 항목 사이 빈 줄 사용 |
| 여러 renderer로 배포 | block 앞뒤 빈 줄 권장 |
주의할 점
Markdown source의 줄바꿈과 렌더링 문단은 같은 개념이 아닙니다. 빈 줄을 기준으로 block 경계를 명확히 잡지 않으면 GitHub에서는 괜찮아 보이던 문서가 정적 사이트나 PDF 변환에서 다르게 보일 수 있습니다.
자동 formatter가 빈 줄을 추가하거나 제거하면 문서의 의미 구조가 바뀔 수 있습니다. 긴 문서에서는 "보기 좋은 간격"보다 문단, 목록, 인용문이 어디서 끝나는지를 먼저 기준으로 삼아야 합니다.
참고 링크
2 sources