Mi sono studiato ben bene arara oltre che nella introduzione di Enrico anche sul manuale originale di arara(dal quale si scopre che Enrico e Francesco sono due collaboratori al team che si occupa di arara).
Sono ora in grado di capire meglio e di darmi una risposta alla mia domanda: “A chi serve arara?”.
Perché invece di arara non si può usare la capacità dei motori di composizione del sistema TeX di sfruttare delle chiamate alla shell mediante il comando \write18, come si fa per creare l’indice analitito sincrono grazie al pacchetto imakeidx?
Questo è il punto che distingue l’utilità di arara rispetto a \write18, e che risponde alla mia domanda.
\write18 è rigorosamente sequenziale e viene eseguito a “metà” di una compilazione; quindi non può sfruttare elementi che saranno disponibili nella “metà” successiva. Ecco perché si può usare per l’indice analitico che è l’ultima cosa che si mette in un documento, mentre non si può usare per comporre la bibliografia, perché le citazioni (le chiavi usate con i vari comandi \cite, \citep, eccetera) vengono scritte nel file ausiliario durante l’esecuzione del comando \end{document} che, ovviamente, viene eseguito dopo \printbibliography o simili.
Invece arara viene eseguito sequenzialmente più volte e seconda dell’elenco di righe “arara” del tipo [tt]% arara
Ecco quindi a chi serve arara: a chi ha necessità di eseguire diversi task per completare il proprio documento e questi task devono essere eseguiti in un ordine specifico; certo si può fare tutto a mano (io sono abituato a fare tutto a mano e questo è il motivo per il quale non sento la necessità/utilità di arara) ma per moltissime persone può essere una procedura utilissima (che non esclude l’azione manuale, che si può anche estrinsecare semplicemente nel cliccare su una icona o una voce di un menù a discesa del proprio editor) quando devono eseguire molti task per completare un documento.
Mi sono domandato anche perché tra le azioni che si possono fare con arara c’è frontespizio; perché frontespizio non può essere gestito con \write18? Ho letto con attenzione la documentazione di texlive dove si parla del restricted \write18; di conseguenza sono andato a leggermi il file di configurazione del sistema TeX texmf.cnf e ho visto che tex, pdftex, e gli altri motori di composizione sono esclusi dall’elenco dei programmi che si possono usare in restricted mode per motivi tecnici di sicurezza. Certo si potrebbe abilitare lo shell escape in modo non restricted (cosa che io, sul mio iMac e sul mio MacBokkPro ho fatto, ma non sulla macchina Windows virtuale che talvolta/raramente uso per controllare certi funzionamenti sotto sistemi operativi diversi); dunque il pacchetto frontespizio non può ricorrere a \write18 e richiede invece tre compilazioni con pdflatex la seconda delle quali serve per comporre il frontespizio e la terza per includerlo; poi ci sono anche altri motivi, ma Enrico ha comunque dovuto ricorrere alla compilazione intermedia, visto che con \write18 in restricted mode la cosa non si può fare.
Ma arara la può fare.
Come anche arara può fare le compilazioni complete richieste dai vari task purché le direttive siano scritte in testa al file .tex principale nell’ordine giusto.
Le direttive arara devono essere scritte solo nel file principale e quindi, mi pare di capire che le righe magiche che si usano anche nei file secondari debbano venire modificate abbastanza profondamente, perché non si potrebbe lanciare una compilazione tramite arara cliccando sul bottone di composizione mentre l’editor è focalizzato su un file secondario. Se è così si tratterebbe di un inconveniente minimo, ma bisognerebbe che questa faccenda fosse esposta nell’introduzione di Enrico.