각주와 여백 주석

각주와 여백 주석은 본문의 흐름을 끊지 않고 보충 설명을 덧붙이는 두 가지 도구입니다. 각주는 번호가 붙은 주석을 페이지 아래쪽으로 보내고, 여백 주석은 본문 옆 여백에 짧은 주석을 둡니다. 이 페이지에서는 \footnote와 이를 나눈 형태인 \footnotemark / \footnotetext, footmisc package를 이용한 조정, 그리고 \marginparmarginnote package를 이용한 여백 주석을 각각 언제 쓰고 어디서 문제가 생기는지와 함께 살펴봅니다.

각주 — \footnote

기본 명령은 \footnote{text} 입니다. 이 명령을 쓴 위치에 LaTeX가 위첨자 번호(각주 표지)를 놓고, 해당 내용을 그 페이지 아래쪽에 조판합니다. 번호는 footnote counter로 자동 증가하므로 직접 매길 필요가 없습니다.

중요한 것은 놓는 위치 입니다. 각주 표지는 주석을 붙일 단어 바로 뒤에 와야 하므로 \footnote그 단어 바로 뒤에, 사이에 공백 없이 씁니다. 단어와 명령 사이에 공백이나 줄바꿈이 있으면 그 간격이 본문에 남아 표지가 단어에서 떨어집니다. 구두점과의 관계에서는 보통 구두점 에 둡니다.

latex
TeX は 1978 年に生まれました\footnote{作者はクヌース。}。
その数式組版は今も標準です\footnote{arXiv も LaTeX を推奨。}

특정 번호를 강제로 쓰려면 \footnote[num]{text} 라고 씁니다. 대괄호로 번호를 주면 그 호출에서는 해당 번호로 표지를 만들고 footnote counter를 증가시키지 않습니다. 같은 각주를 두 위치에서 참조할 때 유용합니다.

번호의 표시 모양\thefootnote가 정합니다. 아라비아 숫자 대신 기호(†, ‡ 등)를 쓰려면 \renewcommand{\thefootnote}{\fnsymbol{footnote}}를 사용합니다. \fnsymbol은 1-9를 별표, 단검표 등으로 매핑하므로 주석이 적은 문서에 알맞습니다. 같은 방식으로 \alph, \roman 등으로 바꿀 수도 있습니다.

표지와 내용을 나누기 — \footnotemark / \footnotetext

\footnote바깥쪽 문단 모드 에서만 제대로 작동합니다. 그래서 표(tabular) 안, \caption 안, 절 제목 명령(\section 등)의 인수 안, minipage 같은 곳에서는 표지가 나오지 않거나 내용이 사라질 수 있습니다. 이런 위치를 위한 우회 방법이 표지와 본문을 따로 놓는 두 명령입니다.

  • \footnotemark — 그 자리에 표지(번호)만 놓습니다. 인수가 없으면 footnote counter를 1 증가시키고, \footnotemark[num]은 counter를 증가시키지 않고 그 번호를 사용합니다.
  • \footnotetext{text} — 각주 본문만 페이지 아래쪽에 놓습니다. \footnotemark 뒤의 바깥쪽 문단 모드 위치에 쓰며, \footnotetext[num]{text}로 번호를 맞출 수 있습니다.

전형적인 패턴은 이렇습니다. 표 안에서는 \footnotemark로 표지만 내보내고, 표(또는 minipage)를 빠져나온 본문 쪽에서 \footnotetext{…}에 내용을 씁니다. 번호가 어긋나지 않게 하려면 \footnotemark[7]\footnotetext[7]{…}처럼 명시적으로 맞추는 것이 가장 안전합니다.

latex
\begin{tabular}{ll}
  項目 A & 値\footnotemark[1] \\
  項目 B & 値 \\
\end{tabular}
\footnotetext[1]{この値は暫定です。}

minipage 안의 각주는 특별합니다. minipage 안에서 \footnote를 쓰면 각주가 페이지 아래쪽이 아니라 minipage 아래 에 조판되고, 번호도 footnote가 아니라 mpfootnote counter로 관리되며 기본 표시가 소문자 알파벳(a, b, c...)입니다. 즉 본문 각주 번호와 독립적이고 minipage 안에서만 완결됩니다.

footmisc로 각주 조정하기

표준 각주의 동작을 더 세밀하게 바꾸고 싶다면 널리 쓰이는 footmisc package를 불러옵니다. 프리앰블에 \usepackage[options]{footmisc}를 쓰고, 원하는 동작에 맞게 옵션을 조합합니다. 대표적인 옵션은 다음과 같습니다.

옵션효과
perpage페이지마다 각주 번호를 재설정합니다(각 페이지에서 다시 1부터 시작).
bottom각주를 반드시 페이지 맨 아래로 내립니다(본문이 짧은 페이지에서도 아래에 고정).
para여러 각주를 각각 줄바꿈하지 않고 하나의 문단처럼 이어서 조판합니다.
multiple인접한 여러 각주 표지를 구분 기호와 함께 깔끔하게 정리합니다.
symbol숫자 대신 기호(*, †, ‡...)로 각주에 표지를 붙입니다.

여백도 조정할 수 있습니다. 표지와 각주 본문 사이의 간격, 즉 각주의 왼쪽 여백은 footmisc가 제공하는 길이 \footnotemargin 으로 조정합니다. 예를 들어 \setlength{\footnotemargin}{1.8em}처럼 설정합니다.

latex
\usepackage[perpage,bottom,multiple]{footmisc}
% ページごとに番号リセット+最下部固定+隣接マーク処理

여백 주석 — \marginpar

본문 옆에 짧은 주석을 두고 싶을 때는 \marginpar{text} 를 사용합니다. 명령을 쓴 높이에 맞춰 여백에 작은 주석이 조판됩니다. 양면 조판(twoside)에서는 주석이 바깥쪽 여백 에 놓이며, 왼쪽 페이지와 오른쪽 페이지에서 자동으로 좌우가 바뀝니다.

좌우에 다른 문구를 쓰려면 \marginpar[left]{right} 라고 씁니다. 대괄호의 [left] 는 주석이 왼쪽 여백(왼쪽 페이지)에 나올 때의 텍스트이고, 중괄호의 {right} 는 오른쪽 여백에 나올 때의 텍스트입니다. 주석이 나오는 쪽을 뒤집으려면 \reversemarginpar, 기본값으로 되돌리려면 \normalmarginpar를 씁니다.

하지만 \marginpar에는 강한 제약 이 있습니다. 내부적으로 그림과 표처럼 float의 일종으로 처리되므로 float(figure/table) 안, 각주 안, 다른 \marginpar 안에서는 사용할 수 없습니다. 또한 한 문단만 넣을 수 있고, 가까운 줄에 여러 개를 두면 위치가 기대처럼 맞지 않아 겹치거나 밀릴 수 있습니다.

marginnote package — 제약이 적은 여백 주석

이런 제약을 피하고 싶다면 marginnote package의 \marginnote{text} 를 사용합니다. float를 쓰지 않는 방식이므로 \marginpar를 쓸 수 없는 float나 각주 안에서도 여백 주석을 놓을 수 있습니다. \marginpar와 마찬가지로 \marginnote[left]{right}로 좌우별 문구를 줄 수 있고, \reversemarginpar도 존중됩니다.

또한 \marginnote에는 세로 위치 오프셋 을 주는 두 번째 선택 인수가 있으며, 중괄호 에 씁니다. 형식은 \marginnote[left]{right}[offset]이고, [offset]에는 길이를 줍니다. 음수는 주석을 위로, 양수는 아래로 움직이므로 서로 겹칠 여백 주석을 수동으로 벌릴 때 편리합니다.

latex
\usepackage{marginnote}
...
本文の脇に注を付けます\marginnote{これは傍注。}。
少し上げたい場合\marginnote{上にずらす}[-1\baselineskip]

\marginnote는 주석을 현재 줄의 높이 에 그대로 놓기 때문에 \marginpar처럼 자동 충돌 회피를 시도하지 않습니다. 겹치면 위의 offset으로 밀어 조정합니다. \marginpar의 float 제약에서 자유로운 대신, \marginnote는 페이지를 넘어 분할될 수 없는 등 고유한 차이도 있다는 점을 기억해 두면 좋습니다.