LuaLaTeX, langage LaTeX basé sur LuaTeX
LuaLaTeX est une variante de LaTeX utilisant le langage de script Lua. LuaTeX a été choisi comme successeur de pdfTeX. La structure générale et la majeure partie des commandes sont semblables à celles de LaTeX.
L’encodage de caractères utilisé par LuaTex est l’Unicode qui est donc géré nativement. Il est également possible d’utiliser les polices de caractère du système, avec le paquet fontspec. Le paquet inputenc est ainsi inutile.
Pré-requis
- Disposer des droits d'administration.
- Disposer d'une connexion à Internet configurée et activée.
Installation
- Pour l'installation minimale, installez le paquet texlive-luatex.
- Pour l'installation complète sans se poser de questions au sujet des paquets supplémentaires, installez le paquet texlive-full.
Compilation
Pour obtenir un document PDF
lualatex document.tex
Pour obtenir un document DVI
dvilualatex document.tex
Exemple
Exemple d’un document en français, utilisant la police Linux Libertine :
\documentclass{article} \usepackage{luatextra} \usepackage[french]{babel} \setmainfont[Mapping=tex-text,Ligatures=Common]{Linux Libertine} \begin{document} \LuaLaTeX c’est super. \end{document}
Le paquet luatextra charge l’essentiel des paquets LuaLaTeX (fontspec, luacode, metalogo, etc.). Metalogo permet d’utiliser les logos, dont \LuaTeX et \LuaLaTeX.
Lua
LuaLaTeX permet d’inclure du code Lua dans le document. Il permet alors de faire des calculs directement dans la source du document. Lua est appelé avec la commande \directlua :
\documentclass{article} \begin{document} Racine carrée de 42 : \directlua{tex.sprint(math.sqrt(42))} \end{document}
L’environnement luacode permet également d’inclure du lua (notamment quand il s’étend sur plusieurs lignes). Le paquet luacode doit être chargé dans le préambule :
\documentclass{article} \usepackage{luacode} \begin{document} Un nombre aléatoire: \begin{luacode} tex.print(math.random()) \end{luacode} \end{document}
Enfin, le code lua peut être placé dans un fichier externe.