2.8 인용

Pandoc은 문서에서 인용과 참고 문헌을 관리하는 두 가지 방법을 제공합니다.

  1. 기본 방법은 인용 스타일 언어(CSL)의 사양을 따르는 pandoc-citeproc라는 Pandoc 도우미 프로그램을 사용하는 것입니다. 사용 가능한 수 많은 CSL 스타일 파일 중 하나에서 특정 형식 지정 지침을 얻습니다.

  2. 사용자는 bibtex 기반의 natbib 또는 biblatex를 “인용 패키지”로 사용합니다. 이 경우 서지 데이터 파일은 bibtex 또는 biblatex 형식이어야 하며 문서 출력 형식은 PDF로 제한됩니다. 다시 말하지만, 다양한 서지 스타일을 사용할 수 있습니다 (이러한 패키지의 문서를 참조하십시오).

natbib 또는 biblatex를 사용하여 참조를 처리하기 위해 R Markdown 출력 형식의 citation_package 옵션을 설정할 수 있습니다.

output:
  pdf_document:
    citation_package: natbib
  bookdown::pdf_book:
    citation_package: biblatex

PDF 출력으로 natbib 또는 biblatex를 선택하더라도 다른 모든 출력 형식은 pandoc-citeproc을 사용합니다. 일치하는 스타일을 사용하는 경우 (예 :biblatex의 경우 biblio-style: apa, pandoc-citeproc의 경우 csl: apa.csl), 반드시 동일한 것은 아니지만, PDF 및 비 PDF 형식으로의 출력은 매우 유사합니다.

PDF가 아닌 출력 형식의 경우 pandoc-citeproc 만 사용할 수있는 옵션입니다. PDF 및 비PDF 출력 형식 간의 일관성이 중요한 경우 전체적으로 pandoc-citeproc을 사용하십시오.

서지 데이터는 여러 형식이 될 수 있습니다. 이 섹션에는 BibTeX 데이터베이스의 예만 나와 있으며, 다른 가능한 형식은 Pandoc 매뉴얼의 인용 섹션을 참조하십시오.

BibTeX 데이터베이스는 다음과 같은 참고 문헌 항목으로 구성된 일반 텍스트 파일(일반적인 파일 이름의 확장자로 .bib 사용)입니다.

@Manual{R-base,
  title = {R: A Language and Environment for Statistical Computing},
  author = {{R Core Team}},
  organization = {R Foundation for Statistical Computing},
  address = {Vienna, Austria},
  year = {2016},
  url = {https://www.R-project.org/},
}

참고문헌 항목은 @type{으로 시작합니다. 여기서 typearticle, book, manual 등일 수 있습니다.8

위의 예에서 R-base와 같은 인용 키가 있습니다. 항목을 인용하려면 @key 또는[@key] (후자는 중괄호로 인용)를 사용합니다. 예를 들어 @R-base는 “R Core Team (2016)”로 렌더링됩니다. 그리고 [@R-base]는 “(R Core Team 2016)”을 생성합니다 (또한 해당 페이지의 하단부에 참고뭔헌이 표시됨). LaTeX의 natbib 패키지에 익숙하다면 @key는 기본적으로 \citet{key}이고 [@key]\citep{key}와 같습니다.

참고문헌 항목에는 title, author 그리고 year 등과 같은 여러 필드가 있습니다. BibTeX의 가능한 항목 유형과 필드는 https://en.wikipedia.org/wiki/BibTeX에서 확인할 수 있습니다.

knitr에는 R 패키지에 대한 BibTeX 항목을 자동으로 생성하는 도우미 함수 write_bib()이 있습니다.

# the second argument can be a .bib file
knitr::write_bib(c("knitr", "stringr"), "", width = 60)
@Manual{R-knitr,
  title = {knitr: A General-Purpose Package for Dynamic Report Generation in {R}},
  author = {Yihui Xie},
  year = {2020},
  note = {R package version 1.30},
  url = {https://yihui.org/knitr/},
}

@Manual{R-stringr,
  title = {stringr: Simple, Consistent Wrappers for Common
    String Operations},
  author = {Hadley Wickham},
  year = {2019},
  note = {R package version 1.4.0},
  url = {https://CRAN.R-project.org/package=stringr},
}

@Book{knitr2015,
  title = {Dynamic Documents with {R} and knitr},
  author = {Yihui Xie},
  publisher = {Chapman and Hall/CRC},
  address = {Boca Raton, Florida},
  year = {2015},
  edition = {2nd},
  note = {ISBN 978-1498716963},
  url = {https://yihui.org/knitr/},
}

@InCollection{knitr2014,
  booktitle = {Implementing Reproducible Computational
    Research},
  editor = {Victoria Stodden and Friedrich Leisch and Roger
    D. Peng},
  title = {knitr: A Comprehensive Tool for Reproducible
    Research in {R}},
  author = {Yihui Xie},
  publisher = {Chapman and Hall/CRC},
  year = {2014},
  note = {ISBN 978-1466561595},
  url = {http://www.crcpress.com/product/isbn/
    9781466561595},
}

하나 또는 여러 개의 .bib 파일이 있으면 첫 번째 R Markdown 문서(일반적으로index.Rmd)의 YAML 메타 데이터에서 bibliography 필드를 사용할 수 있으며 biblio-style(PDF 출력에만 적용됨)을 통해 참고문헌 스타일을 지정할 수도 있습니다.

---
bibliography: ["one.bib", "another.bib", "yet-another.bib"]
biblio-style: "apalike"
link-citations: true
---

link-citations 필드는 저자-연도 스타일의 인용 텍스트에서 HTML 출력의 참고문헌 항목으로의 내부 링크를 추가하는 데 사용할 수 있습니다.

출력 형식이 LaTeX 인 경우 참고문헌 목록은 문서 끝에 있는 장이나 섹션에 자동으로 배치됩니다. LaTeX가 아닌 출력의 경우 책의 마지막 장으로 빈 장을 추가할 수 있습니다. 예를 들어, 마지막 장인 Rmd 파일이 06-references.Rmd 인 경우 내용은 인라인 R 표현식이 될 수 있습니다.

# References {-}

인용 사용 방법에 대한 자세한 지침과 추가 예제는 Pandoc 설명서의 “Citations” 섹션을 참조하십시오.


  1. 유형 이름은 대소 문자를 구분하지 않으므로 manual, Manual 또는 MANUAL 인지는 중요하지 않습니다.↩︎