Q&A 마당은 텍 관련 질문/답변을 위해 만들었습니다.

  • 로그인 없이 자유롭게 글을 읽고 쓸 수 있는 철학은 처음과 같이 계속됩니다.
  • 질문 전에 아래를 읽어 보세요. 좋은 질문이 좋은 답을 받을 수 있는 좋은 방법입니다.
    • 질문에 맞는 제목을 붙이세요. 질문의 내용과 관련없는 "고수님", "긴급질문", "도와주세요"와 같은 제목은 답이 잘 올라오지 않습니다. 이 게시판에 올라오는 모든 글은 질문입니다. 굳이 [질문], [Q]를 적으실 필요도 없습니다.
    • 내용을 충실히 적어 주시고, 같은 상황을 재현할 수 있는 최소한의 예제가 같이 있어야 합니다.
    • 최소 예제는 "Minimal working example"을 읽어 보세요.
  • 파일을 첨부하실 때에는 가능한 압축하여 파일 크기를 줄여서 올려주시길 바랍니다.
  • 개인적으로 사용하신 글꼴이 들어 있는 경우, preparefont.sty에 관한 답변을 참조하세요.
  • 스팸 글을 막기 위하여 짧은 시간 내에 다시 글이 등록되는 IP를 막거나, 광고 글을 막기 위하여 금지어로 .com, .net 등을 설정하고 있습니다. 다소간의 불편함이 있으시더라도 양해 바랍니다.
    • 금지어에서 stackexchange, stackoverflow, ctan, overleaf, , github, google.com, gmail.com, .org, .io, sil.org, wiki.com, tistory.com등은 해제하였습니다.
  • MathJax를 이용한 수식조판을 사용하실 수 있습니다. 여기를 참조하세요.
  • 사용하는 편집기는 CKeditor입니다.
    • 편집기에서 [enter]를 누르면 <p> 태그가 들어가고, 문단으로 생각하고 한 줄을 비웁니다.
    • 글줄만 바꾸려면 [shift-enter]를 누르면 <BR> 태그가 들어가므로 용도에 맞게 나누어 쓸 수 있습니다.
    • 수식를 문서내에 삽입하시려면 에디터를 툴바에서 [소스]를 눌러 HTML로 입력할 수 있게 바꾸신 후 <pre> </pre> tag를 사용하셔서 <pre> 여러 줄의 수식 </pre>처럼 입력하시면 좋습니다.

noname

1. bibtex과 biber

bibtex과 biber는 둘 다 "문헌 데이터베이스 관리 프로그램"입니다. bibtex은 아주 오래된 프로그램이고 biber가 좀더 최신의 것입니다. 세세한 차이에 대해서 자세히 말할 여유는 없지만 대체로 유니코드를 주로 사용하고 복잡한 인용 및 문헌목록을 작성해야 하는 경우에 biber를 선호하는 사람이 늘어나고 있습니다만 bibtex으로 충분할 때도 많습니다.

2. biblatex 패키지

biblatex 패키지는 bibtex이나 biber 둘 다 backend 유틸리티로 사용할 수 있습니다. 전통적인 \bibliography 명령과 \bibliographystyle 만으로 충분히 구현하기 까다로운 문헌 및 인용 양식을 대거 지원하는 극도로 복잡한 패키지이지만 자유도가 높아서 원하는 결과를 얻는 것이 (쉽지는 않으나) 가능하다는 이유로 최근 자주 쓰이고 있습니다. (사실은 bst 파일을 수정하거나 작성하는 것이 너무 난해한 관계로 더 익숙한 latex 매크로 형식으로 인용 및 문헌목록을 작성하려는 요구에 부응했다는 느낌이 강합니다만.)

\addbibresource나 \printbibliography 같은 명령은 biblatex에서 제공하는 것입니다.

biblatex의 default backend engine은 biber입니다. 만약 bibtex으로 돌도록 하고 싶다면

\usepackage[backend=bibtex]{biblatex}

이렇게 선언해야 합니다. (이 샘플에서 굳이 이렇게 하여 bibtex을 부를 필요는 없다고 생각합니다.)

3. 컴파일 루트

biblatex을 사용한 문서에서 backend가 무엇이냐에 따라, 예컨대 biber라면

xelatex -> biber -> xelatex

순으로 컴파일해야 하고 bibtex으로 지정하였다면

xelatex -> bibtex -> xelatex

순으로 컴파일하여야 합니다. bibtex의 경우 최초는 한 번 더 컴파일하여야 할 수 있습니다.

4. 작업 흐름 자동화

overleaf에서는 이런 거 신경 안 써도 backend가 뭔지 알아서 다 해주지요? 이것을 "작업 흐름 자동화"라고 하는데, 앞서 잠시 언급한 spix나 arara 같은 것도 작업 흐름 자동화 유틸리티입니다. overleaf에서 사용하고 있는 것은 latexmk라는 것인데요, main.tex에 대하여

latexmk -xelatex main.tex

이렇게 명령을 내리면 biber가 될지 bibtex이 될지 소스를 분석하여 실행하여 줍니다. 한 번 더 컴파일해야 할 필요가 있는지도 확인해서 완성된 문서를 한 번의 명령으로 생성합니다.

TeXShop에서라면 다음과 같은 magic comment를 문서의 첫머리에 달면 되는데요,

%!TEX program = xelatexmk

만약 xelatexmk.engine을 발견할 수 없다고 하면, TeXShop의 "TeXShop 메뉴"에서 "~/라이브러리/TeXShop 폴더 열기"라는 항목을 선택하여 파인더에서 TeXShop 폴더를 여십시오. 그 하위 폴더 중에 Engines라는 것이 있는데 여기 들어가 보면 Inactive라는 폴더가 또 있습니다. 그 아래에 Latexmk라는 폴더에 보면 xelatexmk.engine이라는 파일이 있을 것인데 이것을 Engines 폴더(즉 ../../)로 복사하십시오.

이제 Cmd-T를 누르면 다 알아서 해줄 겁니다.

5. 첨언

biblatex은 굉장하고 엄청난 패키지이지만 사용법에 익숙해지는 데는 상당한 공부가 필요합니다. 그건 또 그것대로 재미있는 일이 될 것입니다.

 




XE Login