BibTeX - это система верстки библиографических списков. Суть в том, что создается специальная база печатных работ - в отдельном файле. Можно делать отдельную базу на каждую свою работу можно - одну большую, можно - тематические, дело вкуса. Затем указывается стиль библиографии (можно в преамбуле, рядом со стилем документа). В нужном месте ставится одна команда, предписывающая создать библиографию по заданным базам.
Вы умеете оформлять списки литературы по ГОСТу? Если умеете, то это доставляет Вам удовольствие? Тогда бибтех Вам не нужен! А мне доставляет удовольствие оформить список своих трудов по ГОСТу двумя командами. База моих работ у меня уже есть и я ее только пополняю. Многие журналы предоставляют свой стилевик - и не надо вчитываться в примеры - год в скобках, том, запятая, страницы, тире...
Записи базы имеют вид @ARTICLE, @BOOK и т.п. - их много, есть даже @UNPUBLISHED.
Далее в фигурных скобках идет содержание. Обязательно идентификатор (по которому ссылаемся на работу в тексте). Для каждой записи есть свои обязательные и возможные поля. Так, для статей необходимо указать автора, допустимо - издательство. Поля, которые не являются ни обязательными, ни возможными для данного типа записей, игнорируются. Поля указываются в стиле поле = значение, разделяются запятыми (это важно, пропущенные запятые - основная ошибка). Текстовое значение - в кавычках, числовое можно - без. В ряде случаев возможны перекрестные ссылки, например, отдельной записью описать сборник, а отдельно - главу в сборнике со ссылкой на этот сборник. Регистр символов не важен. Вот пример (не судите строго, это просто пример):
@ARTICLE{Diff,
author = "Ньютон, И. and Лейбниц, Готфрид",
title = "Исчисление бесконечно-малых и формула {$\int_a^bF'(x)dx=F(b)-F(a)$}",
journal = "Труды Королевского Научного Общества",
publisher = "Научное Общество Ее Величества",
edition = "1-ое, исправленное и дополненное",
series = "Классики математики",
volume = 1,
issue = 1,
year = 1700,
address = "London, UK",
pages = "900",
note = "Фундаментальный труд классиков.",
}
Не все поля здесь обязательны. Система, надеюсь, ясна. Авторы разделяются словом and, а запятая отделяет инициалы (или полное имя). Вторая запятая отделяет титул или что-нибудь в таком духе. Формулы LaTeX допускаются, но их лучше заключать в фигурные скобки, так как они запрещают менять текст. В противном случае возможно, что будет f вместо F. Если в заглавии слово с большой буквы, его тоже лучше заключить в фигурные скобки. Когда библиографическая база (пусть она лежит в файле mathan.bib) готова, Вы в своей работе можете ссылаться на публикации обычным образом: \cite{Diff}. Библиографию создают две команды:
\bibliographystyle{gost2008s} % Стиль - ГОСТ-2008 (стандартный пакет gost, идет в поставке современных сборок ТеХ) с сортировкой по алфавиту.
\bibliography{mathan} % Имя библиографической базы (bib-файла)
Сама библиография будет лежать в файле с расширение .bbl - оттуда ее можно вытащить, если bibtex почему-то нельзя использовать. Иногда бывает так, что теху не хватает соображения переделать bbl - и тогда непонятно, почему ничего не меняется. У меня было неоднократно, после ошибок компиляции. Решается армейским способом: удалением .bbl файла и перекомпиляцией.
Если в работе только одна ссылка, то bbl содержит обычное окружение bibliography с одной записью:
\bibitem{Diff}
\selectlanguageifdefined{russian}
\BibEmph{Ньютон~И.,~с.} Исчисление бесконечно-малых и формула
{$\int_a^bF'(x)dx=F(b)-F(a)$}~/ с.~Ньютон, И., Г.~Лейбниц~// \BibEmph{Труды Королевского Научного Общества}. "---
\newblock 1700. "---
\newblock \CYRT.~1. "---
\newblock {\cyr\CYRS.}~3--900.
Есть возможность добавлять библиографические ссылки в список без ссылок на них в тексте - командой \nocite.
Особенно приятно оформлять сложные ссылки - статья автора во втором томе сборника серии под редакцией.
Есть два обработчика библиографии: bibtex и bibtex8. Второй умеет работать с национальными кодировками - для этого имеется специальный файл, описывающий порядок букв и соответствие между строчными и прописными. Этот файл (он имеет расширение .csf) надо указать в командной строке (в TeX-средах эти строки прописаны в настройках). Например,
bibtex8 -H -c cp1251.csf book.aux
aux-файл создается командой latex, там же будет информация о стиле библиографии и библиографических базах, а сортировку определяет csf-файл. Например, cp1251.csf определяет порядок сортировки "русские в обычном порядке, затем латинские, в обычном порядке". Стиль библиографии тоже должен поддерживать сортировку, например, gost2008s.bst Я не говорил, что стили библиографии имеют расширение .bst?
Потом нужно снова вызвать latex, иногда и дважды, чтобы все утряс. И все.
Достаточно подробное описание системы есть в Википедии - главное, это типы записей и обязательные и допустимые поля для каждой.
Еще описание на официальном сайте./
Книга на Wikibooks.
Хорошее краткое описание здесь.
Небольшое описание сделал и я.
Отдельно скажу про ГОСТ. Есть такие стандарты на оформление библиографии, ну вы знаете. На самом деле их много, последние - GOST 7.0.5-2008 и GOST 7.1-200, и они весьма отличаются от предыдущего ГОСТа 2001 года. Метод обучения на примерах старших товарищей приводит к тому, что библиографию оформляют именно по тем старым правилам, и то неправильно. К счастью, обычно всем как обычно, но зачем нам этот меч над головой? Не нужен. В вашем ТеХе наверняка уже стоит пакет gost, решающий все или почти все ваши проблемы. Вот ссылка на него и его документацию. У меня была проблема с сортировкой в кодировке Windows - надо, оказывается, заменить концы строк на те, что приняты в UNIX (я работаю под Linux). Собственно, проблема: bibtex8 почему-то не видел в файле необходимых полей и получалась пустая библиография. А bibtex все делал, но он не умеет сортировать. Точнее, умеет, но не совсем правильно - первыми идут англоязычные работы, тогда как обычно надо наоборот.