4.3 템플릿
Pandoc은 Markdown을 다른 출력 형식으로 변환할 때 내부적으로 템플릿을 사용합니다. 템플릿은$variable$
형식의 일부 변수를 포함하는 일반 텍스트 파일입니다. 이러한 변수는 Pandoc에서 생성한 값으로 대체됩니다. 다음은 HTML 출력을 위한 매우 간단한 템플릿입니다.
<html>
<head>
<title>$title$</title>
</head>
<body>
$body$
</body>
</html>
두 개의 변수 title
과 body
가 있습니다. title
의 값은 YAML 메타 데이터의title
필드에서 가져오고body
는 Markdown 입력 문서의 본문에서 생성된 HTML 코드입니다. 예를 들어 Markdown 문서가 있다고 가정합니다.
---
title: A Nice Book
---
# Introduction
This is a **nice** book!
위 템플릿을 사용하여 HTML 문서를 생성하면 소스 코드는 다음과 같습니다.
<html>
<head>
<title>A Nice Book</title>
</head>
<body>
<h1>Introduction</h1>
<p>This is a <strong>nice</strong> book!</p>
</body>
</html>
실제 HTML, LaTeX 및 EPUB 템플릿은 더 복잡하지만 아이디어는 동일합니다. 사용 가능한 변수를 알아야 합니다. 일부 변수는 내장 Pandoc 변수이고 일부는 YAML 메타 데이터에서 사용자가 정의하거나 명령 줄 옵션-V
또는--variable
에서 전달될 수 있습니다. 일부 변수는 특정 출력 형식에서만 의미가 있습니다. 예를 들어documentclass
변수는 LaTeX 출력에서만 사용됩니다. 이러한 변수에 대한 자세한 내용은 Pandoc 설명서를 참조하십시오. 모든 기본 Pandoc 템플릿은 GitHub 저장소 https://github.com/jgm/pandoc-templates에서 찾을 수 있습니다.
HTML 출력의 경우 bookdown에는 템플릿에 추가 주석 토큰이 필요하며 섹션 3.1.2에서 설명했습니다.