El editor de Mac Latexian tiene métodos integrados para compilar usando latex+dvips
, pdflatex
y xelatex
. Además, asume bibtex
y makeindex
trata bibliografías e índices, respectivamente.
¿Cómo personalizo Latexian para utilizarlo, por ejemplo, LuaTeX para compilar o Biber para bibliografías?
Respuesta1
Por la forma en que está escrito Latexian, los métodos integrados no se pueden cambiar según las preferencias del usuario. En mi opinión, esto es un defecto de diseño grave, pero no es demasiado difícil crear una solución para esta limitación.
La solución tiene dos componentes: un script que se coloca en una carpeta local y que reemplaza (desde el punto de vista de Latexian) uno o más de los tres motores TeX que Latexian conoce. El script omite esos motores y, en su lugar, utiliza la arara
herramienta de automatización para controlar toda la compilación. Al usarlo, arara
puede especificar con un control muy preciso la cadena de compilación exacta que necesita documento por documento.
Introducción a arara
Para comprender cómo funciona esto, primero debe comprenderlo arara
. arara
le permite agregar comentarios a su documento que le indican cómo compilarlo. Un uso sencillo sería el siguiente:
% arara: pdflatex
lo que indicaría arara
procesar el documento con pdflatex
. Un ejemplo un poco más complicado (pero conceptualmente igual de simple) sería:
% arara: pdflatex
% arara: bibtex
% arara: pdflatex
% arara: pdflatex
Esto compilaría un documento, lo ejecutaría bibtex
y luego lo compilaría dos veces más para resolver las referencias.
A partir de estos pequeños ejemplos, debería quedar claro quetodode los binarios disponibles en MacTeX estarán disponibles para arara
, lo que significa que si podemos hacer que Latexian use, arara
podemos hacer que Latexian use cualquier binario de TeX. A continuación nos ocuparemos de esta tarea.
Conseguir que Latexian use arara
Primero creamos una carpeta local a la que apuntaremos con Latexian. Puedes hacer esto con el Finder o la Terminal. En este ejemplo, llamaremos a la carpeta latexian-bin
.
mkdir ~/latexian-bin
En un editor de texto, cree el siguiente archivo:
#!/bin/bash
export PATH=/Library/TeX/texbin:/usr/local/bin:${PATH}
arara -v "${@:$#}"
Guarde esto como arara
en la latexian-bin
carpeta. Debes hacer que el archivo sea ejecutable, por lo que en una ventana de Terminal, escribe:
cd ~/latexian-bin
chmod +x arara
Finalmente, haga enlaces simbólicos a este script para los xelatex
binarios pdflatex
que Latexian conoce. Luego haga enlaces simbólicos a lo real latex
y dvips
(de lo contrario, Latexian siempre devolverá un error al usar esto 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
Ahora dentro de Latexian, vaya a Preferencias y elija Vista previa. En esta preferencia puede elegir la Carpeta para distribución TeX. De forma predeterminada, esto está configurado en /Library/TeX/texbin
( /usr/texbin/
en distribuciones MacTeX anteriores), pero ahora queremos que Latexian use la carpeta local que creamos. Utilice el botón Examinar para seleccionar la latexian-bin
carpeta. Si ha hecho las cosas correctamente, debería ver lo siguiente:
Su ruta real será diferente /Users/alan/latexian-bin
pero debería ser similar. No se preocupe si algunos de los otros archivos binarios están eliminados y dicen "No encontrado". En realidad, esto no importa.
Ahora tiene un LaTeXian apuntado a su propia carpeta binaria local y ahora, en lugar de compilar, pdflatex
compilará con arara
. Ahora, para cada documento, debe proporcionar las arara
líneas correctas en la parte superior del archivo para indicarle qué binarios usar para ese archivo.
Para un pdflatex
archivo básico debes usar:
% arara: pdflatex: { synctex: yes }
Paraxelatex
% arara: xelatex: { synctex: yes }
Paralualatex
% arara: lualatex: { synctex: yes }
Para compilar también su archivo con bibtex
add:
% arara: bibtex
Para compilar en su lugar con biber
add:
% arara: biber
Esto es todo lo que necesitas hacer.
Notas sobre la implementación
Al utilizar este método, no es necesario utilizar nunca las preferencias de Latexian para especificar el número de compilaciones o los programas subsidiarios bibtex
y makeglossaries
/o makeindex
; Todo esto se puede hacer a través de arara
.
Si no desea utilizarlo arara
para todas las compilaciones, puede simplemente vincular el comando pdflatex
o xelatex
al arara
script y el otro comando a su binario normal en formato /Library/TeX/texbin
. Luego puede usar el elemento de menú GetInfo de Latexian para elegir uno u otro para cada archivo. Esta puede ser la solución más práctica si utiliza principalmente un motor la mayor parte del tiempo, ya que su uso arara
será ligeramente más lento que utilizar el motor directamente.