1.1 동기
Markdown은 섹션, 단락, 목록, 링크 및 이미지 등과 같은 요소를 포함하는 비교적 간단한 문서를 작성할 수 있는 훌륭한 언어입니다. Pandoc (http://pandoc.org)에는 원본 Markdown 구문을 크게 확장하고 각주, 인용 그리고 표와 같은 몇 가지 유용한 새 기능을 추가했습니다. 더 중요한 것은 Pandoc을 사용하면 HTML, LaTeX / PDF, Word 그리고 슬라이드를 포함하여 Markdown에서 다양한 형식의 출력 문서를 생성할 수 있습니다.
HTML 출력에서 그림과 표의 자동 번호 매기기, 그림과 표의 상호 참조, 그림의 모양에 대한 미세한 조절(예 : 현재 Markdown 구문을 사용하여 이미지 정렬을 지정하는 것은 불가능)과 같이 책과 같은 비교적 복잡한 문서를 작성하는 데 필요한 것들이 현재는 Pandoc의 Markdown에서는 지원하지 못하는 몇 가지 유용한 기능이 아직 있습니다. bookdown 패키지에서 해결한 몇 가지 문제들입니다.
책을 여러 출력 형식으로 제작하려는 제약 조건 하에서 이러한 다양한 출력 형식에 특정한 가능한 모든 기능을 다루는 것은 거의 불가능합니다. 예를 들어, (R) Markdown 구문을 사용하여 HTML 출력에서 복잡한 특정 LaTeX 환경을 재창조하는 것은 어려울 수 있습니다. 우리의 주요 목표는 모든 것을 Markdown으로 대체하는 것이 아니라 비교적 복잡한 문서를 작성하는 데 필요한 가장 일반적인 기능을 다루고 이러한 기능의 구문을 모든 출력 형식에서 일관되게 함으로써 그 중 하나만 학습하면 되고, 그러면 모든 출력 형식에서 작동하게 하는 것입니다.
이 프로젝트의 또 다른 목표는 시각적으로 보기 좋은 책을 쉽게 제작할 수 있도록 하는 것입니다. 좋은 기존 예제로는 GitBook(https://www.gitbook.com), Tufte CSS(http://edwardtufte.github.io/tufte-css/) 그리고 Tufte-LaTeX(https://tufte-latex.github.io/tufte-latex/) 등이 있습니다. 이러한 테마와 스타일을 bookdown에 통합하기를 희망하므로 작성자는 특정 LaTeX 클래스를 사용하는 방법이나 HTML 출력을 위해 CSS를 구성하는 방법에 대해 자세히 살펴볼 필요가 없습니다.