Как автоматизировать с помощью biber в MiKTeX-TeXworks

Как автоматизировать с помощью biber в MiKTeX-TeXworks

У меня MikTeX 2.9, 32-бит, Windows 7, все последние обновления есть. Использую TeXworks ( pdflatex+ makeindex+ bibtex).

Когда я использую biblatexпакет с опцией, [backend=biber]у меня вообще не печатается библиография. Если я запускаю biber.exeфайл вручную, то все работает нормально.

У меня вопрос: как настроить TeXworks, чтобы он использовал его biber.exeпо мере необходимости (т. е. я хотел бы иметь pdflatex+ makeindex+ biberнабор текста)? Я не нашел никакого руководства по этому делу. Если такое руководство есть, может кто-нибудь указать мне на него?

решение1

Позвольте мне предложить другой инструмент.

Каждый документ имеет свои собственные требования относительно компиляции. Как вы написали, вам нужно pdflatex, makeindexи biber. Мой рекомендуемый инструмент позволяет настроить компиляцию из texфайла. Инструмент называетсяарара

Наряду с кратким онлайн-введением автор Пауло Середа предоставляет полное руководство, которое можно скачать здесь:arara на github (часть для скачивания)

araraпредоставленный и установщик с некоторыми предопределенными правилами. В зависимости от ваших требований вы можете настроить заголовок вашего основного tex-файла следующим образом:

% arara: pdflatex: { draft: true }
% arara: makeindex: {  style: stylefile.ist }
% arara: biber
% arara: pdflatex: { synctex: true }
% arara: pdflatex: { synctex: true }

Если вам нужна только одна компиляция, например pdflatex, вы можете прокомментировать другие задания с помощью предыдущего !:

% !arara: pdflatex: { draft: true }
% !arara: makeindex: {  style: stylefile.ist }
% !arara: biber
% !arara: pdflatex: { synctex: true }
% arara: pdflatex: { synctex: true }

Различные правила компиляции имеют больше опций и могут быть легко изменены в соответствии с вашими требованиями.

Интеграция и использование инструмента araraв TeXworks описаны в руководстве в разделе 4.1.

решение2

Немного поздно, и решение уже упоминалось в этой теме, но у меня была та же проблема. Быстрое решение для использования pdfLaTeX в biberTeXworks — использовать пакетный файл.

Создайте файл pdflatex+biber.batв подпапке вашего каталога MiKTeX /miktex/bin/со следующим содержимым:

miktex-pdftex.exe -synctex=1 -undump=pdflatex "%1"
biber.exe "%2"
miktex-pdftex.exe -synctex=1 -undump=pdflatex "%1"

Теперь откройте редактор набора TeXworks и добавьте новый параметр. Назовите его соответствующим образом (например, "pdfLatex+Biber") и укажите путь к вашему пакетному файлу ( .../miktex/bin/pdflatex+biber.bat). Добавьте два аргумента: $fullnameи $basename.

Вот и все, у меня все отлично работает, и я думаю, что это решение можно адаптировать и для других ситуаций, когда в процессе набора текста необходимо задействовать больше/другие программы.

решение3

В pdflatex + makeindex + bibtexописанной вами конфигурации -typesetting-configuration TeXworks полагается на texify. Вы можете указать texify запуститься biberвместо этого bibtexчерез переменную окружения BIBTEX(документация texify).

Обычно вы можете задать переменную здесь: Control Panel --> System --> Advanced system settings --> Advanced --> Environment Variables --> New. Однако я бы не рекомендовал этого делать, так как это нарушит любой устаревший проект, который вы можете использовать с bibtex.

Вместо этого я бы рекомендовал создать пакетный файл:

@set BIBTEX=biber
@texify %*

Затем вы настраиваете новый набор в TeXworks. Он должен получить те же Аргументы, что и pdflatex + makeindex + bibtex-Typesetting и Batch-File в качестве команды.

Но есть еще одно предостережение: texify может ненадежно определить, что ему нужно перезапуститься после того, как biber изменил что-то. Вы можете перезапустить все вручную, если сомневаетесь. Также естьэтот обходной путькоторый основан на вставке некоторого кода в ваш основной TeX-файл.

Как видите, это, похоже, довольно экспериментальный вариант, другие решения с другими инструментами или редакторами могут оказаться более простыми.

решение4

@benne08 решение отлично сработало из texmf-local, как и было указано @speravir, и это самый простой вариант, который я нашел из всех источников. Следующий вариант более очевиден и прост в настройке для одноразового тестирования.

Добавить Biberс помощью |TeXworks|Edit>Preferences…>|[Typesetting]|find .../miktex/bin/biber.exe

Добавить $basenameкак аргумент. Можно добавить –Uи –uесли хотите чтобы ввод и вывод были в кодировке utf8 (Эти аргументы utf8 я лично не проверял).

Затем выполните отдельные шаги, например: PdfLaTex-> Biber-> PdfLaTexиз панели набора текста.

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