BibTeX
Материал из MachineLearning.
BibTeX — это программное обеспечение для создания форматированных списков библиографии. BibTeX позволяет легко работать со списками источников, отделяя библиографическую информацию от её представления. BibTeX используется совместно с LaTeX'ом, и входит во все известные дистрибутивы TeX и LaTeX, включая MiKTeX.
BibTeX разработали Орен Паташник и Лесли Лампорт в 1985 году.
Содержание |
Использование
При подготовке статьи, отчета или диссертации в формате LaTeX гораздо удобнее пользоваться системой BibTeX, чем собирать библиографию вручную.
Основные преимущества BibTeX:
- список литературы генерируется автоматически по всем ссылкам
\cite
, упомянутым в тексте; - можно использовать единую библиографическую базу (bib-файл) во всех своих текстах, во всех работах отдела, и т. д.;
- легко обмениваться библиографическими базами с коллегами;
- нет необходимости помнить правила оформления библиографии, так как BibTeX делает эту работу автоматически с помощью стилевых bst-файлов.
Для вызова BibTeX'а достаточно заменить стандартное LaTeX-овское окружение thebibliography
командами
\bibliographystyle{gost780s} %% стилевой файл для оформления по ГОСТу \bibliography{MachLearn} %% имя библиографической базы (bib-файла)
Можно использовать несколько библиографических баз одновременно (тогда их имена указываются через запятую).
Тексты, использующие BibTeX, необходимо обрабатывать 4 раза: первый проход LaTeX, затем BibTeX, и еще два прохода LaTeX. В редакторе WinEdt есть команда TeXify (голубой лев из панели инструментов), которая выполняет все необходимые вызовы автоматически.
Библиографические базы: bib-файлы
BibTeX использует bib-файлы специального текстового формата для хранения списков библиографических записей. Каждая запись описывает ровно одну публикацию — статью, книгу, диссертацию, и т. д. Примеры bib-записей и результаты их представления на печати можно посмотреть в pdf-файле Gost780.pdf, иллюстрирующем ГОСТ 7.80-2000.
Стили оформления библиографии: bst-файлы
BibTeX использует bst-файлы для описания того, как bib-записи преобразуются в текст на LaTeX'e. Каждый bst-файл представляет собой программу на простом стековом языке программирования, напоминающем FORTH или PostScript.
Русификация: csf-файлы
Языковая поддержка в полном объёме встроена в современные версии LaTeX и BibTeX. Однако среда редактирования, из которой вызывается LaTeX и BibTeX, может «не знать» о том, что при вызове BibTeX'у необходимо указывать имя специального csf-файла, содержащего такой пустяк, как информацию о правильном порядке букв в русском (и вообще, в любом не-латинском) алфавите:
bibtex8.exe --huge --csfile "cp1251.csf"
Если в эту строку запуска не вставить опцию --csfile "cp1251.csf"
, то библиография будет неверно сортироваться по фамилиям, к тому же у всех русских авторов исчезнут инициалы.
Имя файла "cp1251.csf"
может зависеть от дистрибутива LaTeX
(данный пример ориентирован на MiKTeX).
Установка русифицированного BibTeX в систему MikTeX и WinEdit
Для установки русских стилей оформления библиографии (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.
Затем необходимо перегенерировать базу имен с помощью конфигуратора MiKTeX Options: Refresh Formats, Update FNDB.
Теперь дело за малым: надо сделать так, чтобы BibTeX запускался не обычной командой bibtex8.exe, а командой с опцией --csfile, которая как раз и отвечает за корректную русификацию:
bibtex8.exe --huge --csfile "cp1251rus.csf"
В среде WinEdt 5.2 (возможно, и других версий тоже) для этого надо изменить два скрипта в директории WinEdt\Bin\TeX (новая версия WinEdit устанавливается по умолчанию в C:\Program Files\WinEdt Team\WinEdt).
1. Скрипт запуска BibTeX.bat:
@ECHO OFF bibtex8.exe --huge --csfile "cp1251rus.csf" %1 %2 %3 %4 %5 %6 %7 %8 %9
2. Скрипт запуска TeXify.bat, в котором надо добавить команду set, указывающую полный путь к скрипту запуска BibTeX:
@ECHO OFF set BIBTEX=C:\Program Files\WinEdt\Bin\TeX\BibTeX.bat TEXIFY.EXE --run-viewer %1 %2 %3 %4 %5 %6 %7 %8 %9
После этого русифицированный BibTeX готов к работе в связке MiKTeX+WinEdt в случае, если WinEdit имеет версию 4. WinEdit версии 5 и выше запускает компилятор TeX в зависимости от настроек конфигурационного файла. Для того, чтобы WinEdit запускал вышеуказанные bat-файлы нужно в файле TeXConfig.edt (по умолчанию находится в папке C:\Program Files\WinEdt Team\WinEdt\Exec) поставить единицу вторым параметром в строках:
Assign("BATCH-TeXify","1"); Assign("BATCH-BibTeX","1");
Тексты, использующие BibTeX, необходимо обрабатывать 4 раза: первый проход LaTeX, затем BibTeX, и еще два прохода LaTeX. Команда TeXify (голубой лев из панели инструментов WinEdt) выполняет все необходимые вызовы автоматически.
Заметка: в случае ошибки компилирования файлов BibTeX рекомендуется вручную удалить фйлы с расширением .aux, .bbl, .blg из рабочей директории, т.к. при повторной компиляции LaTeX использует эти файлы и сохраняет сообщение об ошибке.
Конвертирование библиографий из BibTeX в HTML
Существует несколько способов сгенерировать HTML по BibTeX'овской библиографической базе.
BibTeX на MachineLearning.RU
Страницы публикаций, находящиеся в категории Категория:Публикации, содержат библиографические записи в формате bib. Эти записи генерируются автоматически такими шаблонами, как {{Монография}} — подробнее см. MachineLearning:Публикации и библиографии. Эти записи можно копировать в собственную библиографическую базу.
В будущем планируется реализовать автоматическую генерацию bib-файла по любой подкатегориии в категории Категория:Публикации.
Ссылки
- ГОСТ 7.80-2000
- ГОСТы — российские стандарты на библиографические записи, с сайта Государственной системы научно-технической информации (ГСНТИ).
- ГОСТ 71-2003 — новый ГОСТ по библиографическим записям.
- Gost780.pdf — демонстрация оформления библиографии по ГОСТ 7.80-2000 средствами BibTeX при использовании библиографических стилей
gost780s.bst
иgost780u.bst
, входящих в состав последних версий дистрибутива MiKTeX. - MachLearn.zip — библиографическая база по машинному обучению и некоторым смежным темам, собранная К. В. Воронцовым. Требует установки модифицированных bst-файлов
gost780sv.bst
иgost780uv.bst
— Bib-gost-vokov.zip.