BibTeX
BibTeX это программное обеспечение для создания форматированных списков библиографии. BibTeX используется совместно с LaTeX'ом, и входит во все известные дистрибутивы TeX и LaTeX, включая MiKTeX.
BibTeX был создан Ореном Паташником (англ.) и Лесли Лампортом (англ.) в 1985 году. BibTeX позволяет легко работать со списками источников, отделяя библиографическую информацию от её представления. Принцип отделения содержимого от его представления использован как в самом LaTeX’е, так и в XHTML, CSS и др.
Использование
При подготовке статьи, отчёта или диссертации в формате LaTeX гораздо удобнее пользоваться системой BibTeX, чем собирать библиографию вручную.
Основные преимущества BibTeX:
- список литературы генерируется автоматически по всем ссылкам
\cite, упомянутым в тексте; - можно использовать единую библиографическую базу (bib-файл) во всех своих текстах, во всех работах отдела, и т. д.;
- легко обмениваться библиографическими базами с коллегами;
- нет необходимости помнить правила оформления библиографии, так как BibTeX делает эту работу автоматически с помощью стилевых bst-файлов.
Для вызова BibTeX’а достаточно заменить стандартное LaTeX-овское окружение thebibliography командами
\bibliographystyle{gost780s} %% стилевой файл для оформления по ГОСТу
\bibliography{MachLearn} %% имя библиографической базы (bib-файла)
Можно использовать несколько библиографических баз одновременно (тогда их имена указываются через запятую).
Тексты, использующие BibTeX, необходимо обрабатывать 4 раза: первый проход LaTeX (создание aux-файла с запросами ссылок), затем BibTeX (создание bbl-файла с библиографией, готовой для вставки в TeX-исходник), и ещё два прохода LaTeX (подцепление библиографии и актуализация номеров ссылок). В редакторе WinEdt есть команда TeXify (голубой лев из панели инструментов), которая выполняет все необходимые вызовы автоматически.
Библиографические базы: bib-файлы
BibTeX использует bib-файлы специального текстового формата для хранения списков библиографических записей. Каждая запись описывает ровно одну публикацию — статью, книгу, диссертацию, и т. д.
Bib-файлы можно использовать для хранения библиографических баз данных. Многие программы, работающие с библиографиями, (такие, как JabRef) и онлайн-сервисы цитирования (ADS[1], CiteULike) могут экспортировать ссылки в bib-формат.
Каждая запись выглядит следующим образом:
@ARTICLE{tag,
author = "Список авторов",
title = "Название статьи",
year = "год",
journal = "Название журнала",
}
Здесь ARTICLE — тип записи («статья»), tag — метка-идентификатор записи (которая позволяет ссылаться в тексте с помощью \cite{tag}), дальше список полей со значениями.
Типы записей
Каждая запись должна быть определённого типа, описывающего тип публикации. Следующие типы являются стандартными и обрабатываются почти всеми стилями BibTeX (расположены по алфавиту названия и содержат списки полей, возможные поля см. ниже):
article- Статья из журнала.
Небходимые поля: author, title, journal, year
Дополнительные поля: volume, number, pages, month, note, key book- Определённое издание книги.
Небходимые поля: author/editor, title, publisher, year
Дополнительные поля: volume, series, address, edition, month, note, key, pages booklet- Печатная работа, которая не содержит имя издателя или организатора (например, самиздат).
Небходимые поля: title
Дополнительные поля: author, howpublished, address, month, year, note, key conference- Синоним
inproceedings, оставлено для совместимости с Scribe.
Небходимые поля: author, title, booktitle, year
Дополнительные поля: editor, pages, organization, publisher, address, month, note, key inbook- Часть книги, возможно без названия. Может быть главой (частью, параграфом), либо диапазоном страниц.
Небходимые поля: author/editor, title, chapter/pages, publisher, year
Дополнительные поля: volume, series, address, edition, month, note, key incollection- Часть книги, имеющая собственное название (например, статья в сборнике).
Небходимые поля: author, title, booktitle, year
Дополнительные поля: editor, pages, organization, publisher, address, month, note, key inproceedings- Тезис (труд) конференции.
Небходимые поля: author, title, booktitle, year
Дополнительные поля: editor, series, pages, organization, publisher, address, month, note, key manual- Техническая документация.
Небходимые поля: title
Дополнительные поля: author, organization, address, edition, month, year, note, key mastersthesis- Магистерская диссертация.
Небходимые поля: author, title, school, year
Дополнительные поля: address, month, note, key misc- Использовать, если другие типы не подходят.
Небходимые поля: none
Дополнительные поля: author, title, howpublished, month, year, note, key phdthesis- Кандидатская диссертация.
Небходимые поля: author, title, school, year
Дополнительные поля: address, month, note, key proceedings- Сборник трудов (тезисов) конференции.
Небходимые поля: title, year
Дополнительные поля: editor, publisher, organization, address, month, note, key techreport- Отчёт, опубликованный организацией, обычно пронумерованный внутри серии.
Небходимые поля: author, title, institution, year
Дополнительные поля: type, number, address, month, note, key unpublished- Документ, имеющий автора и название, но формально не опубликованный.
Небходимые поля: author, title, note
Дополнительные поля: month, year, key
Поля записей
Каждая запись содержит некоторый список стандартных полей (можно вводить любые другие поля, которые просто игнорируются стандартными программами):
address: Адрес издателя (обычно просто город, но может быть полным адресом для малоизвестных издателей)annote(в JabRef —abstract): Аннотация для библиографической записи.author: Имена авторов (если больше одного, то разделяютсяand)booktitle: Наименование книги, содержащей данную работу.chapter: Номер главыcrossref: Ключ кросс-ссылки (позволяет использовать другую библио-запись в качестве названия, например, сборника трудов)edition: Издание (полная строка, например, «1-е, стереотипное»)editor: Имена редакторов (оформление аналогично авторам)eprint: A specification of an electronic publication, often a preprint or a technical reporthowpublished: Способ публикации, если нестандартныйinstitution: Институт, вовлечённый в публикацию, необязательно издательjournal: Название журнала, содержащего статьюkey: Скрытое ключевое поле, задающее порядок сортировки (если «author» и «editor» не заданы).month: Месяц публикации (может содержать дату). Если неопубликовано — создания.note: Любые заметкиnumber: Номер журналаorganization: Организатор конференцииpages: Номера страниц, разделённые запятыми или двойным дефисом. Для книги — общее количество страниц.publisher: Издательschool: Институт, в котором защищалась диссертация.series: Серия, в которой вышла книга.title: Название работыtype: Тип отчёта, например «Заметки исследователя»url: WWW-адресvolume: Том журнала или книги.year: Год публикации (если неопубликовано — создания)
Дополнительно, каждая запись содержит ключевое поле, которое служит для цитирования или кросс-ссылок на эту запись. Это поле должно быть уникальным (в рамках использующей работы) и непустым. Это поле не имеет названия, не является частью других полей и идёт первым по-порядку.
Стили оформления библиографии: bst-файлы
BibTeX использует bst-файлы для описания того, как bib-записи преобразуются в текст на LaTeX'e. Каждый bst-файл представляет собой программу на простом стековом языке программирования, напоминающем FORTH или PostScript. Есть программы, позволяющие генерировать .bst-файлы автоматически (например, custom-bib или Bib-it).
Обычно BibTeX формирует вывод в формате TeX или LaTeX, но существуют и стилевые файлы для генерации формата HTML.
Многие журналы или издательства, которые принимают публикации в формате ЛаТеХ, снабжают также библиографическими стилями для авторов. Это удостоверяет, что стиль оформления библиографии также будет соответствовать требованиям издателя с минимальными усилиями.
При использовании дистрибутива MikTeX 2.8 (о состоянии ранних версий неизвестно) в стиле gost780u.bst и gost780s.bst (пакет gost) в сгенерированном списке литературы отсутствуют инициалы авторов, причём место под них выделяется, но по какой-то причине их нет.
Для устранения этой проблемы необходимо в файле [MIKTEX_INSTALL_FOLDER]\bibtex\bst\gost\gost780u.bst или gost780s.bst (в зависимости от используемого) исправить в строках 523 (блок FUNCTION {format.names}) и 534 (блок FUNCTION {format.names.rev})
#1 "{vv~}{ll}{~jj}{,~f.}" format.name$
на
#1 "{vv~}{ll}{~jj}{,~ff}" format.name$
Затем пересобрать документ в три прохода: LaTeX, BibTeX, LaTeX.
Русификация: csf-файлы
Языковая поддержка в полном объёме встроена в современные версии LaTeX и BibTeX. Однако среда редактирования, из которой вызывается LaTeX и BibTeX, может «не знать» о том, что при вызове BibTeX’у необходимо указывать имя специального csf-файла, содержащего такой пустяк, как информацию о правильном порядке букв в русском (и вообще, в любом не-латинском) алфавите:
bibtex8.exe --huge --csfile "cp1251.csf"
Если в эту строку запуска не вставить опцию --csfile "cp1251.csf", то библиография будет неверно сортироваться по фамилиям, к тому же у всех русских авторов исчезнут инициалы.
Имя файла "cp1251.csf" может зависеть от дистрибутива LaTeX
(данный пример ориентирован на MiKTeX).
Для установки русских стилей оформления библиографии (bst-файлов) и русских кодировок (csf-файлов) скачайте архив bibtex-rus.zip и распакуйте его с сохранением поддиректорий в локальной директории MiKTeX. В стандартном варианте она называется C:\localtexmf для поздних версий — C:\Program Files\localtexmf. При этом нужно проверить, что эта директория есть в списке корневых директорий MikTeX конфигуратора MiKTeX Options. Например, Programs->MikTeX2.7->MikTeX Options, вкладка Roots, добавить директорию C:\Program Files\localtexmf.
Пример
.bib-файл может содержать следующую запись, которая описывают математическую книгу:
@Book{Korn,
author = "Корн, Г. А. and Корн, Т. М.",
title = "Справочник по математике для научных работников и инженеров",
publisher = "«Наука»",
year = 1974,
address = "Москва",
language = "russian"
}
Если документ ссылается на эту книгу, библиографическая информация может быть оформлена несколькими способами в зависимости от выбранного стандарта оформления (APA, MLA, Chicago и др.). То, как LaTeX форматирует ссылку, зависит от способа вызова команды \cite и выбранного стиля оформления LaTeX-документа. Если команда \cite{Korn} вызывается внутри документа, то программа bibtex включает книгу в список литературы для документа и генерирует соответствующий код форматирования LaTeX. В окончательном виде ссылка может выглядеть, например, так:
- Корн Г.А., Корн Т.М. Справочник по математике для научных работников и инженеров. — М.: «Наука», 1974.
В зависимости от стилевого файла, BibTeX может переставлять фамилии и имена авторов, изменять регистр названий, опускать некоторые поля из .bib-файла, оформлять текст курсивом, добавлять знаки пунктуации и т. д. Так как один стилевой файл используется для всего списка литературы, то все библиографические ссылки оформляются единообразно с минимальным усилием авторов и редакторов.
Формат списка авторов
Префиксы фамилий, такие как von, van и der обрабатываются автоматически, если они начинаются со строчной буквы, чтобы отличать их от фамилий. Фамилии из нескольких слов отделяются от имён и отчеств (или средних имён) тем, что они идут сначала, а потом, через запятую, пишутся имена и отчества. Именные суффиксы, как Ср. или Мл. или III обычно обрабатываются с помощью второй запятой-разделителя, как в примере:
@Book{hicks2001,
author = "von Hicks, III, Michael",
title = "Design of a Carbon Fiber Composite Grid Structure for the GLAST
Spacecraft Using a Novel Manufacturing Technique",
publisher = "Stanford Press",
year = 2001,
address = "Palo Alto",
edition = "1st,",
isbn = "0-69-697269-4"
}
Вместо использования запятой, чтобы отделить именной суффикс от фамилии, можно выделить всё имя фигурными скобками: {Hicks III}.
Авторы должны отделяться словом and, а не запятыми или «и»:
@Book{Torre2008,
author = "Joe Torre and Tom Verducci",
publisher = "Doubleday",
title = "The Yankee Years",
year = 2008,
isbn = "0385527403"
}
Перекрёстные ссылки
BibTeX позволяет ссылаться на другие публикация с помощью поля crossref. В следующем примере тезис ссылается на сборник тезисов.
@INPROCEEDINGS {author:06,
title = {Название доклада},
author = {Первый Автор and Второй Автор},
crossref = {conference:06},
pages = {330—331},
}
@PROCEEDINGS {conference:06,
editor = {Первый Редактор and Второй Редактор},
title = {Proceedings of the Xth Conference on XYZ},
booktitle = {Proceedings of the Xth Conference on XYZ},
year = {2006},
month = {October},
}
При этом следует добавлять booktitle к записи сборника, чтобы избежать предупреждения BibTeX’а «empty booktitle».
Вывод LaTeX этого примера может выглядеть примерно так:
- Автор, Первый and Автор, Второй (October 2006), Название доклада, in: Proceedings of the Xth Conference on XYZ, pp 330—331.
См. также
Ссылки
- www.bibtex.org − официальный сайт BibTeX (англ.)
- Oren Patashnik, BibTeXing(англ.)
- Oren Patashnik, Desigining BibTeX Styles (англ.)
- Tame the Beast: The B to X of BibTeX (англ.)
- Образцы стилей библиографии(англ.)
- Статья о BibTeX на сайте MachineLearning
- Оформление по ГОСТ (ГОСТ 7.80-2000, ГОСТ 7.1—2003, ГОСТ_Р_7.0.5—2008)
- Стандартные стили по ГОСТ, входящие в MikTeX (ГОСТ 7.1 1984 и ГОСТ 7.80 2000).
- Gost780.pdf — демонстрация оформления библиографии по ГОСТ 7.80-2000 средствами BibTeX при использовании библиографических стилей
gost780s.bstиgost780u.bst, входящих в состав последних версий дистрибутива MiKTeX. - UTF-8 версии стилей для ГОСТ.
- О стилях ГОСТ
ar:ببتخ ceb:BibTeX cs:BibTeX da:BibTeX de:BibTeX en:BibTeX es:BibTeX fi:Bibtex fr:BibTeX fy:BibTeX gl:BibTeX it:BibTeX ja:BibTeX nl:BibTeX pl:BibTeX pt:BibTeX sv:Bibtex tr:Bibtex uk:BibTeX
Если вам нравится SbUP.com Сайт, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....