Стиль Bibtex не найден

Стиль Bibtex не найден

Я делаю документ, в который хочу добавить библиографию. Поскольку я работаю в CentOS 7, и по умолчанию с texlive почти нет установленных пакетов, я установил bibtexизКТАНВеб-сайт.

В моем tex-файле я загружаю его так:

\usepackage[backend=bibtex]{biblatex}
\addbibresource{myBib.bib}

И у меня возникла такая ошибка:

I couldn't open style file biblatex.bst
---line 6 of file myDoc.aux
 : \bibstyle{biblatex
 :                   }
I'm skipping whatever remains of this command
I found no style file---while reading file myDoc.aux

Так как я не нашел bibtex.bstфайл на CTAN, я скачал plain.bstфайл наКТАНсайт. И так как с первой попытки это не сработало, я разместил это в нескольких местах.

~/texmf/tex/plain.bst
~/texmf/tex/bibtex/plain.bst
~/texmf/tex/bibtex/bstplain.bst
~/texmf/tex/latex/biblatex/bst/plain.bst

/usr/share/texlive/texmf/tex/bibtex/bst/plain.bst

Затем я запускаю texhash ~/texmf/и sudo texhash /usr/share/texlive/texmf/. Вот соответствующие ls-Rфайлы:

~/texmf/ls-R

./tex:
bibtex
generic
latex
plain.bst

./tex/bibtex:
bst
plain.bst

./tex/bibtex/bst:
plain.bst
 .
 .
 .
./tex/latex/biblatex:
biber
bibtex
bst
CHANGES.md
doc
latex
README

./tex/latex/biblatex/bibtex:
bib
bst

./tex/latex/biblatex/bibtex/bst:
biblatex.bst

./tex/latex/biblatex/bst:
plain.bst
 .
 .
 .
./tex/latex/biblatex/latex/bst:
plain.bst
 .
 .
 .

/usr/share/texlive/texmf/ls-R

./tex:
bibtex
generic
latex

./tex/bibtex:
bst

./tex/bibtex/bst:
plain.bst

Затем в моем tex-файле я указал, bibtexкакой стиль я хочу использовать:

\usepackage[backend=bibtex,style=plain]{biblatex}
\addbibresource{myBib.bib}

И знаете, у меня такая ошибка:

! Package biblatex Error: Style 'plain' not found.

Я не понимаю, почему это не работает, и я не могу найти ничего другого в Интернете. Есть у кого-нибудь идея?

решение1

Прежде чем начать, неплохо было бы попытаться понять разницу между biblatexи BibTeX.bibtex против biber и biblatex против natbibесть некоторые пояснения, которые должны сделать разницу между ними более ясной, поэтому просто быстро: BibTeX — это программа, которая извлекает данные библиографии из файла .bibи обрабатывает данные с помощью .bstфайлов («стили BibTeX») в данные, читаемые LaTeX. В более общем смысле, иногда люди (я, конечно) говорят «BibTeX», когда имеют в виду всю настройку библиографии, которая идет с использованием BibTeX с .bstфайлами. biblatex— это пакет LaTeX для цитат и библиографий, который работает иначе, чем «подход BibTeX». biblatexможет использоваться с BibTeX и более новым Biber в качестве «бэкэндов», которые извлекают соответствующие данные записи из .bibфайла.

Когда вы хотите использовать

\usepackage[<options>]{biblatex}

в вашем документе вы используете biblatex.

При загрузке biblatexс опцией backend=bibtex,, вы используете biblatexбэкэнд BibTeX.

Это означает, что вам необходимо, чтобы и BibTeX biblatex, и BibTeX были правильно установлены в вашей системе.

Первое сообщение

I couldn't open style file biblatex.bst
---line 6 of file myDoc.aux
 : \bibstyle{biblatex
 :                   }
I'm skipping whatever remains of this command
I found no style file---while reading file myDoc.aux

вы получаете предложение BibTeX запущен (сообщение приходит от BibTeX), но, biblatexпохоже, не полностью установлен. В частности, файлbiblatex.bst(Доступна сhttps://ctan.org/tex-archive/macros/latex/contrib/biblatex/bibtex/bstна CTAN) по-видимому, установлен неправильно.

Согласно вашим каталогам, у вас есть

./tex/latex/biblatex/bibtex/bst:
biblatex.bst

но файл должен находиться в

./bibtex/bst/biblatex

Правильный путь здесь имеет решающее значение, поскольку файл не будет правильно найден, kpsewhichесли он находится в другом месте. (Спецификации пути известны как TDS:http://tug.ctan.org/tds/tds.html. Технически, только ./bibtex/bst/часть пути имеет решающее значение, остальное после нее произвольно, но хорошей идеей будет организовать ваши каталоги с подкаталогами.)


Это одна из опасностей установки пакетов вручную из CTAN: для сложных пакетов вы можете неправильно определить структуру каталогов. Вот почему некоторые пакеты поставляются с .tds.zip, где структура TDS уже правильно представлена ​​в , .zipи вам нужно только распаковать все в ваш TEXMFHOME.

Другая проблема с ручными установками из CTAN — совместимость пакетов. Версия, которую вы получаете из CTAN, является новейшей версией пакета. Новая biblatexверсия может зависеть от того, насколько обновлены другие пакеты. Поэтому, если вы устанавливаете один пакет вручную, вам может потребоваться вручную обновить или установить несколько других пакетов, чтобы убедиться, что версии совпадают.

Поскольку вы установили TeX Live из репозиториев программного обеспечения вашего дистрибутива Linux, возможно, его можно будет правильно установить biblatexи через ваш дистрибутив Linux. К сожалению, я не очень хорошо знаком с CentOS и не знаю, какая версия TeX Live поставляется с CentOS 7. Но запуск yumфункции поиска для поиска biblatexне повредит.

Если TeX Live, поставляемый с вашим дистрибутивом Linux в репозиториях, безнадежно устарел или необходимые вам пакеты недоступны, вы можете рассмотреть возможность установки «ванильного» TeX Live с TUG.org. (Инструкции для Ubuntu находятся по адресуКак установить «ванильный» TeXLive на Debian или Ubuntu?. Общие инструкции наhttps://tug.org/texlive/acquire-netinstall.html.)


Предполагая, что ваша biblatexустановка завершена и совместима со всеми пакетами в вашей установке,

\usepackage[backend=bibtex,style=plain]{biblatex}
\addbibresource{myBib.bib}

все еще не совсем верно. Вы говорите biblatexиспользовать стиль под названием plain, но biblatexне знает стиля с таким именем. biblatexимеет собственную систему определения стилей библиографии и цитирования, которая не использует .bstфайлы BibTeX. Если plainподразумевалось, чтобы ссылаться на стиль BIbTeX, plain.bstто его просто нельзя использовать с biblatex. (Как мы видели, biblatexнеобходимо biblatex.bst, когда он используется с BibTeX. Этот файл всегда используется, независимо от того, какой biblatexстиль вы запрашиваете.)

Вам нужно выбрать один из biblatexсобственных стилей. Доступные стандартные стили перечислены вдокументацияbiblatexи другие пользовательские стили доступны на CTAN:https://www.ctan.org/topic/biblatex. Например

\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}
\usepackage{csquotes}


\usepackage[backend=bibtex,
  style=authoryear,
]{biblatex}

\addbibresource{biblatex-examples.bib}


\begin{document}
Lorem \autocite[380]{sigfridsson}
ipsum \autocite[cf.][]{nussbaum}
dolor \autocite{worman}
sit \autocite[cf.][41]{geer}

\printbibliography
\end{document}

Если вы вообще не хотите использовать BibTeX biblatex, а просто хотите использовать стандартный BibTeX, ваш документ будет выглядеть следующим образом:

\documentclass[british]{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{babel}


\begin{document}
Lorem \cite[380]{article-full}
ipsum \cite{incollection-full}
dolor \cite{inproceedings-full}
sit \cite[41]{inbook-full}

\bibliographystyle{plain}
\bibliography{xampl}
\end{document}

Обратите внимание, что в настоящее время рекомендуется использовать Biber в качестве бэкэнда biblatexвместо BibTeX. Только Biber позволяет использовать все biblatexрасширенные функции . Но Biber должен быть доступен в вашей системе и должен быть установлен в версии, совместимой с вашей biblatexверсией.

Связанный контент