Ma configuration Emacs



Tags : #elisp #emacs

Dernière modification le 22 avril 2026. Créé le 22 avril 2026.

Ma configuration Emacs, construite au fil des années sur mon outil de travail principal (Emacs !), tient en une trentaine de fichiers et un peu plus de dix mille lignes. Elle est disponible ici : https://github.com/occisn/emacs-config.

Elle n’a rien d’exemplaire. Les chemins codés en dur pointent vers mes répertoires, pas vers les vôtres. Certaines fonctionnalités dépendent d’exécutables externes — zip, pandoc, et quelques autres. Certains commentaires, écrits il y a cinq ou six ans, n’ont pas bien vieilli.

Quelques particularités :

1) Démarrage rapide

Le chargement de la plupart des paquets (packages) est différé jusqu’à leur premier usage. Sur un ordinateur portable standard, le démarrage se fait alors en moins de quatre secondes.

Au démarrage, un tampon (buffer) d’accueil récapitule le temps passé à charger chaque section des fichiers d’initialisation et chaque paquet. Ainsi, si le démarrage se met à ralentir, il est plus facile d’identifier le coupable.

Tampon récapitulant le démarrage

2) Même configuration sous Windows et Linux (WSL)

La configuration détecte automatiquement la plateforme et les outils disponibles, puis adapte silencieusement ses raccourcis et ses chemins. Sous WSL, certaines commandes se rabattent sur des équivalents Linux, d’autres passent par cmd.exe pour atteindre leurs équivalents Windows.

Ainsi, je dispose du même Emacs et des mêmes raccourcis, sur n’importe laquelle de mes machines.

3) Des hydras partout

Emacs propose un mode majeur pour à peu près tout : Lisp, Org, Dired, Magit, LaTeX, C, Python, etc. Chaque mode a ses commandes utiles, parfois enfouies derrière des combinaisons complexes.

J’ai associé à chaque mode que j’utilise son propre hydra, qui liste ses commandes les plus fréquentes sous forme de menu. Tous ces hydras se déclenchent avec le même raccourci : C-c d. Quel que soit le mode actif, C-c d ouvre le bon menu.

4) C-c c — copier ce qui a du sens à cet endroit

Plutôt que d’avoir à mémoriser un raccourci par type d’objet, une commande personnalisée liée à C-c c examine le contexte et choisit le bon périmètre à copier : mot dans un paragraphe, symbole dans du code, contenu d’un bloc #+begin_src, ligne d’un tableau.

5) Changer de thème ou de police, au clic

Choisir un thème parmi la vingtaine que j’ai préinstallée est fastidieux en ligne de commande. D’où une paire de tampons (buffers) à boutons : un clic active le thème ou la police correspondants, sans quitter la session en cours.

Tampon de choix de thème
Tampon de choix de police