BibTeX
BibTeX — это программное обеспечение и формат данных для подготовки списков литературы и библиографических ссылок в научных публикациях, созданный Ореном Паташником и Лесли Лэмпортом в 1985 году. BibTeX традиционно используется в связке с системой компьютерной вёрстки LaTeX, но может применяться и с другими издательскими системами. Основная функция BibTeX — автоматизация формирования библиографии: автор указывает в тексте ключи цитируемых работ, а программа сама подбирает соответствующие записи из библиографической базы данных и форматирует их согласно заданному стилю.
История
Разработка BibTeX началась в 1985 году в рамках проекта по созданию системы LaTeX2.09. Орен Паташник (Oren Patashnik) и Лесли Лэмпорт (Leslie Lamport) стремились решить проблему ручного оформления библиографий, которая была трудоёмкой и подверженной ошибкам. Первая версия была выпущена в 1985 году. В 1988 году вышла версия 0.99, которая стала основой для всех последующих реализаций. Долгое время BibTeX оставался стандартом де-факто для библиографического управления в научном сообществе, особенно в математике, физике, информатике и инженерных науках. В 2010-х годах появилась альтернатива — biblatex, которая предоставляет более гибкие возможности и расширенный синтаксис, однако BibTeX продолжает широко использоваться благодаря своей простоте и совместимости с большим количеством существующих стилей.
Принцип работы
BibTeX работает в два этапа. На первом этапе пользователь создаёт один или несколько библиографических файлов (с расширением .bib), в которых записи описываются в структурированном текстовом формате. Каждая запись имеет уникальный ключ (например, knuth1984texbook) и содержит поля, такие как автор, название, год, издательство и т.д. На втором этапе при компиляции LaTeX-документа программа bibtex обрабатывает файл .aux, созданный LaTeX, находит в нём команды \cite{ключ}, извлекает соответствующие записи из .bib-файла, сортирует их (если требуется) и форматирует согласно выбранному стилевому файлу (с расширением .bst). Результат записывается в файл .bbl, который затем включается LaTeX в итоговый документ.
Формат файла .bib
Файл .bib представляет собой обычный текстовый файл, содержащий записи определённого типа. Каждая запись начинается с указания типа (например, @article, @book, @inproceedings) и ключа, после чего в фигурных скобках перечисляются поля.
Основные типы записей
- @article — для статей в научных журналах.
- @book — для книг.
- @inproceedings — для докладов на конференциях.
- @phdthesis — для диссертаций.
- @techreport — для технических отчётов.
- @misc — для прочих источников (веб-сайты, неопубликованные материалы и т.п.).
Основные поля
- author — имена авторов (обычно в формате «Фамилия, Имя»).
- title — название работы.
- year — год публикации.
- journal — название журнала (для @article).
- publisher — издательство (для @book).
- pages — страницы.
- volume — том.
- number — номер выпуска.
- doi — цифровой идентификатор объекта (DOI).
- url — веб-адрес.
Пример записи:
`` @article{einstein1905, author = {Einstein, Albert}, title = {Zur Elektrodynamik bewegter K{\"o}rper}, journal = {Annalen der Physik}, year = {1905}, volume = {322}, number = {10}, pages = {891--921} } ``
Стилевые файлы (.bst)
Стилевые файлы BibTeX (с расширением .bst) определяют, как именно будут отформатированы ссылки и список литературы. Они написаны на специальном стековом языке, который интерпретируется программой bibtex. Существует множество стандартных стилей, а также стили, созданные для конкретных журналов или издательств.
Стандартные стили
- plain — наиболее распространённый стиль; ссылки нумеруются в порядке цитирования, записи сортируются по алфавиту.
- unsrt — аналогичен
plain, но записи располагаются в порядке первого цитирования. - alpha — ссылки имеют буквенно-цифровые метки (например, [Ein05]).
- abbrv — сокращённые имена, названия журналов и т.д.
- acm — стиль Ассоциации вычислительной техники (ACM).
- ieeetr — стиль Института инженеров электротехники и электроники (IEEE).
Использование с LaTeX
Для использования BibTeX в документе LaTeX необходимо выполнить следующие шаги:
- В преамбуле документа указать используемый стиль:
\bibliographystyle{plain}. - В месте, где должен быть размещён список литературы, поместить команду:
\bibliography{имя_файла_без_расширения}. - В тексте документа цитировать источники с помощью команды
\cite{ключ}. - Скомпилировать документ в следующем порядке: LaTeX → BibTeX → LaTeX → LaTeX. Это необходимо для того, чтобы все ссылки и перекрёстные ссылки были корректно обработаны.
Альтернативы и развитие
biblatex
biblatex — это более современная система управления библиографией, разработанная Филиппом Леманном (Philipp Lehman) и выпущенная в 2006 году. В отличие от BibTeX, biblatex использует для форматирования не отдельный стилевой файл .bst, а пакет LaTeX, что даёт большую гибкость и возможность настройки с помощью опций пакета. biblatex поддерживает расширенный набор типов записей и полей, а также имеет встроенную поддержку Unicode. Для обработки данных biblatex может использовать как традиционный BibTeX, так и Biber — собственную программу-обработчик, которая лучше поддерживает современные кодировки и сложные структуры данных.
Другие инструменты
- Biber — программа-обработчик для biblatex, поддерживающая Unicode, UTF-8, сложные сортировки и динамические поля.
- JabRef — кроссплатформенный графический редактор файлов
.bibс открытым исходным кодом. - Zotero и Mendeley — менеджеры ссылок, которые могут экспортировать библиографические данные в формат BibTeX.
Применение
BibTeX широко применяется в академической среде для подготовки диссертаций, статей, книг и отчётов. Его использование особенно распространено в областях, где LaTeX является стандартом: математика, физика, информатика, инженерия, экономика и лингвистика. Многие научные журналы и издательства предоставляют стилевые файлы .bst для своих публикаций, что позволяет авторам автоматически форматировать библиографию в соответствии с требованиями конкретного издания.
Критика
Несмотря на широкое распространение, BibTeX имеет ряд недостатков:
- Сложность синтаксиса — формат полей и экранирование специальных символов (например, умляутов) могут быть неинтуитивными.
- Ограниченная поддержка Unicode — оригинальный BibTeX работает только с ASCII-символами, что создаёт проблемы при работе с нелатинскими алфавитами.
- Отсутствие гибкости — изменение стиля требует написания или модификации сложного файла
.bstна стековом языке. - Проблемы с сортировкой — сортировка по фамилиям авторов может быть некорректной для неанглоязычных имён и фамилий с приставками.
Эти недостатки частично решаются в biblatex и Biber, которые постепенно вытесняют оригинальный BibTeX в новых проектах.
Интересные факты
- Название «BibTeX» происходит от слов «bibliography» (библиография) и «TeX» (система вёрстки).
- Орен Паташник, один из создателей BibTeX, также известен как автор игры «Adventure» (Colossal Cave Adventure).
- Формат
.bibиспользуется не только с LaTeX, но и с другими системами, такими как ConTeXt и Pandoc.
Источники
- Patashnik, Oren. "BibTeXing." Documentation for BibTeX version 0.99, 1988.
- Lamport, Leslie. "LaTeX: A Document Preparation System." Addison-Wesley, 1986.
- Lehman, Philipp. "The biblatex Package: Programmable Bibliographies and Citations." 2006.
- Официальная документация пакета biblatex (CTAN).
- Руководство пользователя JabRef.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →