Сноски, заметки на полях и оформление кода
Сноски добавляют вспомогательную информацию, не прерывая основной текст; заметки на полях дают короткие напоминания, а код в зависимости от длины оформляют строчным моноширинным текстом, дословным выводом или блоками с подсветкой. Используйте все три средства умеренно.
Настройка EasyLaTeX для русского текста: XeLaTeX с fontspec и babel; для заметок на полях нужен marginnote, для блоков кода — listings. Последний подходит для приведённых здесь ASCII-примеров, но ограниченно поддерживает Unicode. Для многоязычного кода выберите совместимую дословную или подсвечиваемую среду с движком, поддерживающим Unicode.
Добавление сносок
Используйте \footnote{...} там, где нужно пояснение:
Для этого термина используется стандартное отраслевое определение\footnote{Формулировка может немного отличаться в разных стандартах.}.LaTeX нумерует сноски и размещает их внизу страницы. Используйте их для источников, исключений и коротких пояснений, а не для нового развёрнутого рассуждения.
Разделение знака сноски и текста
Там, где обычная сноска напрямую не работает, например в некоторых таблицах и заголовках, разделите знак и текст:
Подпись таблицы\footnotemark...\footnotetext{Эти данные округлены.}Держите команды рядом на одной странице и сопоставляйте по порядку. Для сложных табличных сносок следуйте шаблону или используйте специализированное решение.
Заметки на полях
LaTeX предоставляет \marginpar; \marginnote удобен для коротких комментариев в текущем месте:
\usepackage{marginnote}Этот вывод нужно проверить.\marginnote{Нужен источник}Заметки занимают место в полях, а в двусторонних документах нужно учитывать сторону. Пишите кратко, чтобы не столкнуться с колонтитулами, сносками или другими заметками.
Код внутри строки
Для коротких команд, имён файлов и переменных используйте \texttt:
Основной файл обычно называется \texttt{main.tex}.Для буквального содержимого, в котором нет выбранного разделителя, используйте \verb|...|:
\verb|\section{Заголовок}|\verb нельзя применять в аргументах команд, например в заголовках разделов, подписях и обычных сносках. В этих местах используйте экранированный текст с \texttt или подходящую команду пакета.
Блоки кода
Для небольшого объёма дословного текста используйте verbatim:
\begin{verbatim}main.texfigures/result.pdf\end{verbatim}Для нумерации, переноса длинных строк и подсветки синтаксиса используйте listings:
\usepackage{listings}\usepackage{xcolor}\lstset{ basicstyle=\ttfamily\small, frame=single, breaklines=true}\begin{lstlisting}[language=Python]total = sum(values)print(total)\end{lstlisting}Сохраняйте отступы и объясняйте входные данные, результат или назначение блока, а не оставляйте фрагмент без пояснения.
Частые проблемы
Сноски переходят на следующую страницу
Причиной может быть нехватка места. Сократите сноску, измените структуру основного текста или перенесите связанное предложение на следующую страницу. Не пытайтесь вернуть сноску большими отрицательными интервалами.
Заметки на полях перекрываются
Сократите их, уменьшите количество на странице или используйте сноски. Заметки на полях не подходят для плотного комментирования и существенного основного содержимого.
В listings искажается текст не из ASCII
listings ограниченно поддерживает Unicode. Используйте его для поддерживаемого кода либо выберите дословную среду или подсветку с Unicode, уже настроенную в шаблоне проекта.
Полный пример
\documentclass[a4paper,12pt]{article}\usepackage{fontspec}\setmainfont{CMU Serif}\setsansfont{CMU Sans Serif}\setmonofont{CMU Typewriter Text}\usepackage[russian]{babel}\usepackage{marginnote}\usepackage{listings}\usepackage{xcolor}\lstset{basicstyle=\ttfamily\small, frame=single, breaklines=true}\begin{document}Используйте \texttt{main.tex} как основной файл\footnote{Единственная точка входа сборки проекта.}.\marginnote{Проверьте движок перед компиляцией}\begin{lstlisting}[language=Python]total = sum(values)print(total)\end{lstlisting}\end{document}