Как настроить Latexian для использования других движков TeX или Biber?

Как настроить Latexian для использования других движков TeX или Biber?

Редактор Mac Latexian имеет встроенные методы компиляции с использованием latex+dvips, pdflatexи xelatex. Кроме того, он предполагает bibtexи makeindexдля работы с библиографиями и индексами соответственно.

Как настроить Latexian для использования, например, LuaTeX для компиляции или Biber для библиографий?

решение1

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

Обходной путь состоит из двух компонентов: скрипт, который помещается в локальную папку и заменяет (с точки зрения Latexian) один или несколько из трех движков TeX, о которых знает Latexian. Скрипт обходит эти движки и вместо этого использует инструмент автоматизации araraдля управления всей компиляцией. Используя araraвы можете затем указать с очень точным контролем точную цепочку компиляции, которая вам нужна для каждого документа.

Введение в арара

Чтобы понять, как это работает, вам сначала нужно понять, что arara. araraпозволяет добавлять комментарии к документу, которые сообщают ему, как компилировать этот документ. Простое использование будет следующим:

% arara: pdflatex

что скажет araraобработать документ с помощью pdflatex. Немного более сложный пример (но концептуально такой же простой) будет:

% arara: pdflatex
% arara: bibtex
% arara: pdflatex
% arara: pdflatex

Это приведет к компиляции документа, его запуску bibtexи повторной компиляции еще дважды для разрешения ссылок.

Из этих небольших примеров должно быть ясно, чтовсеиз двоичных файлов, доступных в MacTeX, будут доступны для arara, что означает, что если мы можем заставить Latexian использовать, araraмы можем заставить Latexian использовать любой двоичный файл TeX. Мы переходим к этой задаче далее.

Заставить Latexian использовать arara

Сначала мы создадим локальную папку, на которую укажем Latexian. Вы можете сделать это с помощью Finder или Terminal. В этом примере мы назовем папку latexian-bin.

mkdir ~/latexian-bin

В текстовом редакторе создайте следующий файл:

#!/bin/bash
export PATH=/Library/TeX/texbin:/usr/local/bin:${PATH}

arara -v "${@:$#}"

Сохраните это как araraв latexian-binпапке. Вы должны сделать файл исполняемым, поэтому в окне Терминала введите:

cd ~/latexian-bin
chmod +x arara

Наконец, создайте символические ссылки на этот скрипт для бинарных файлов xelatexи , pdflatexо которых знает Latexian. Затем создайте символические ссылки на реальные latexи dvips(иначе Latexian всегда будет возвращать ошибку при использовании этого latex+dvips.)

ln -s arara pdflatex
ln -s arara xelatex
ln -s /Library/TeX/texbin/latex latex
ln -s /Library/TeX/texbin/dvips dvips
ln -s /Library/TeX/texbin/synctex synctex

Теперь в Latexian перейдите в Preferences и выберите Preview. В этом параметре вы можете выбрать Folder for TeX Distribution. По умолчанию это /Library/TeX/texbin( /usr/texbin/в старых дистрибутивах MacTeX), но теперь мы хотим, чтобы Latexian использовал созданную нами локальную папку. Используйте кнопку Browse, чтобы выбрать папку latexian-bin. Если вы все сделали правильно, вы должны увидеть следующее:

Скриншот настроек

Ваш фактический путь будет отличаться, /Users/alan/latexian-binно должен выглядеть похоже. Не беспокойтесь, что некоторые другие двоичные файлы будут вычеркнуты и будут иметь статус "Не найдено". Это на самом деле не имеет значения.

Теперь у вас есть LaTeXian, указанный в его собственной локальной папке с бинарными файлами, и теперь вместо компиляции с помощью pdflatexвы будете компилировать с помощью arara. Теперь для каждого документа вам нужно предоставить правильные araraстроки в верхней части файла, чтобы указать, какие двоичные файлы использовать для этого файла.

Для базового pdflatexфайла следует использовать:

% arara: pdflatex: { synctex: yes }

Дляxelatex

% arara: xelatex: { synctex: yes }

Дляlualatex

% arara: lualatex: { synctex: yes }

Чтобы также скомпилировать ваш файл, bibtexдобавьте:

% arara: bibtex

Для компиляции вместо этого biberдобавьте:

% arara: biber

Это все, что вам нужно сделать.

Заметки по реализации

Используя этот метод, вам не нужно будет использовать настройки Latexian для указания количества компиляций или вспомогательных программ bibtexи makeglossaries/или makeindex; все это можно сделать через arara.

Если вы не хотите использовать araraдля всех компиляций, вы можете просто связать команду pdflatexили xelatexсо araraскриптом, а другую команду с его обычным двоичным файлом в /Library/TeX/texbin. Затем вы можете использовать пункт меню GetInfo в Latexian, чтобы выбрать один или другой для каждого файла. Это может быть наиболее практичным решением, если вы в основном используете один движок большую часть времени, поскольку использование araraбудет немного медленнее, чем использование движка напрямую.

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