Работа в системе LaTeX
de301fb4

Заметки на полях (маргиналии)


Заметки на полях страницы делаются с помощью команды \marginpar с единственным обязательным аргументом — текстом заметки. Если в исходном тексте написано

Маргиналии (фонарики) --- заголовки в виде надписей\marginpar{!!!} на полях страниц.

то на печати вы увидите

Название \marginpar является сокращением английских слов, означающих "абзац на полях". Впрочем, текст заметки может состоять и из нескольких абзацев, разделяемых, как обычно, пустыми строками.

Если документ печатается в одну колонку и в " одностороннем" стиле (как в классах article или report без классовой опции twoside), то заметки выводятся по умолчанию на правое поле, а если документ печатается в одну колонку, но в "двустороннем" стиле, то на внешнее поле (правое, если страница имеет нечетный номер, и левое в противном случае). Если документ печатается в две колонки, то заметка всегда выводится на ближайшее поле (ближайшее к той колонке, в которую попала заметка).

У команды \marginpar предусмотрен и необязательный аргумент. Он размещается перед обязательным; если эта команда использована с необязательным аргументом, то текст, выводящийся на поля, будет зависеть от того, на правое или на левое поле попадает заметка: на правое поле будет выведен текст, приведенный в обязательном аргументе, на левое — текст, приведенный в необязательном аргументе. Таким образом можно, например, вывести на поля стрелку, указывающую на текст:

\marginpar[$\Longrightarrow$]{$\Longleftarrow$}

(см. раздел о командах, генерирующих стрелки в математических формулах).

По возможности заметки на полях помещаются на том же уровне, что и текст, к которым они относятся, но если этих заметок на каждой странице получается помногу (как в поэмах Кольриджа "Сказание о старом мореходе" или Маяковского "Про это"), то некоторые из них, во избежание наложений, будут сдвинуты вниз, а иногда даже перенесены на другую страницу (LaTeX сообщит об этом прискорбном событии во время трансляции).


Если текст набирается в одну колонку, то можно сделать так, чтобы заметки появлялись не на тех полях, на которых они должны быть согласно вышеописанным правилам, а на противоположных. Для этого надо дать команду \reversemarginpar. Существует еще и команда \normalmarginpar, возвращающая правила размещения заметок в исходное состояние.

Можно также менять параметры оформления самих заметок на полях. Эти параметры таковы:

\marginparwidth ширина строки на полях;
\marginparsep расстояние между полем и заметками;
\marginparpush минимальное расстояние по вертикали между соседними заметками.
Значения этих параметров устанавливаются автоматически, в зависимости от класса документа. Вам может понадобиться их изменить, если вы меняете размер полей и/или ширину текста и при этом хотите пользоваться командой \marginpar.

Внутри "блоков" (например, внутри аргумента команды \mbox или внутри окружения {tabular}, предназначенного для верстки таблиц) команду \marginpar применять нельзя.

  1)   Точнее говоря, от ее базисной линии: см. лекцию 8.
  2)   Или по-русски, если это предусмотрено в используемой вами русификации.
  3)   У вас может возникнуть искушение пометить все места, на которые надо сослаться, с помощью команды \label, а в окружении {theindex} получить номера страниц с помощью \pageref. При этом, однако, есть опасность, что TeX'у не хватит памяти для обработки такого огромного числа ссылок.
  4)

  В наших примерах мы используем русские буквы, хотя на самом деле использование русских букв в предметном указателе зависит от применяемой вами русификации. Прежде всего, в ее состав должна входить версия программы makeindex, учитывающая русский алфавитный порядок. Кроме того, иногда (например, при использовании русского варианта пакета babel) в idx-файл попадают не русские буквы, а их условные обозначения, а в других случаях (при использовании старых версий TeX'а) их шестнадцатеричные коды, и это создает дополнительные сложности. Возможны также сложности с буквой "ё" при сортировке. При подготовке этой книги использован вариант русификации (см. приложение E), где такие проблемы не возникают.
  5)   Напомним, что конкретное название программы и возможность использования русских букв может зависеть от используемой системы и русификации. См. приложения E и Ж
  6)   В том, конечно, случае, если в преамбуле была команда \makeindex.
  7)   Он может идти и позже — в зависимости от конкретной версии программы makeindex и ее отношения к русским буквам.
  8)   На верстку эти надпечатки не влияют.
  9)   Для каждого из файлов, включаемых в текст с помощью команды \include, создается отдельный aux-файл.


Содержание раздела