O editor Mac Latexian possui métodos integrados para compilação usando latex+dvips
, pdflatex
e xelatex
. Além disso, assume bibtex
e makeindex
trata de bibliografias e índices, respectivamente.
Como faço para personalizar o Latexian para uso, por exemplo, LuaTeX para compilação ou Biber para bibliografias?
Responder1
Da forma como o Latexian é escrito, os métodos integrados não podem ser alterados com nenhuma preferência do usuário. Esta é, na minha opinião, uma falha grave de design, mas não é muito difícil criar uma solução alternativa para esta limitação.
A solução alternativa tem dois componentes: um script que é colocado em uma pasta local e que substitui (do ponto de vista do Latexian) um ou mais dos três motores TeX que o Latexian conhece. O script ignora esses mecanismos e, em vez disso, usa a arara
ferramenta de automação para controlar toda a compilação. Ao usá-lo arara
, você pode especificar com controle muito preciso a cadeia de compilação exata necessária, documento por documento.
Introdução à arara
Para entender como isso funciona, primeiro você precisa entender arara
. arara
permite que você adicione comentários ao seu documento que informam como compilá-lo. Um uso simples seria o seguinte:
% arara: pdflatex
o que diria arara
para processar o documento com pdflatex
. Um exemplo um pouco mais complicado (mas conceitualmente tão simples) seria:
% arara: pdflatex
% arara: bibtex
% arara: pdflatex
% arara: pdflatex
Isso compilaria um documento, executaria bibtex
e compilaria mais duas vezes para resolver as referências.
A partir destes pequenos exemplos, deve ficar claro quetodosdos binários disponíveis no MacTeX estarão disponíveis para arara
, o que significa que se conseguirmos usar o Latexian, arara
podemos fazer com que o Latexian use qualquer binário do TeX. Passamos a esta tarefa a seguir.
Fazendo o Latexian usar arara
Primeiro criamos uma pasta local para a qual apontaremos o Latexian. Você pode fazer isso com o Finder ou o Terminal. Neste exemplo, chamaremos a pasta latexian-bin
.
mkdir ~/latexian-bin
Em um editor de texto, crie o seguinte arquivo:
#!/bin/bash
export PATH=/Library/TeX/texbin:/usr/local/bin:${PATH}
arara -v "${@:$#}"
Salve isso como arara
na latexian-bin
pasta. Você deve tornar o arquivo executável, então em uma janela do Terminal, digite:
cd ~/latexian-bin
chmod +x arara
Finalmente, faça links simbólicos para este script para os xelatex
binários pdflatex
que o Latexian conhece. Em seguida, faça links simbólicos para o real latex
e dvips
(caso contrário, o Latexian sempre retornará um erro ao usar this 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
Agora no Latexian, vá em Preferências e escolha Visualizar. Nesta preferência você pode escolher a Pasta para Distribuição do TeX. Por padrão, isso é definido como /Library/TeX/texbin
( /usr/texbin/
em distribuições MacTeX mais antigas), mas agora queremos que o Latexian use a pasta local que criamos. Use o botão Procurar para selecionar a latexian-bin
pasta. Se você fez as coisas corretamente, deverá ver o seguinte:
Seu caminho real será diferente, /Users/alan/latexian-bin
mas deverá ser semelhante. Não se preocupe, pois alguns dos outros binários serão eliminados e dirão "Não encontrado". Na verdade, isso não importa.
Agora você tem um LaTeXian apontado para sua própria pasta binária local e agora, em vez de compilar com pdflatex
você estará compilando com arara
. Agora, para cada documento, você precisa fornecer as arara
linhas corretas na parte superior do arquivo para instruí-lo sobre quais binários usar para aquele arquivo.
Para um pdflatex
arquivo básico você deve usar:
% arara: pdflatex: { synctex: yes }
Paraxelatex
% arara: xelatex: { synctex: yes }
Paralualatex
% arara: lualatex: { synctex: yes }
Para também compilar seu arquivo com bibtex
add:
% arara: bibtex
Para compilar com biber
add:
% arara: biber
Isso é tudo que você precisa fazer.
Notas sobre implementação
Usando este método você não precisa nunca usar as preferências do Latexian para especificar o número de compilações ou os programas subsidiários bibtex
e makeglossaries
ou makeindex
; tudo isso pode ser feito por meio de arara
.
Se você não quiser usar arara
para todas as compilações, basta vincular o comando pdflatex
ou xelatex
ao arara
script e o outro comando ao seu binário normal em /Library/TeX/texbin
. Você pode então usar o item de menu GetInfo do Latexian para escolher um ou outro para cada arquivo. Esta pode ser a solução mais prática se você usar principalmente um motor na maior parte do tempo, já que o uso arara
será um pouco mais lento do que usar o motor diretamente.