LuaTeX

Da Wikipedia, l'enciclopedia libera.
LuaTeX
Logo
SviluppatoreLuaTeX Team: Taco Hoekwater, Hartmut Henkel, Hans Hagen, Luigi Scarso
Data prima versione2007
Ultima versione1.0.4 (2017 aprile 08; 8 mesi fa[1])
Sistema operativoMultipiattaforma
LinguaggioC
Lua
GenereComposizione tipografica
LicenzaGNU General Public License
(licenza libera)
Linguainglese
Sito web luatex.org, http://www.luatex.org.

LuaTeX è un programma di composizione tipografica che produce file in formato PDF a partire da un sorgente testuale. Basato sul sistema TeX, esso fu inizialmente costruito come una versione di pdfTeX a cui fu aggiunto Lua come linguaggio di scripting interno. I primi risultati spinsero il team di sviluppo di pdfTeX[2][3], a sua volta estensione di eTeX, ad adottare LuaTeX come successore di questo motore di composizione. Più tardi furono aggiunte alcune funzionalità del programma Aleph, per esempio la composizione multidirezionale. Il progetto fu originariamente finanziato da Oriental TeX project -- fondato da Idris Samawi Hamid -- Hans Hagen, e Taco Hoekwater.

Il LuaTeX team è composto da Taco Hoekwater, Hartmut Henkel, Hans Hagen e Luigi Scarso.

Obiettivi del progetto[modifica | modifica wikitesto]

Il principale obiettivo del progetto LuaTeX è fornire una versione di TeX in cui tutti gli elementi tipografici interni siano accessibili da Lua. Con la riscrittura di alcune parti del codice, invece di inserire modifiche o nuove primitive del linguaggio TeX, si è preferito lasciare che fosse l'utente o lo sviluppatore di pacchetti macro a costruire proprie estensioni.

LuaTeX offre nativamente le funzionalità per usare i font OpenType utilizzando una libreria basata su FontForge, e non tramite il sistema operativo.

Inoltre LuaTeX integra MetaPost come modulo (libreria MPlib) per la grafica vettoriale, e altre funzionalità, per esempio per la gestione nativa delle immagini nei formati PNG, JPEG, e PDF.

Versione stabile[modifica | modifica wikitesto]

Mentre la prima versione beta fu lanciata nel 2007 al TUG 2007 a San Diego[4], la prima versione stabile 1.00 fu rilasciata nel settembre 2016 in occasione del ConTeXt meeting 2016[5].

Installazione[modifica | modifica wikitesto]

Normalmente LuaTeX è utilizzato assieme a molti altri componenti utili alla composizione tipografica dei documenti: collezioni di font, formati macro di alto livello come LaTeX o ConTeXt, e pacchetti per esigenze compositive specifiche. Per questo motivo l'installazione di LuaTeX solitamente non è diretta, ma è inclusa nell'installazione di una distribuzione del sistema TeX.

La principale distribuzione è TeX Live, compatibile con innumerevoli sistemi operativi e sostenuta dalla comunità TeX. Se non si è esperti, conviene installare la versione completa di TeX Live, seguendo le procedure per il proprio sistema operativo descritte nella documentazione. Per gli utenti Mac OSX esiste una versione speciale di TeX Live chiamata MacTeX, che quindi segue lo stesso ciclo di sviluppo della distribuzione genitore.

Altre distribuzioni sono MiKTeX sviluppata da Christian Schenk e la ConTeXt standalone, specifica per il formato ConTeXt.

Utilizzo del compositore[modifica | modifica wikitesto]

Seppur sia possibile usare LuaTeX solamente attraverso le macro native, generalmente si preferisce caricare un formato, esattamente come avviene per gli altri motori di composizione della famiglia TeX. Un formato è una collezione di macro dalla sintassi coerente, implementate con i comandi primitivi del compositore, che hanno lo scopo di semplificare il markup del documento.

Per usare il formato LaTeX in LuaTeX si utilizza il programma LuaLaTeX, un piccolo eseguibile che non fa altro che lanciare LuaTeX con l'opzione per il caricamento delle macro LaTeX precompilate, cosa che rende il processo di avvio più rapido.

Un esempio di sorgente LuaLaTeX minimale che dimostra l'esecuzione di codice Lua, è il seguente:

\documentclass[a4paper]{article}
\begin{document}
Il valore di $\pi$ vale circa
\directlua{tex.print(math.pi)}
\end{document}

Per ottenere il documento PDF corrispondente, il file sorgente nominato prova.tex, dovrà essere compilato con questo comando lanciato in una finestra di terminale:

$ lualatex prova

Alcuni pacchetti standard di uso generale come fontspec e polyglossia, facilitano l'impostazione dei font e le impostazioni per la lingua del documento. Informazioni in italiano possono essere reperite nel sito del gruppo GuIT, il TeX User Group ufficiale per l'Italia, oppure in inglese nel documento A guide to LuaLaTeX.

L'esempio minimale scritto per il formato ConTeXt MkIV, è invece il seguente:

\starttext
Il valore $\pi$ vale circa
\startluacode
tex.print(math.pi)
\stopluacode
\stoptext

Il comando di compilazione, ipotizzando che il file sorgente si chiami provactx.tex, è:

$ context provactx

Sia LuaLaTeX che ConTeXt, compongono il documento utilizzando il sottostante motore di composizione tipografica LuaTeX.

Utilizzando un editor di testo specifico per l'editing dei sorgenti .tex, le compilazioni possono essere eseguite premendo un pulsante con il mouse, mentre il documento PDF composto può essere visualizzato automaticamente in una seconda finestra affiancata a quella dell'editor.

Note[modifica | modifica wikitesto]

  1. ^ LuaTeX reference manual
  2. ^ TeX Frequently Asked Questions - What is PDFTeX?
  3. ^ TeX Frequently Asked Questions - PDFTeX and LuaTeX
  4. ^ TUG 2007 - TeX Users Group, su www.tug.org. URL consultato il 07 novembre 2017.
  5. ^ ConTeXt User Meeting 2016, su meeting.contextgarden.net. URL consultato il 07 novembre 2017.

Collegamenti esterni[modifica | modifica wikitesto]

Software libero Portale Software libero: accedi alle voci di Wikipedia che trattano di Software libero