Небольшой manual о том, как работать с библиографией в TeX-е. Точнее, речь пойдет о BibTeX-е - наборе пакетов, которые встроены по умолчанию в большинство дистрибутивов TeX и LaTeX, и которые позволяют намного более удобно работать с библиографией. Итак, как это работает:
0) Если кому интересно сразу посмотреть примеры - то вот они: вариант оформления статьи в виде revtex4-1 (
TeX,
PDF), вариант artictle (
TeX,
PDF), оба файла используют один и тот же файл библиографии
refs.bib.
1) Все ссылки помещаются в отдельный файл с расширением ".bib". Здесь и далее я буду называть его "refs.bib". Преимущества такого подхода:
- Один и тот же файл может быть использован для разный статей, т.е. в нем можно собрать всю свою коллекцию библиографии. BibTeX сам выбирает оттуда только те ссылки, которые используются. Сравните, например, файл refs.bib и итоговую статью PDF: в файле библиографии есть ссылки (Landau - Lifshitz), которые не используются в тексте статьи TeX, и поэтому не появляются в итоговой статье PDF.
- Из одного и того же файла "refs.bib" BibTeX сам форматирует библиографию согласно заданному стилю статьи. В разные журналы требуется разное оформление библиографии - и вместо вас это может делать BibTeX. См. например статьи PDF1 (revtex4-1) и PDF2 (article) - в обоих случаях используется один и тот же файл библиографии refs.bib. При этом, нумерация ссылок в статье в порядке их появления в тексте осуществляется автоматически (сравните refs.bib, TeX, PDF).
- Понятное дело, при таких возможностях файл "refs.bib" не может не быть форматированным. И заполнять его самостоятельно согласно правилам такого форматирования - не слишком приятная штука. Но! Одно из самых классных обстоятельств в работе с BibTeX заключается в том, что файл "refs.bib" и не нужно форматировать самостоятельно. Почти все нам предоставит Google Scholar (см. ниже).
Файл "refs.bib" имеет следующую структуру:
@article{falkovich2004non,
title={{Non-Gaussian error probability in optical soliton transmission}},
author={Falkovich, G. and Kolokolov, I. and Lebedev, V. and Mezentsev, V. and Turitsyn, S.},
journal={Physica D: Nonlinear Phenomena},
volume={195},
number={1},
pages={1--28},
year={2004},
publisher={Elsevier}
}
@article{bale2010intracavity,
title={{Intracavity dynamics in high-power mode-locked fiber lasers}},
author={Bale, B. G. and Boscolo, S. and Kutz, J. N. and Turitsyn, S. K.},
journal={Physical Review A},
volume={81},
number={3},
pages={033828},
year={2010},
publisher={APS}
}
Объявлений начала и конца у этого файла нет, нужно просто создать пустой текстовый файл, и начать вносить в него в любом порядке записи @article{ ... }, каждая из которых обозначает ссылку на статью. Здесь "falkovich2004non" и "bale2010intracavity" - имена ссылок, по которым вы потом будете вставлять references в тело статьи.
Одно из самых замечательных обстоятельств в использовании BibTeX - это то, что совершенно не обязательно самому форматировать данные каждой статьи чтобы делать записи @article{ ... } в "refs.bib". Тут нам приходит на помощь Google.
Итак, идем в
Google Scholar, заходим сразу же в "Настройки" (нужно чтобы у вас был аккаунт в Google), смотрим "Менеджер библиографий", кликаем на "Показывать ссылки для импорта цитат в BibTex", и сохраняем настройки. Теперь идем в
Google Scholar опять, ищем нужную нам статью, например по фразе "Non-Gaussian error probability in optical soliton transmission", находим статью в результатах поиска (в данном случае результат всего один), и кликаем там на ссылку "Импортировать в BibTeX". По этой ссылке будет написано как раз что нам нужно:
@article{falkovich2004non,
title={Non-Gaussian error probability in optical soliton transmission},
author={Falkovich, G and Kolokolov, I and Lebedev, V and Mezentsev, V and Turitsyn, S},
journal={Physica D: Nonlinear Phenomena},
volume={195},
number={1},
pages={1--28},
year={2004},
publisher={Elsevier}
}
Копируем это все в refs.bib, и далее немного корректируем. Во-первых, полезно ставить двойные фигурные скобки для названия title - вот так: {{ ... }}. В этом случае название статьи будет в бибилиографии написано ровно так, как оно стоит в фигурных скобках. В противном случае можно получить только одну заглавную букву, например вот так: "Non-gaussian error probability in optical soliton transmission". Во-вторых, имеет смысл одинаковым образом во всем файле писать имена авторов. Бывает так, что встречается написание авторов в виде "Falkovich, G", или "Falkovich, Gregory", или еще отчество (второе имя) указывают. Я обычно во всех случаях форматирую имена авторов как "Falkovich, G.".
Кстати, бывает что для грантов нужно указывать издательство - как видим, его легко найти через тот же Google Scholar.
2) Итак, файл "refs.bib" мы составили, теперь начинаем им пользоваться. Вместо обычного объявления библиографии в тексте статьи, типа
\begin{thebibliography}{99}
...
\end{thebibliography}
пишем
\bibliography{refs}
Здесь refs - это имя файла "refs.bib", файл должен лежать в той же директории, что и тело статьи.
Далее, нужно проследить, чтобы в статье команда "\bibliographystyle" (ее можно ставить как в шапке, так и непосредственно перед библиографией) встречалась только один раз (иначе при компиляции будет ошибка). Некоторые стилевые файлы оформления статьи, например встроенные в TeX revtex4 и revtex4-1, уже в себе имеют эту команду \bibliographystyle. Поэтому если у вас в шапке статьи стоит что-то вроде "\documentclass{revtex4-1}", то нужно проследить чтобы команд "\bibliographystyle" в тексте статьи больше не было (сравните
TeX1 и
TeX2).
Если есть возможность выбрать стиль библиографии, я обычно выбираю "\bibliographystyle{ieeetr}". В этом случае TeX сам нумерует ссылки в тексте в порядке их появления.
Все! Компилируем статью, получаем нашу библиографию.
3) Некоторые журналы не принимают отдельные файлы библиографии. Обойти этот момент очень просто. При компиляции статьи создается файл с расширением ".bbl". В нем содержится вся наша правильно отформатированная и отсортированная библиография. Просто заменяем команду "\bibliography{refs}" на то, что найдем в этом файле. Все! Теперь текст статьи содержит автономную (не зависимую от "refs.bib") библиографию в том самом виде, в каком нужно для вашей статьи.