PDF 엔진

개요

Pandoc는 pdflatex, xelatex, lualatex, tectonic, latexmk를 포함한 다양한 TeX 배포판과 PDF 컴파일 엔진을 지원합니다.

LaTeX 컴파일에 어떤 툴체인을 사용하든 상관없지만, TinyTeX 사용을 강력히 권장합니다. TinyTeX는 TeX Live 배포판으로, 약 100MB의 적당한 초기 다운로드 크기로 Pandoc 문서에서 가장 흔히 쓰는 200여 개 TeX 패키지를 포함합니다.

또한 Quarto의 내장 PDF 컴파일 엔진 사용을 권장합니다. 이 엔진은 누락된 TeX 패키지를 자동으로 설치하는 기능을 포함합니다.

TeX 설치

To install TinyTeX, use the following command:

Terminal
quarto install tinytex

TinyTeX는 시스템 PATH에 설치되지 않으므로 TeX를 사용하는 다른 애플리케이션에 영향을 주지 않습니다. 다른 애플리케이션에서 TinyTeX를 사용하려면 설치 시 --update-path 플래그를 추가하세요(시스템 경로에 TinyTeX가 추가됩니다):

Terminal
quarto install tinytex --update-path

Quarto와 함께 사용할 다른 TeX 설치본이 이미 있다면, 프로젝트 또는 문서 프론트 매터에 latex-tinytex: false를 추가하여 Quarto가 내장 버전을 사용하지 않도록 하세요.

TeX Live를 선호한다면 설치 지침은 여기에서 확인할 수 있습니다: https://tug.org/texlive/.

Quarto의 누락된 TeX 패키지 자동 설치는 TinyTeX와 TeX Live에서는 동작하지만, 다른 TeX 배포판에서는 동작하지 않습니다(TeX Live의 tlmgr 명령에 의존하기 때문입니다).

TeX 관리

TinyTeX를 설치하는 것 외에도 업데이트하거나 제거할 수 있습니다. 현재 설치된 TinyTeX 버전을 보려면 다음 명령을 사용하세요:

Terminal
quarto list tools

그러면 사용 가능한 도구 목록, 설치된 버전, 최신 버전이 표시됩니다:

[✓] Inspecting tools

Tool         Status            Installed     Latest
chromium     Not installed     ---           869685
tinytex      Up to date        v2022.10      v2022.10

최신 버전으로 업데이트하려면 다음 명령을 사용하세요:

Terminal
quarto update tinytex

그러면 TinyTeX 최신 버전을 다운로드하여 설치합니다(위의 TinyTeX 설치와 동일한 동작을 따름).

TinyTeX를 완전히 제거하려면 다음 명령을 사용하세요:

Terminal
quarto uninstall tinytex
Tip

매년 4월 TeX Live는 원격 패키지 저장소를 새 연도 버전으로 업데이트합니다. 이때 이전 연도 TeX 설치본은 원격 저장소에서 패키지를 다운로드하고 설치할 수 없습니다. 이런 경우 다음과 같은 오류가 나타날 수 있습니다:

Your TexLive version is not updated enough to connect to the remote repository and download packages. Please update your installation of TexLive or TinyTex.

이런 경우 quarto update tinytex를 사용해 최신 tinytex 버전을 다운로드하고 설치할 수 있습니다.

Quarto PDF 엔진

Quarto의 내장 PDF 컴파일 엔진은 색인과 참고문헌 항목을 해결하기 위해 LaTeX를 여러 번 실행하고, LaTeX 패키지를 자동으로 설치합니다. 이 섹션에서는 내장 엔진 사용자 지정을 설명합니다(다른 엔진 사용은 아래 대체 PDF 엔진 섹션 참고).

PDF 컴파일

PDF 컴파일을 사용자 지정할 수 있는 옵션은 다음과 같습니다:

옵션 설명
latex-min-runs 숫자(최소 컴파일 실행 횟수)
latex-max-runs 숫자(최대 컴파일 실행 횟수)
latex-clean 불리언(컴파일 후 중간 파일 정리, 기본값 true)
latex-output-dir 문자열(중간 파일과 PDF 출력 디렉터리)
latex-makeindex 문자열(makeindex에 사용할 프로그램)
latex-makeindex-opts 배열(makeindex 프로그램 옵션)

패키지 설치

자동 패키지 설치를 사용자 지정할 수 있는 옵션은 다음과 같습니다:

옵션 설명
latex-auto-install 불리언(자동 패키지 설치 활성/비활성)
latex-tlmgr-opts 배열(tlmgr 옵션)

대체 PDF 엔진

pdf-enginepdf-engine-opts로 Quarto가 LaTeX 출력을 PDF로 컴파일할 때 사용하는 PDF 엔진을 제어할 수 있습니다. 예:

title: "My Document"
pdf-engine: xelatex
pdf-engine-opts:
  - '--no-shell-escape'
  - '--halt-on-error'

위 예시는 기본 lualatex 대신 특정 옵션을 가진 xelatex PDF 엔진을 사용합니다.

Latexmk

Quarto에는 내장 Latexmk 엔진이 포함되어 있어 pdf-engine을 여러 번 실행하여 PDF를 생성합니다(예: 상호 참조나 참고문헌을 사용하는 경우). 또한 TeX Live가 설치되어 있으면 누락된 패키지, 글꼴, 명령을 감지하고 설치를 시도합니다.

latex-auto-mk 옵션을 false로 설정하면 Quarto의 내장 Latexmk 엔진을 비활성화할 수 있습니다. 예:

title: "My Document"
latex-auto-mk: false

엔진 옵션은 pdf-engine-opts로 여전히 설정할 수 있습니다. 예:

latex-auto-mk: false
pdf-engine: latexmk
pdf-engine-opts:
  - '-auxdir=custom-aux'
  - '-emulate-aux-dir'

위 예시는 latexmk를 PDF 엔진으로 사용하고, 보조 파일 디렉터리 이름을 수정하는 옵션을 설정합니다.