주제 3

BibTeX

BibTeX에서는 참고 문헌 정보를 .bib 파일에 모읍니다. 원고의 .tex 파일에서 필요한 항목을 인용 키로 인용하고, 같은 .bib 파일을 여러 원고에서 재사용할 수 있습니다.

BibTeX에서 쓰는 두 파일

  • .bib 파일에는 각 문헌의 서지 정보와 인용 키를 저장합니다.
  • .tex 파일에서는 인용 키로 필요한 문헌을 인용합니다.

아래 BibTeX 예제에서는 .tex 파일의 \cite 명령으로 인용한 항목만 참고 문헌 목록에 나타납니다. 따라서 .bib 파일 하나에 문헌을 여럿 저장하고, 현재 원고에 필요한 항목을 골라 인용할 수 있습니다.

.bib 파일 준비하기

앞 단계의 seed-document 예제에는 bibliography.bib가 이미 있으므로 이 파일을 엽니다. 새 원고라면 원고의 .tex 파일이 있는 폴더에 .bib 파일을 만듭니다.

VS Code explorer에서 새 파일을 만드는 메뉴

새 파일을 만드는 경우 예시 이름을 reference.bib로 지정합니다.

VS Code explorer에 생성된 reference.bib 파일

.bib 파일을 원고와 같은 폴더에 두면 Git에서 함께 관리하고, 그 폴더의 다른 원고에서도 사용할 수 있습니다.

BibTeX 항목 찾기

MathSciNet이나 Google Scholar에서 문헌을 검색하거나 학술지·출판사 웹페이지에서 해당 문헌을 찾습니다.

MathSciNet

아래 검색 이미지는 검색 방법을 보여주는 예시입니다. 인용할 문헌의 상세 페이지를 연 뒤 Cite → BibTeX → Copy 순서로 진행합니다.

MathSciNet publication search page

인용할 문헌의 제목이나 저자를 검색합니다.

reference 검색 결과가 보이는 MathSciNet 화면

인용할 문헌의 상세 페이지를 열고 Cite를 선택합니다.

MR737190 문헌의 Cite 버튼이 강조된 MathSciNet 상세 페이지

Citation Formatting 창에서 BibTeX가 선택되어 있는지 확인하고 Copy를 눌러 항목을 복사합니다.

BibTeX가 선택되고 Copy 버튼이 강조된 MathSciNet Citation Formatting 창

항목 추가하기

복사한 BibTeX 항목을 사용 중인 .bib 파일에 붙여넣습니다. 아래 예시는 reference.bib에 추가한 모습입니다.

@book {MR737190,
    AUTHOR = {Gilbarg, David and Trudinger, Neil S.},
     TITLE = {Elliptic partial differential equations of second order},
    SERIES = {Grundlehren der mathematischen Wissenschaften [Fundamental
              Principles of Mathematical Sciences]},
    VOLUME = {224},
   EDITION = {Second},
 PUBLISHER = {Springer-Verlag, Berlin},
      YEAR = {1983},
     PAGES = {xiii+513},
      ISBN = {3-540-13025-X},
   MRCLASS = {35Jxx (35-01)},
  MRNUMBER = {737190},
MRREVIEWER = {O.\ John},
       DOI = {10.1007/978-3-642-61798-0},
       URL = {https://doi.org/10.1007/978-3-642-61798-0},
}
reference.bib 안에 BibTeX entry가 들어간 VS Code editor 화면

첫 줄에서 @book 뒤 중괄호 안의 MR737190이 인용 키입니다. 원고의 \cite{...}에 같은 값을 씁니다.

원고에서 인용하기

\cite{MR737190}

새로 만든 reference.bib를 쓰는 원고라면 \end{document} 앞에 다음 명령을 넣습니다. 첫 명령은 참고 문헌 목록의 형식을, 둘째 명령은 읽을 .bib 파일을 지정합니다. seed-document 예제의 기존 abbrv 스타일과 bibliography.bib 연결은 그대로 사용합니다.

\bibliographystyle{plain}
\bibliography{reference}
tex 파일에 citation command와 bibliography command가 들어간 VS Code editor 화면

\bibliography{...}에는 .bib 확장자를 뺀 파일 이름을 적습니다. reference.bib라면 \bibliography{reference}, bibliography.bib라면 \bibliography{bibliography}입니다.

참고 문헌 목록 확인하기

VS Code에서 원고의 .tex 파일을 열고 Command Palette의 Build LaTeX project를 실행한 다음 PDF 미리보기를 확인합니다.

본문 citation과 references section이 표시된 컴파일된 PDF

PDF 본문의 인용 표시가 ?가 아닌지, 참고 문헌 목록에 해당 문헌이 있는지 확인합니다. 항목이 없으면 .tex의 인용 키와 .bib 항목 첫 줄의 인용 키가 같은지 확인합니다.

원고 템플릿이 biblatex를 불러온다면 위 BibTeX 명령을 추가하지 말고, 템플릿의 \addbibresource{...}와 \printbibliography 설정을 따릅니다. 참고 문헌이 나오지 않으면 템플릿에서 지정한 백엔드가 빌드에 포함되는지 확인합니다.

인용이 ?로 남거나 참고 문헌 목록이 갱신되지 않으면 LaTeX Workshop 빌드 로그에서 BibTeX 또는 템플릿의 백엔드 오류를 확인합니다. 오류를 수정한 뒤 다시 빌드하고 PDF를 확인합니다.

이미지 미리보기