Il existe deux manières principales d'écrire LaTeX dans Emacs : AUCTeX, l'environnement complet TeX/LaTeX, et YaTeX (野鳥), qui est fort en japonais. Les deux fonctionnent au clavier et vous permettent de compiler, de compléter, de faire des références croisées et de prévisualiser directement depuis l'éditeur. La courbe d’apprentissage est abrupte, mais une fois que vous l’avez entre les mains, elle est très rapide. Cette page présente la configuration de AUCTeX, son compagnon RefTeX et preview-latex pour le rendu des mathématiques en ligne dans le tampon, puis se tourne vers YaTeX pour le japonais.
Qu'est-ce que AUCTeX
Emacs ne compose pas lui-même TeX. La compilation proprement dite est effectuée par une distribution que vous installez sur votre machine — TeX Live (ou MacTeX / MiKTeX). AUCTeX est le package qui relie l'éditeur et cette distribution : il génère latex ou latexmk en tant que processus enfant, détecte les erreurs et saute à la ligne incriminée, et ajoute la complétion des environnements et des macros, la coloration syntaxique, le pliage des documents et l'aide à la saisie mathématique. La seule condition préalable est que latexmk --version fonctionne dans un terminal, c'est-à-dire que les commandes TeX se trouvent sur votre PATH.
Historiquement, AUCTeX a deux modes principaux : LaTeX-mode pour les documents LaTeX et TeX-mode pour les TeX / plain TeX bruts. Ouvrez un fichier .tex et AUCTeX l'inspecte pour saisir le bon. La distribution actuelle est centrée sur GNU ELPA, l'archive de packages intégrée de Emacs ; GNU ELPA répertorié 14.1.2 en janvier 2026. Son installation aujourd'hui consiste donc en une seule ligne avec package.el, comme indiqué ci-dessous.
Si la notation des touches Emacs ne vous est pas familière : C-c signifie Contrôle maintenu avec c, C-c C-c signifie appuyez à nouveau sur c puis c tout en maintenant Control, et M-x signifie Meta (Alt ou ESC) + x. Presque toutes les commandes AUCTeX résident sur une clé commençant par C-c.
configuration de AUCTeX
L'installation comporte deux étapes. Installez d'abord une distribution telle que TeX Live (en 2026, TeX Live 2026) et mettez-la sur votre PATH. Installez ensuite AUCTeX depuis Emacs. GNU ELPA est activé par défaut, donc M-x package-install RET auctex RET suffit. Dans votre init.el (ou ~/.emacs.d/init.el), commencez par TeX-PDF-mode pour définir par défaut la sortie PDF et TeX-source-correlate-mode pour lier la source à PDF (SyncTeX).
Voici un init.el pratique utilisant use-package. Définir TeX-source-correlate-method sur synctex et activer TeX-source-correlate-start-server permet une recherche inverse du spectateur vers la source. Il active également automatiquement reftex-mode et LaTeX-math-mode dans les tampons LaTeX :
;; GNU ELPA is enabled by default; ensure it is initialised.
(require 'package)
(package-initialize)
(use-package tex
:ensure auctex
:hook ((LaTeX-mode . TeX-source-correlate-mode) ; SyncTeX
(LaTeX-mode . reftex-mode) ; cross-references
(LaTeX-mode . LaTeX-math-mode)) ; ` math shortcuts
:config
(setq TeX-auto-save t ; write parse data (the auto/ dir)
TeX-parse-self t ; scan the file for \usepackage etc.
TeX-PDF-mode t) ; produce PDF, not DVI
;; Tie source lines to PDF positions and run a server for inverse search.
(setq TeX-source-correlate-method 'synctex
TeX-source-correlate-start-server t))TeX-parse-self et TeX-auto-save indiquent à AUCTeX d'analyser le document (en extrayant les macros des packages que vous avez \usepackage) et de mettre en cache le résultat dans un répertoire auto/. Le gain est un achèvement qui s'adapte aux packages que vous chargez réellement.
Le cœur de la compilation est C-c C-c (TeX-command-master). Appuyez dessus et le mini-tampon demande quoi exécuter ensuite, proposant une valeur par défaut basée sur l'état du document (d'abord LaTeX, LaTeX à nouveau si les références ne sont pas résolues, BibTeX s'il y a une bibliographie, puis View). Accepter avec Enter et répéter est la boucle de base. En revanche, C-c C-a (TeX-command-run-all) enchaîne automatiquement les étapes nécessaires jusqu'à une erreur ou un achèvement, et en cas de succès, ouvre la visionneuse pour vous. Lorsque vous souhaitez simplement accéder à un PDF terminé, C-c C-a est le chemin rapide.
Pour standardiser sur latexmk en tant que compilateur, installez le package auctex-latexmk et appelez (auctex-latexmk-setup). Cela ajoute une entrée LatexMk aux choix C-c C-c, et définir TeX-command-default sur "LatexMk" en fait la valeur par défaut. Étant donné que latexmk inspecte les dépendances et réexécute exactement autant de fois que nécessaire, vous ne comptez jamais les passes pour les références croisées ou la table des matières. auctex-latexmk hérite également des TeX-PDF-mode et TeX-source-correlate-mode de AUCTeX, ajoutant automatiquement la sortie PDF et -synctex=1.
(use-package auctex-latexmk
:ensure t
:after tex
:config
;; Make latexmk pick up TeX-PDF-mode (pass -pdf when PDF output is on).
(setq auctex-latexmk-inherit-TeX-PDF-mode t)
(auctex-latexmk-setup)
;; Offer LatexMk as the default action for C-c C-c.
(setq-default TeX-command-default "LatexMk"))Les détails du moteur et de la bibliographie sont plus propres dans un .latexmkrc à la racine du projet (indépendamment des paramètres de AUCTeX ; le latexmk lancé à partir de C-c C-c le lit également). Pour le japonais, par exemple, attribuez upLaTeX + dvipdfmx à $latex / $dvipdf et choisissez $pdf_mode = 3. Voir la page des outils de construction pour les détails.
Les clés AUCTeX que vous accédez quotidiennement, rassemblées dans un tableau (la colonne name est la séquence de touches littérale) :
| Clé | Commande | Ce que ça fait |
|---|---|---|
C-c C-c | TeX-command-master | Choisissez et exécutez l'étape suivante (LaTeX → Afficher, …) |
C-c C-a | TeX-command-run-all | Exécutez toute la chaîne jusqu'à la fin, puis visualisez |
C-c ` | TeX-next-error | Passer à l'erreur suivante (backquote) |
C-c C-e | LaTeX-environment | Insérer un environnement (\begin..\end) |
C-c C-m | TeX-insert-macro | Insérer une macro par son nom (demande d'arguments) |
C-c C-f | TeX-font | Insérer une macro de police : \textbf, \emph, … |
RefTeX — références croisées et citations
RefTeX est un compagnon axé sur la gestion de \label, \ref et \cite. Il est distinct de AUCTeX et fourni avec Emacs lui-même (pas d'installation séparée). Activez reftex-mode dans les tampons LaTeX comme dans init.el ci-dessus et laissez-le coopérer avec AUCTeX, et l'étiquetage et le référencement deviennent considérablement plus faciles.
Le point crucial est que vous n'avez jamais besoin d'inventer des étiquettes à la main. C-c ( (reftex-label) regarde où vous vous trouvez (figure, tableau, équation, section) et propose une étiquette judicieusement préfixée (fig:, tab:, eq:, …) à insérer. Pour vous y référer, C-c ) (reftex-reference) vous permet simplement de choisir parmi les étiquettes existantes. Pour les citations, C-c [ (reftex-citation) recherche votre .bib par expression régulière et insère \cite{...} pour l'entrée que vous choisissez. Et C-c = (reftex-toc) ouvre un tampon de table des matières pour l'ensemble du document dans une autre fenêtre, afin que vous puissiez accéder à une section ou examiner la structure.
Pour une intégration approfondie avec AUCTeX, définissez reftex-plug-into-AUCTeX. L'insertion \label de AUCTeX et l'achèvement de \ref/\cite passent ensuite par RefTeX, et les deux packages ne font qu'un. Même dans les projets multi-fichiers (\include/\input), RefTeX suit le fichier maître pour rassembler toutes les étiquettes et toutes les citations dans l'ensemble du document.
(use-package reftex
:ensure nil ; bundled with Emacs
:hook (LaTeX-mode . turn-on-reftex)
:config
(setq reftex-plug-into-AUCTeX t ; cooperate with AUCTeX
reftex-cite-format 'natbib)) ; or 'biblatex, etc.preview-latex — aperçu en ligne
preview-latex compose en fait les mathématiques, les chiffres, tikzpictures, etc. avec LaTeX, puis superpose le résultat sous forme d'image directement dans le tampon source. Il est livré avec AUCTeX, il n'y a donc rien de plus à installer. La source d'un environnement $...$, \[...\] ou equation reste modifiable, mais s'affiche comme un paramètre mathématique lorsque vous souhaitez le vérifier - une sensation de type WYSIWYG tout en restant du texte brut.
Les commandes commencent par C-c C-p (Aperçu). C-c C-p C-p (preview-at-point) affiche uniquement l'objet au niveau du curseur (appuyez à nouveau pour revenir à la source). C-c C-p C-b s'occupe de l'intégralité du tampon, C-c C-p C-d de l'intégralité du document et C-c C-p C-r d'une région sélectionnée. C-c C-p C-c C-p efface les aperçus dans une région. Sous le capot, LaTeX exécute pour générer les images, donc le premier passage prend un moment.
preview-latex s'appuie sur Ghostscript et dvipng (ou une étape PDF-to-image) pour créer les images, celles-ci doivent donc être présentes dans votre distribution (TeX Live les a normalement). Cela s'avère particulièrement rentable dans les documents contenant de longues équations ou des diagrammes commutatifs, dans lesquels vous souhaitez voir le résultat défini en un coup d'œil pendant que vous écrivez.
YaTeX (野鳥) — le choix orienté japonais
YaTeX (野鳥, « oiseau sauvage ») est un mode majeur LaTeX pour Emacs de Yuuji Hirose. À l'échelle internationale, AUCTeX est le choix le plus courant, mais au Japon, YaTeX jouit d'une popularité durable et d'une documentation japonaise abondante. Le dernier en date est 1,84 (février 2025). Installez-le depuis MELPA avec M-x package-install RET yatex RET (ou, manuellement, déposez-le dans site-lisp et étendez load-path).
Sa philosophie diffère un peu de AUCTeX, s'appuyant sur « tapez les premières lettres plus la complétion » pour insérer rapidement des macros et des environnements. Le préfixe est C-c par défaut. C-c b est un type de complétion de type début (environnements, \begin{...}...\end{...}), C-c s est un type de section (\section, …), C-c l est un type de gros caractères (taille/face comme \large) et C-c m est de type maketitle (macros sans argument telles que \maketitle, \item). La composition commence par C-c C-t : compositions C-c C-t j et aperçus C-c C-t p (lance la visionneuse).
Quelques variables ancrent la configuration japonaise. YaTeX-kanji-code est l'encodage kanji lors de la sauvegarde ; puisque UTF-8 est désormais standard, définissez-le sur nil (respectez l'encodage existant du fichier) si vous ne souhaitez pas que les fichiers soient réencodés silencieusement. tex-command est la commande de composition réellement invoquée — par ex. "latexmk", "lualatex -synctex=1" ou "uplatex". La définition de bibtex-command et makeindex-command sur upbibtex et upmendex permet aux bibliographies et index japonais de fonctionner. Voici un init.el minimal :
(use-package yatex
:ensure t ; from MELPA
:mode ("\\.tex\\'" . yatex-mode)
:config
(setq YaTeX-kanji-code nil ; keep the file's own encoding (UTF-8)
tex-command "latexmk" ; or "lualatex -synctex=1", "uplatex"
bibtex-command "upbibtex"
makeindex-command "upmendex"
;; Use C-c C-t style prefixes (C-c C-t j, C-c C-t p, ...).
YaTeX-inhibit-prefix-letter t))En définissant YaTeX-inhibit-prefix-letter sur t, les touches de composition sont C-c C-t ... (l'idiome Emacs détenu par le modificateur) plutôt que C-c t .... YaTeX propose également un mode sœur pour HTML, yahtml. AUCTeX et YaTeX sont mieux engagés envers l'un ou l'autre plutôt que mélangés : choisissez AUCTeX pour un travail principalement en anglais ou pour utiliser preview-latex/RefTeX au maximum, et YaTeX pour rédiger rapidement des documents japonais.
Une boucle d'écriture Emacs pratique
Après avoir rédigé les paramètres, ne commencez pas par une grande thèse. Corrigez d'abord la boucle edit, typeset, reference, check-PDF sur un petit main.tex. Dans AUCTeX, parcourez avec C-c C-a ; une fois le PDF ouvert, créez des étiquettes pour les équations ou les figures avec C-c (, puis insérez des références de la prose avec C-c ). Lorsqu'une erreur apparaît, passez à la suivante avec C-c \` et continuez à lire le journal dans Emacs. Une fois cette boucle entre vos doigts, Emacs n'est plus simplement « configuré » ; il devient l'établi où les chapitres de la thèse avancent chaque jour.
Au cours de la première demi-heure, décidez à qui appartient la version, et non le thème ou les couleurs. Soit vous passez par le standard C-c C-c de AUCTeX, soit vous déléguez la chaîne à latexmk via auctex-latexmk. Une fois associé à un projet .latexmkrc, le même PDF peut être reproduit à partir de Emacs, d'un autre éditeur ou de CI.