Управление библиографией LaTeX с BibTeX и biblatex
Отделяйте библиографические данные от представления. Прежде всего следуйте шаблону издательства или университета, затем выбирайте ручные записи, традиционный BibTeX или biblatex. В полных примерах ниже используются согласованные ключи цитирования и реальные книги, а не выдуманные записи DOI.
Выберите способ работы
| Способ | Подходящее применение | Основные команды |
|---|---|---|
thebibliography | Небольшой список без повторного использования | \bibitem и \cite |
| BibTeX | Шаблон, требующий стиль .bst | \bibliographystyle и \bibliography |
| biblatex | Гибкие стили при отсутствии противоречащих требований шаблона | \addbibresource и \printbibliography |
Ручному примеру не нужен .bib. Номера ссылок всё же могут потребовать повторных проходов LaTeX, которыми управляет платформа. Русские примеры компилируются XeLaTeX:
\documentclass[a4paper,11pt]{article}\usepackage{fontspec}\setmainfont{CMU Serif}\setsansfont{CMU Sans Serif}\setmonofont{CMU Typewriter Text}\usepackage[russian]{babel}\begin{document}Об основах вёрстки см.~\cite{knuth1984}.\begin{thebibliography}{9}\bibitem{knuth1984} Donald E. Knuth. \emph{The TeXbook}. Addison-Wesley, 1984.\end{thebibliography}\end{document}Создайте refs.bib
Создайте в дереве файлов refs.bib с этими двумя опубликованными книгами. Их ключи — knuth1984 и lamport1994:
@book{knuth1984, author = {Donald E. Knuth}, title = {The TeXbook}, publisher = {Addison-Wesley}, year = {1984}}@book{lamport1994, author = {Leslie Lamport}, title = {LaTeX: A Document Preparation System}, edition = {2}, publisher = {Addison-Wesley}, year = {1994}}Используйте базу повторно в разных проектах, но при смене библиографических систем проверяйте совместимость полей и стилей, особенно специальных полей.
Используйте biblatex и Biber
Оставьте базу в корне проекта и используйте такой основной файл:
\documentclass[a4paper,11pt]{article}\usepackage{fontspec}\setmainfont{CMU Serif}\setsansfont{CMU Sans Serif}\setmonofont{CMU Typewriter Text}\usepackage[russian]{babel}\usepackage[backend=biber,style=authoryear,maxcitenames=2]{biblatex}\addbibresource{refs.bib}\usepackage{hyperref}\begin{document}Основы вёрстки изложены в~\parencite{knuth1984}.\textcite{lamport1994} описывает подготовку документов в LaTeX.\printbibliography\end{document}backend=biberвыбирает библиографический процессор.style=authoryearвыбирает представление «автор — год».maxcitenames=2управляет отображением имён авторов в цитатах.\addbibresource{refs.bib}использует полное имя файла базы.\parencite,\textciteи\printbibliographyдают ссылки в скобках, ссылки в тексте и список литературы.
Выберите XeLaTeX в настройках редактора и запустите компиляцию. EasyLaTeX выполняет зависимые проходы LaTeX/Biber. Если после завершения задания остаётся [?], проверьте текущий журнал, ключи и пути.
Используйте BibTeX для шаблона .bst
В примере используется plainnat. Для предоставленного .bst укажите имя без расширения и сохраните настройки пакетов шаблона:
\documentclass[a4paper,11pt]{article}\usepackage{fontspec}\setmainfont{CMU Serif}\setsansfont{CMU Sans Serif}\setmonofont{CMU Typewriter Text}\usepackage[russian]{babel}\usepackage{natbib}\begin{document}Об основах вёрстки см.~\citep{knuth1984}.\bibliographystyle{plainnat}\bibliography{refs}\end{document}\bibliography{refs} — традиционная команда базы BibTeX. Не смешивайте её настройки и команды вывода с biblatex в одной конфигурации.
Измените стиль
Эти варианты заменяют существующую строку подключения biblatex; выбирайте один, не оба:
\usepackage[backend=biber,style=numeric]{biblatex}\usepackage[backend=biber,style=authoryear]{biblatex}Используйте специальный издательский стиль, например IEEE или APA, только при соответствии реальным требованиям и доступной конфигурации шаблона. Стиль определяет представление, а поля базы — доступную для вывода информацию. После изменения проверяйте имена, даты, порядок, том, страницы и DOI. Для русскоязычной статьи также следуйте конкретным требованиям организации или журнала, не предполагая единого стиля для всех изданий.
Частые проблемы
| Симптом | Где искать | Действие |
|---|---|---|
[?] или неразрешённый ключ | Текущее задание и библиографический журнал | Дождитесь обработки, затем изучите настройки и ключи |
Citation 'xxx' undefined | Текст и база | Согласуйте написание и регистр |
| Пустая библиография | Команды цитирования и вывода | Сошлитесь на запись и поставьте вывод до \end{document} |
| Нет файла | Дерево файлов и пути | Проверьте расположение .bib или .bst шаблона |
Дополнительные действия
Короткий список можно оставить ручным; не переносите рабочий издательский шаблон только ради смены инструментов. \printbibliography[type=book] фильтрует по типу; refsection позволяет организовать отдельные списки. Сначала получите рабочий минимальный проект и лишь затем добавляйте эти возможности.
Проверка полноты описана в двусторонней проверке цитирования.