Ceci est une ancienne révision du document !
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
\documentclass[a4paper]{article} \usepackage[margin=1.5cm]{geometry} \usepackage{fontspec} \setmainfont{Latin Modern Roman} \usepackage{tikz} \usetikzlibrary{mindmap,shadows}
\pagestyle{empty}
\begin{document} \begin{center} \begin{tikzpicture}
[ mindmap, grow cyclic, every node/.style={concept, circular drop shadow, execute at begin node=\hskip0pt}, concept color=blue!60, level 1/.append style={ level distance=40mm, sibling angle=55, font=\bfseries\small }, level 2/.append style={ level distance=27mm, sibling angle=30, font=\footnotesize }, level 3/.append style={ level distance=20mm, sibling angle=24, font=\scriptsize } ]
\node[concept, text=white, font=\bfseries\large, align=center] (root) {Batteries \& ENR\\Pourquoi le stockage s'impose\$ et stabilise les prix)} % Messages clés child[concept color=teal!60, text=white] { node {Messages clés} child { node {Lisse l'intermittence et stabilise 50 Hz (services RTE)} } child { node {Modèle éco. viable: revenus marché + services} } child { node {Intérêt entreprises renforcé par aléas nucléaire 2022} } } % Chiffres clés child[concept color=purple!60, text=white] { node {Chiffres clés} child { node {Europe \(\sim $ 61 GW} } child { node {France $ \sim $ 1 GW (rattrapage)} } child { node {Résidentiel: jusqu'à $ \sim $ 25 k€; TR 10–15 ans} } child { node {Coûts batteries ÷4 en $ \sim $ 6 ans} } } % Valeur créée child[concept color=orange!70!red, text=white] { node {Valeur créée} child { node {Arbitrage: charger bas / décharger haut} } child { node {Services système (RTE): fréquence, réserve, congestion} } child { node {Décaler midi → pic du soir = -volatilité} } child { node {Moins de prix négatifs et de pics gaz} } child { node {CAPEX réseau évité/retardé si bien positionnées} } } % Résidentiel child[concept color=green!60!black, text=white] { node {Résidentiel} child { node {Offres PV + batteries (ex. EDF Solutions Solaires)} } child { node {Facture plus prévisible} } child { node {Limites: CAPEX, variabilité production} } } % Entreprises child[concept color=red!60!black, text=white] { node {Entreprises} child { node {Pas seulement ENR: incertitudes nucléaire 2022} } child { node {Objectifs: autoconsommation, hedging coûts/volumes} } } % Complémentarité child[concept color=cyan!60!black, text=white] { node {Complémentarité} child { node {Nucléaire = base décarbonée} } child { node {Batteries = flexibilité s→h sans CO$ _2 $ } } child { node {Moins de gaz, système \& prix plus stables} } } % Objections / Réponses child[concept color=blue!40!black, text=white] { node {Objections ↔ Réponses} child { node {« Trop cher » → coûts en baisse + revenus cumulés} } child { node {« Inutile sans ENR » → flexibilité toujours nécessaire} } child { node {« N'impacte pas les prix » → supprime pics/prix négatifs} } } % Punchlines child[concept color=brown!70!black, text=white] { node {Punchlines} child { node {Nucléaire pour la base, batteries pour la flexibilité} } child { node {Acheter bas, vendre haut, tenir 50 Hz} } child { node {Depuis 2022: la question n'est plus « si », mais « où » et « combien »} } };
\end{tikzpicture} \end{center} \end{document}
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.