RÉFÉRENCE RAPIDE EMACS
Navigation, édition, tampons, recherche, org mode, paquets
Navigation
Déplacement du curseur
| C-f / C-b | Avancer / reculer d'un caractère |
| M-f / M-b | Avancer / reculer d'un mot |
| C-n / C-p | Ligne suivante / précédente |
| C-a / C-e | Début / fin de ligne |
| M-a / M-e | Début / fin de phrase |
| C-v / M-v | Défiler vers le bas / haut d'une page |
| M-< / M-> | Début / fin du tampon |
| M-g g | Aller à un numéro de ligne |
Positionnement de l'écran
| C-l | Recentrer l'écran (bascule haut/centre/bas) |
| C-M-l | Repositionner la fenêtre de façon heuristique |
Édition
Couper et coller (Kill & Yank)
| C-k | Couper jusqu'à la fin de ligne |
| C-w | Couper la région (kill) |
| M-w | Copier la région |
| C-y | Coller (yank) |
| M-y | Parcourir le kill ring après un yank |
| C-d | Supprimer le caractère suivant |
| M-d | Couper le mot suivant |
| M-DEL | Couper le mot précédent |
Annuler et transposer
| C-/ ou C-_ | Annuler |
| C-g C-/ | Rétablir (annuler l'annulation) |
| C-t | Transposer les caractères |
| M-t | Transposer les mots |
| C-x C-t | Transposer les lignes |
Sélection
| C-SPC | Poser la marque (début de sélection) |
| C-x h | Sélectionner tout le tampon |
| M-h | Sélectionner le paragraphe |
| C-x C-x | Échanger le point et la marque |
Tampons et fenêtres
Tampons
| C-x b | Changer de tampon |
| C-x C-b | Lister tous les tampons |
| C-x k | Fermer (tuer) le tampon |
| C-x LEFT / RIGHT | Tampon précédent / suivant |
Fenêtres
| C-x 2 | Diviser la fenêtre horizontalement |
| C-x 3 | Diviser la fenêtre verticalement |
| C-x 0 | Fermer la fenêtre courante |
| C-x 1 | Fermer toutes les autres fenêtres |
| C-x o | Passer à l'autre fenêtre |
| C-x ^ | Agrandir la fenêtre verticalement |
| C-x { | Réduire la fenêtre horizontalement |
Frames
| C-x 5 2 | Créer un nouveau frame |
| C-x 5 0 | Supprimer le frame courant |
| C-x 5 o | Passer à l'autre frame |
Recherche et remplacement
Recherche incrémentale
| C-s | Recherche vers l'avant (incrémentale) |
| C-r | Recherche vers l'arrière (incrémentale) |
| C-s C-s | Répéter la dernière recherche vers l'avant |
| C-M-s | Recherche par regex vers l'avant |
| C-M-r | Recherche par regex vers l'arrière |
| RET | Quitter la recherche à la position courante |
| C-g | Annuler la recherche et revenir au début |
Remplacement
| M-% | Remplacement interactif |
| C-M-% | Remplacement interactif par regex |
| y | Remplacer cette occurrence |
| n | Ignorer cette occurrence |
| ! | Remplacer toutes les occurrences restantes |
| q | Quitter le remplacement |
Fichiers
Opérations sur les fichiers
| C-x C-f | Ouvrir un fichier |
| C-x C-s | Sauvegarder le tampon courant |
| C-x C-w | Enregistrer sous (dans un nouveau fichier) |
| C-x s | Sauvegarder tous les tampons modifiés |
| C-x C-r | Ouvrir un fichier en lecture seule |
| C-x i | Insérer le contenu d'un fichier à la position |
Dired (éditeur de répertoire)
| C-x d | Ouvrir un répertoire dans Dired |
| d / x | Marquer pour suppression / exécuter les suppressions |
| R | Renommer / déplacer un fichier |
| C | Copier un fichier |
| + | Créer un répertoire |
| g | Rafraîchir la liste |
Modes
Modes majeurs
| M-x fundamental-mode | Édition de texte brut |
| M-x text-mode | Texte avec remplissage et vérification orthographique |
| M-x prog-mode | Base pour les modes de programmation |
| M-x python-mode | Édition et indentation Python |
| M-x shell-mode | Shell interactif dans un tampon |
Modes mineurs utiles
| M-x display-line-numbers-mode | Afficher/masquer les numéros de ligne |
| M-x auto-fill-mode | Retour à la ligne automatique à la colonne de remplissage |
| M-x flyspell-mode | Vérification orthographique à la volée |
| M-x column-number-mode | Afficher la colonne dans la barre de mode |
| M-x whitespace-mode | Visualiser les espaces blancs |
| M-x electric-pair-mode | Fermeture automatique des parenthèses et guillemets |
Bases d'Org Mode
Structure
| * / ** / *** | Niveaux de titre 1 / 2 / 3 |
| TAB | Basculer la visibilité du titre |
| S-TAB | Basculer la visibilité globale |
| M-RET | Insérer un titre au même niveau |
| M-LEFT / M-RIGHT | Promouvoir / rétrograder le titre |
| M-UP / M-DOWN | Déplacer le sous-arbre vers le haut / bas |
TODO et cases à cocher
| C-c C-t | Changer l'état TODO |
| C-c C-d | Définir une échéance |
| C-c C-s | Planifier un élément |
| C-c C-c | Cocher/décocher [ ] / [X] |
| C-c a | Ouvrir la vue agenda |
Liens et export
| C-c C-l | Insérer / modifier un lien |
| C-c C-o | Ouvrir le lien à la position |
| C-c C-e | Dispatcher d'export (HTML, PDF, etc.) |
Gestion des paquets
package.el
| M-x list-packages | Parcourir les paquets disponibles |
| i / d / x | Marquer l'installation / suppression / exécuter |
| U | Marquer tous les paquets à mettre à jour |
| M-x package-refresh-contents | Rafraîchir la liste des paquets |
use-package (init.el)
(use-package magit
:ensure t
:bind ("C-x g" . magit-status))
(use-package company
:ensure t
:hook (prog-mode . company-mode))
Configuration
Fichiers de configuration importants
| ~/.emacs.d/init.el | Fichier de configuration principal |
| ~/.emacs.d/early-init.el | Initialisation précoce (avant GUI, Emacs 27+) |
| ~/.emacs.d/custom.el | Paramètres écrits par Customize |
Paramètres courants
(setq inhibit-startup-screen t)
(tool-bar-mode -1)
(set-face-attribute 'default nil :height 120)
(global-display-line-numbers-mode 1)
(setq make-backup-files nil)
Système d'aide
| C-h k | Décrire un raccourci clavier |
| C-h f | Décrire une fonction |
| C-h v | Décrire une variable |
| C-h m | Décrire les modes courants |
| C-h t | Ouvrir le tutoriel Emacs |
| C-h i | Ouvrir la documentation Info |
Patterns courants
Édition de rectangles
| C-x SPC | Démarrer le mode de marque rectangulaire |
| C-x r k | Couper le rectangle |
| C-x r y | Coller le rectangle |
| C-x r t | Remplacer le rectangle par une chaîne |
| C-x r o | Insérer un rectangle vide |
Macros
| C-x ( | Démarrer l'enregistrement de la macro |
| C-x ) | Arrêter l'enregistrement de la macro |
| C-x e | Exécuter la dernière macro |
| C-u 10 C-x e | Exécuter la macro 10 fois |
| M-x name-last-kbd-macro | Nommer la macro pour réutilisation |
Shell et évaluation
| M-x shell | Ouvrir un shell dans un tampon |
| M-x eshell | Shell Emacs Lisp |
| M-! | Exécuter une commande shell |
| M-x eval-buffer | Évaluer tout le tampon comme Elisp |
| C-x C-e | Évaluer l'expression Elisp avant la position |