제목과 목차
마크다운 제목 단락
마크다운에서 일반적으로 제목 단락을 만드는 방법을 사용할 수 있습니다.
## Level 2 title
### Level 3 title
#### Level 4 title
각 마크다운 제목 단락은 목차에 표시됩니다.
제목 단락 ID
각 제목 단락은 자동으로 생성되거나 별도 지정한 ID 값을 가집니다. 제목 단락 ID는 마크다운이 나 JSX에서 해당 문서에 대한 링크를 작성할 때 사용할 수 있습니다.
[link](#heading-id)
<Link to="#heading-id">link</Link>
기본적으로 도큐사우루스에서는 제목 단락 텍스트에 따라 ID를 자동으로 생성합니다. 예를 들어 ### Hello World
라고 작성한 제목 단락은 hello-world
를 ID값으로 가집니다.
자동으로 생성된 ID는 약간의 제약이 있습니다.
- ID가 직관적이지 않을 수 있습니다.
- 기존에 생성된 ID는 바꾸지 않고 텍스트만 변경하거나 번역해야 하는 상황도 있습니다.
특별한 마크다운 구문은 제목 단락 id 설정을 지원합니다.
### Hello World {#my-explicit-id}
write-heading-ids
CLI 명령을 사용하면 모든 마크다운 문서에 ID값을 추가할 수 있습니다.
생성된 제목 단락 ID는 각 페이지에서는 고유한 것이 보장되지만 사용자 지정 ID를 사용하는 경우에는 각 ID가 각 페이지에서 정확하게 한 번만 표시되는지 확인하세요. 그렇지 않으면 같은 ID를 가진 두 개의 DOM 요소가 존재하게 됩니다. 이는 잘못된 HTML이며 제목과 적절하게 연결할 수 없게 됩니다.
목차 제목 수준
마크다운 문서는 화면 오른쪽 상단에 목차를 보여줍니다. 기본적으로 목차에서는 h2, h3 제목만 표시하므로 페이지 구조를 한 눈에 보기에 충분합니다. 표시되는 제목 범위를 수정하고자 한다면 페이지 단위 또는 전역적으로 최소, 최대 제목 수준을 지정할 수 있습니다.
특정 페이지의 제목 수준을 설정하려면 프런트매터에서 toc_min_heading_level
와 toc_max_heading_level
항목을 설정합니다.
---
# h2부터 h5까지 제목을 표시합니다
toc_min_heading_level: 2
toc_max_heading_level: 5
---
모든 페이지의 제목 수준을 설정하려면 themeConfig.tableOfContents
옵션을 사용합니다.
module.exports = {
themeConfig: {
tableOfContents: {
minHeadingLevel: 2,
maxHeadingLevel: 5,
},
},
};
옵션을 전역적으로 설정했더라도 프런트매터에서 다시 재정의할 수 있습니다.
themeConfig
옵션은 인라인 목차를 포함한 사이트 전체 목차에 적용되지만 프런트매터 옵션은 오른쪽 상단 목차에만 영향을 미칩니다. 각 <TOCInline />
컴포넌트를 사용자 지정하기 위해서는 minHeadingLevel
과 maxHeadingLevel
속성을 사용해야 합니다.