#+TITLE: Ma cheat-sheet d’Emacs

En construction.
Version moins moche : fichier.org.

* C-u

Pour les commandes suivantes, je renseigne deux colonnes supplémentaires : ‰M-4 commande‰, et ‰C-u commande‰.
Si ‰C-u‰ se comporte comme ‰C-u 4‰, je laisse vide.

| C-u                                | « argument universel ».                                                                  |
|                                    | Permet de modifier le comportement d’une fonction                                        |
|                                    | Permet d'exécuter la commande plusieurs fois                                             |
|                                    | Permet de passer un paramètre numérique à une fonction                                   |
|------------------------------------+------------------------------------------------------------------------------------------|
| C-u chiffres commande              | faire la commande chiffres fois                                                          |
| C-u 5 -                            | -----                                                                                    |
| C-u 5 BackSpace                    | efface les 5 dernières lettres                                                           |
| C-u 2 M-x forward-word             | avance de 2 mots                                                                         |
| C-u commande                       | répète la commande 4 fois                                                                |
| C-u C-u commande                   | répète la commande 16 fois                                                               |
| C-u C-u *                          | ****************                                                                         |
|------------------------------------+------------------------------------------------------------------------------------------|
| M-chiffres commande                | fait la commande chiffres fois, comme C-u chiffres commande                              |
| M-5 -                              | -----                                                                                    |
| M-1 M-6 *                          | ****************                                                                         |
|------------------------------------+------------------------------------------------------------------------------------------|
| C-u commande                       | appelle la commande avec un comportement spécial                                         |
| M-x goto-line 4 (C-x l 4)          | va à la ligne 4                                                                          |
| C-u 4 goto-line (C-u 4 C-x l)      | va à la ligne 4                                                                          |
| M-4 goto-line (M-4 C-x l)          | va à la ligne 4                                                                          |
| C-u M-x goto-line 4  (C-u C-x l 4) | va à la ligne 4 dans un autre buffer                                                     |
| M-x yank (C-y)                     | colle le texte le plus récemment coupé, en mettant la marque au début, le point à la fin |
| C-u 4 M-x yank (C-u 4 C-y)         | colle le 4ème texte le plus récemment coupé                                              |
| C-u M-x yank (C-u C-y)             | colle le texte le plus récemment coupé, en mettant la marque à la fin, le point au début |

* Aide
| raccourci | commande               | ce que ça fait                                                  | M-4 commande                               | C-u commande |
|-----------+------------------------+-----------------------------------------------------------------+--------------------------------------------+--------------|
| C-h a     | apropos                | montre ce que fait la commande dans un buffer                   | montre aussi les fonctions non-interactive | idem         |
| C-h k     | describe-key           | affiche ce que fait un raccourci dans un buffer                 |                                            |              |
| C-h c     | describe-key-briefly   | affiche la fonction appelée par un raccourci dans le minibuffer |                                            |              |
| C-h f     | describe-function      | affiche ce que fait la fonction dans un buffer                  |                                            |              |
| C-h t     | help-with-tutorial     | affiche le tutoriel                                             | demande la langue du tutoriel              | idem         |
| C-h w     | where-is               | affiche le raccourci correspondant à la commande                |                                            |              |
| C-h e     | view-eco-area-messages | montre la log des messages récents                              |                                            |              |
| C-h i     | info                   | affiche Info                                                    |                                            |              |
| C-h l     | view-lossage           | affiche les 300 dernières frappes de touche                     |                                            |              |
| C-h m     | describe-mode          | affiche la doc du mode majeur et des modes mineurs du buffer    |                                            |              |

* Se déplacer
|     |                        |                          | M-4                                        | C-u |
|-----+------------------------+--------------------------+--------------------------------------------+-----|
| C-a | move-beginning-of-line | aller en début de ligne  | se déplace de 3 lignes vers le bas d’abord |     |
| M-a | backward-sentence      | aller en début de phrase | remonte de 4 phrases                       |     |
| C-e | move-end-of-line       | aller en fin de ligne    | se déplace de 3 lignes vers le bas d’abord |     |
| M-e | forward-sentence       | aller en fin de phrase   | avance de 4 phrases                        |     |

| C-f | forward-char  | lettre suivante              | avance de 4 lettres |   |
| M-f | forward-word  | mot suivant                  | avance de 4 mots    |   |
| C-b | backward-char | lettre précédente (backward) | recule de 4 lettres |   |
| M-b | backward-char | mot précédent                | recule de 4 mots    |   |

| C-p | previous-line | ligne précédente | recule de 4 lignes |   |
| C-n | next-line     | ligne suivante   | avance de 4 lignes |   |

| C-v              | scroll-up-command              | avance le texte d’un écran                                                               | déplace le texte de 4 lignes vers le haut            |                                    |
| M-v              | scroll-down-command            | recule le texte d’un écran                                                               | déplace le texte de 4 lignes vers le bas             |                                    |
| C-M-v            | scroll-other-window            | avance le texte de la prochaine fenêtre d’un écran                                       | déplace le texte de la prochaine fenêtre de 4 lignes |                                    |
| C-l              | recenter-top-bottom            | met la ligne courante avec le point au centre (en haut/en bas, après appels successifs)  | met la ligne courante sur la 4e ligne de la fenêtre  | met la ligne au centre             |
| M-g g chiffres   | goto-line                      | aller à la ligne chiffres du buffer                                                      | va à la 4e ligne du buffer                           | va à la 4e ligne de l’autre buffer |
| M-g M-g chiffres | goto-line                      |                                                                                          |                                                      |                                    |
| C-x l chiffres   | goto-line                      |                                                                                          |                                                      |                                    |
| M-r              | move-to-window-line-top-bottom | met le point sur la ligne au milieu de la fenêtre (en haut/en bas, si appels successifs) | met le point sur la 4e ligne de la fenêtre           |                                    |

| M-< | beginning-of-buffer | aller au début du buffer | aller au 4/10 du buffer       | ne laisse pas de marque à la précédente position |
| M-> | end-of-buffer       | aller à la fin du buffer | aller au 4/10 à partir du bas | ne laisse pas de marque à la précédente position |

| M-m | back-to-indentation | aller au premier caractère non blanc de la ligne |   |   |

* Éditer
|                |                              |                                                                                 | M-4                                          | C-u                                       |
|----------------+------------------------------+---------------------------------------------------------------------------------+----------------------------------------------+-------------------------------------------|
| M-i            | tab-to-tab-stop              | insère des espaces/tabulations jusqu’au prochain tab-stop                       |                                              |                                           |
| C-i            | indent-for-tab-command       | indente la ligne ou la région, ou insère une tabulation, ou fait une complétion |                                              |                                           |
| TAB            | indent-for-tab-command       | dépend beaucoup du mode                                                         |                                              |                                           |
| C-x TAB        | indent-rigidly               | indente toutes les lignes de la région avec [S-]gauche/droite                   | indente de 4 colonnes                        |                                           |
| M-;            | comment-dwim                 | appelle la commande de commentaire (Do What I Mean)                             |                                              |                                           |
|                |                              | si une région est active et transient-mark-mode est on, commente la région      |                                              |                                           |
|                |                              | sauf si la région n'est composée que de commentaire, la décommente              |                                              |                                           |
|                |                              | sinon, si la ligne est vide, insère un commentaire (et indente)                 |                                              |                                           |
|                |                              | sinon, si un argument est présent, appelle comment-kill                         |                                              |                                           |
|                |                              | sinon appelle comment-indent                                                    |                                              |                                           |
| C-j            | electric-indent-just-newline | insère une nouvelle ligne, sans indentation                                     | insère 4 lignes                              |                                           |
| C-o            | open-line                    | insère une ligne en laissant le point à sa place                                | insère 4 lignes                              |                                           |
| C-M-o          | split-line                   | sépare la ligne en déplaçant la fin verticalement                               | n’insère pas fill-prefix                     |                                           |
| C-x C-o        | delete-blank-lines           | supprime les lignes vides                                                       |                                              |                                           |
| M-^            | delete-indentation           | joint cette ligne et la précédente                                              | joint cette ligne et la suivante             |                                           |
| M-\            | delete-horizontal-space      | supprime toutes les espaces/tabulations autour du point                         | supprime seulement celles précédent le point |                                           |
| M-SPC          | just-one-space               | supprime les espaces/tabulations autour du point et ne laisse qu’une espace     | laisse 4 espaces                             |                                           |
|                |                              | avec un argument négatif, supprime également les fins de ligne                  |                                              |                                           |
| M-q            | fill-paragraph               | reformate le paragraphe sur ou après le point, ou les paragraphes de la région  | idem et justify                              |                                           |
| C-x f chiffres | set-fill-column              | définit fill-column à chiffres                                                  | définit fill-column à 4                      | définit fill-column à la colonne courante |
| M-o M-s        | center-line                  | centre la ligne                                                                 | centre 4 lignes                              |                                           |
| M-o M-S        | center-paragraph             | centre le paragraphe                                                            |                                              |                                           |

| C-t         | transpose-chars | échange 2 lettres                                       | avance le caractère précédent le point de 4 caractères |   |
| M-t         | transpose-words | échange 2 mots                                          | avance le mot de 4 mots                                |   |
| M-0 M-t     |                 | échange le mot vers le point avec le mot vers la marque |                                                        |   |
| C-x C-t     | transpose-lines | échange la ligne courante et la précédente              | déplace la ligne précédente de 4 lignes                |   |
| M-0 C-x C-t |                 | échange la ligne courante avec celle de la marque       |                                                        |   |

| M-u     | upcase-word     | met en lettres capitales le mot                        | et les 3 prochains |   |
| M-l     | downcase-word   | met en lettres minuscules le mot                       | et les 3 prochains |   |
| M-c     | capitalize-word | met en lettre capitale la lettre et va à la fin du mot | et les 3 prochains |   |
|         |                 | pour ces 3 commandes                                   |                    |   |
|         |                 | si au milieu d’un mot, ne prend pas en compte le début |                    |   |
|         |                 | avec un argument négatif, le point reste en place      |                    |   |
| C-x C-u | upcase-region   | met en lettres capitales la region                     |                    |   |
| C-x C-l | downcase-region | met en lettres capitales la region                     |                    |   |

Si font-lock-mode n’est pas on
| M-o d | facemenu-set-default     | met la face par défaut                      |   |   |
| M-o b | facemenu-set-bold        | en gras                                     |   |   |
| M-o i | facemenu-set-italic      | en italique                                 |   |   |
| M-o l | facemenu-set-bold-italic | en gras et italique                         |   |   |
| M-o o | facemenu-set-face        | applique la face (TAB pour avoir une liste) |   |   |
| M-o u | facemenu-set-underline   | souligne                                    |   |   |

* Couper/Copier/Coller
|           |                      |                                                                                          | M-4                                    | C-u                                       |
|-----------+----------------------+------------------------------------------------------------------------------------------+----------------------------------------+-------------------------------------------|
| C-d       | delete-char          | supprime la prochaine lettre                                                             | kill les 4 prochaines lettres          |                                           |
| M-d       | kill-word            | kill le prochain mot                                                                     | kill les 4 prochains mots              |                                           |
| BackSpc   | delete-backward-char | supprime la lettre précédente                                                            | kill les 4 lettres précédentes         |                                           |
| M-BackSpc | backward-kill-word   | kill le mot précédent                                                                    | kill les 4 mots précédents             |                                           |
| C-k       | kill-line            | kill le reste de la ligne                                                                | kill les 3 prochaines lignes également |                                           |
| M-0 C-k   |                      | kill le début de la ligne                                                                |                                        |                                           |
| C-w       | kill-region          | kill la région                                                                           |                                        |                                           |
| M-w       | kill-ring-save       | copie la région                                                                          |                                        |                                           |
| C-M-w     | append-next-kill     | si la commande suivante est un kill, ajoute au précédent kill                            |                                        |                                           |
| C-y       | yank                 | colle le texte le plus récemment coupé, en mettant la marque au début, le point à la fin | colle le 4ème kill le plus récent      | met la marque à la fin, le point au début |
| M-y       | yank-pop             | après un yank (ou un yank-pop) remplace le yank par le kill précédent                    | par le 4ème kill le plus récent        |                                           |
| M-z x     | zap-to-char          | kill jusqu’au caractère x inclus                                                         | jusqu’au 4ème caractère x              |                                           |
* Fenêtres/buffers
|       |                             |                                                                                     | M-4                               | C-u |
|-------+-----------------------------+-------------------------------------------------------------------------------------+-----------------------------------+-----|
| C-x 1 | delete-other-windows        | la window remplit la frame (le buffer courant devient le seul buffer de la fenêtre) |                                   |     |
| C-x 2 | split-window-below          | splitte la window en 2, la nouvelle est dessous                                     | la window du dessus fait 4 lignes |     |
| C-x 3 | split-window-right          | splitte la window en 2, la nouvelle est à droite                                    | la window de gauche fait 4 lignes |     |
| C-x 0 | delete-window               | supprime la fenêtre                                                                 |                                   |     |
| C-x o | other-window                | choisit la prochaine window                                                         | choisit la 4e prochaine window    |     |
| C-x ^ | enlarge-window              | réduit la window d’une ligne                                                        | réduit de 4 lines                 |     |
| C-x { | shrink-window-horizontally  | réduit la window d’une colonne                                                      | réduit de 4 colonnes              |     |
| C-x } | enlarge-window-horizontally | agrandit la window d’une colonne                                                    | agrandit de 4 colonnes            |     |

| C-x K             | kill-buffer                   | kill le buffer                                                       |                                                                 |   |
| C-x droite/gauche | next/previous-buffer          | va au buffer suivant/précédent                                       |                                                                 |   |
| C-x b             | switch-to-buffer              | affiche le buffer dans la window (le crée s’il n’existe pas)         |                                                                 |   |
| C-x C-b           | list-buffers                  | affiche une liste des buffers existants                              | affiche uniquement ceux qui visitent un fichier                 |   |
| C-x C-q           | read-only-mode                | change le fait que le buffer soit en lecture seule                   | le met en lecture seule. Un argument négatif le met en écriture |   |
| C-x 4 0           | kill-buffer-and-window        | tue le buffer et ferme la window courante                            |                                                                 |   |
| C-x 4 b           | switch-to-buffer-other-window | affiche le buffer dans une autre window, se positionne dessus        |                                                                 |   |
| C-x 4 C-o         | display-buffer                | affiche le buffer dans une autre window, ne se positionne pas dessus |                                                                 |   |
| C-x 4 f           | find-file-other-window        | ouvre le fichier dans une autre fenêtre                              |                                                                 |   |

* Fichiers
|             |             |                                                                                                 | M-4                                      | C-u                                                                  |
|-------------+-------------+-------------------------------------------------------------------------------------------------+------------------------------------------+----------------------------------------------------------------------|
| C-x C-f     | find-file   | édite le fichier, se met dans un buffer le visitant, en le créant si nécessaire                 |                                          |                                                                      |
| C-x C-s     | save-buffer | sauve le buffer courant dans le fichier visité. La version précédente devient le backup         |                                          | 1 fois : cette version devient le backup de la prochaine sauvegarde  |
|             |             |                                                                                                 |                                          | 2 fois : la version précédente devient le backup inconditionnelement |
| M-0 C-x C-s |             | ne fait pas un backup de la version précédente                                                  |                                          |                                                                      |
|             |             |                                                                                                 |                                          | 3 fois : 1 fois + 2 fois                                             |
|             |             |                                                                                                 |                                          |                                                                      |
| C-x C-w     | write-file  | écrit le buffer dans le fichier en argument                                                     | ne demande pas confirmation pour écraser |                                                                      |
| C-x i       | insert-file | insère le contenu du fichier dans le buffer après le point, met la marque après le texte inséré |                                          |                                                                      |

* Marques
|           |                         |                                                        | M-4                                     | C-u |
|-----------+-------------------------+--------------------------------------------------------+-----------------------------------------+-----|
| C-SPC     | set-mark-command        | fait une marque (donc le début d'une région/rectangle) | fait une marque et va à la précédente   |     |
| C-@       | set-mark-command        |                                                        |                                         |     |
| C-x C-SPC | pop-global-mark         | va à la précédente marque globale                      |                                         |     |
| C-x C-@   | pop-global-mark         |                                                        |                                         |     |
| M-@       | mark-word               | marque jusqu'à la fin du mot                           | marque jusqu’au 4 prochains mots        |     |
| C-x C-x   | exchange-point-and-mark | échanger le point et la marque                         | ne passe pas en Transient               |     |
| M-h       | mark-paragraph          | sélectionne le paragraphe, le point au début           | met la marque à la fin du 4e paragraphe |     |
| C-x h     | mark-whole-buffer       | sélectionne tout le buffer                             |                                         |     |

* Macro
|                  |                                      |                                                          | M-4                                        | C-u                                                         |
|------------------+--------------------------------------+----------------------------------------------------------+--------------------------------------------+-------------------------------------------------------------|
| C-x (            | kmacro-start-macro                   | démarre l’enregistrement d’une macro                     |                                            | ajoute à la dernière macro                                  |
| C-x )            | kmacro-end-macro                     | arrête l’enregistrement de la macro                      | répète la macro 4 fois                     |                                                             |
|                  |                                      |                                                          |                                            |                                                             |
| C-x C-k C-a      | kmacro-add-counter                   | demande la valeur à ajouter au compteur                  | ajoute 4 au compteur                       | remet l’ancienne valeur                                     |
| C-x C-k C-c      | kmacro-set-counter                   | demande quelle valeur mettre au compteur                 | met 4 au compteur                          | remet le compteur à la valeur avant l’itération de la macro |
| C-x C-k C-e      | kmacro-edit-macro-repeat             | édite la dernière macro                                  |                                            |                                                             |
| C-x C-k C-f      | kmacro-set-format                    | met le compteur au format donné                          |                                            |                                                             |
| C-x C-k TAB      | kmacro-insert-counter                | insère le compteur, ajoute 1                             | insère et ajoute 4                         | insère le précédent compteur et le ne modifie pas           |
| C-x C-k C-l      | kmacro-call-ring-2nd-repeat          | exécute la pénultième macro                              |                                            |                                                             |
| C-x C-k C-n      | kmacro-cycle-ring-next               | prochaine macro dans le ring                             | 4e prochaine macro dans le ring            |                                                             |
| C-x C-k C-p      | kmacro-cycle-ring-previous           | précédente macro dans le ring                            | 4e précédente macro                        |                                                             |
| C-x C-k C-t      | kmacro-swap-ring                     | échange les 2 premières macro du ring                    |                                            |                                                             |
| C-x C-k C-v      | kmacro-view-macro-repeat             | affiche la dernière macro                                | la 4e dernière macro                       |                                                             |
| C-x C-k SPC      | kmacro-step-edit-macro               | exécute la derinère macro en éditant pas à pas           |                                            |                                                             |
| C-x C-k b        | kmacro-bind-to-key                   | demande à quelle touche lier la dernière macro           |                                            |                                                             |
| C-x C-k [0-9A-Z] |                                      | exécute la commande liée à la touche                     |                                            |                                                             |
| C-x C-k e        | edit-kbd-macro                       | édite une macro                                          |                                            |                                                             |
| C-x C-k l        | kmacro-edit-lossage                  | édite les 300 dernières frappe comme une macro           |                                            |                                                             |
| C-x C-k n        | kmacro-name-last-macro               | nomme la dernière macro                                  |                                            |                                                             |
| C-x C-k r        | apply-macro-to-region-lines          | exécute la dernière macro pour chaque ligne de la région |                                            |                                                             |
| C-x C-k x        | kmacro-to-register                   | store la dernière macro dans le registre                 |                                            |                                                             |
| F3               | kmacro-start-macro-or-insert-counter | met le compteur à 0, enregistre la macro                 | met le compteur à 4, enregistre la requête | ajoute à la dernière macro                                  |
|                  |                                      | en enregistrant, insère le compteur et ajoute 1          | insère et ajoute 4                         | insère le précédent compteur, ne l’incrémente pas           |
| F4               | kmacro-end-or-call-macro             | termine l’enregistrement de la macro                     |                                            |                                                             |
|                  |                                      | si pas en enregistrement, exécute la macro               | exécute 4 fois                             | exécute la penultième macro                                 |

* Recherches
|       |                         |                                                                                  | M-4                         | C-u |
|-------+-------------------------+----------------------------------------------------------------------------------+-----------------------------+-----|
| C-s   | isearch-forward         | fait une recherche incrémentale après le point                                   | avec regexp                 |     |
| C-r   | isearch-backward        | fait une recherche incrémentale avant le point                                   | avec regexp                 |     |
| M-%   | query-replace           | chercher/remplacer (dans la région si en mode transient mark avec marque active) | remplace les mots seulement |     |
| C-M-s | isearch-forward-regexp  | chercher avec regexp                                                             | sans regexp                 |     |
| C-M-r | isearch-backward-regexp | chercher avec regexp en arrière                                                  | sans regexp                 |     |
| C-M-% | query-replace-regexp    | chercher/remplacer avec regexp                                                   | remplace les mots seulement |     |

| M-s w   | isearch-forward-word            | cherche la séquence de mots (peuvent être séparés par de la ponctuation) | recherche normale         |                            |
| M-s .   | isearch-forward-symbol-at-point | cherche le symbole sur lequel le point se trouve                         |                           |                            |
| M-s o   | occur                           | affiche les lignes contenant la regexp dans un buffer                    | avec 4 lignes de contexte |                            |
| M-s h . | highlight-symbol-at-point       | highlight le symbole sur lequel le point se trouve                       |                           |                            |
| M-s h l | highlight-lines-matching-regexp | highlight les lignes qui matchent la regexp                              |                           |                            |
| M-s h r | highlight-regexp                | highlight la regexp                                                      |                           |                            |
| M-s h u | unhighlight-regexp              | enlève l'highlight sur la regexp                                         |                           | enlève tous les highlights |


Pendant une recherche
| BackSpc | supprime le dernier caractère de la recherche                                  |
| Entrée  | sort de la recherche, laisse le point à l’emplacement trouvé                   |
| M-p     | cherche le précédent item du search-ring                                       |
| M-n     | cherche le prochain item du search-ring                                        |
| C-M-i   | complète la chaîne de recherche à partir du search-ring                        |
| C-j     | cherche la fin de ligne                                                        |
| C-s     | cherche la prochaine occurence                                                 |
| C-r     | cherche l’occurence précédente                                                 |
| C-w     | ajoute la fin du mot à la fin de la chaîne de recherche                        |
| M-s C-e | ajoute la fin de la ligne à la chaîne de recherche                             |
| C-y     | ajoute le dernier kill                                                         |
| C-g     | si la recherche échoue, revient à la dernière recherche en succès              |
|         | si la recherche est en succès, arrête la recherche, revient au point de départ |
| M-s c   | recherche en étant sensible ou non à la casse                                  |
| M-s r   | recherche en expression régulière ou non                                       |
| M-s w   | recherche les mots                                                             |
| M-s e   | édite la chaîne de recherche                                                   |
| M-%     | lance query-replace avec la dernière chaîne de recherche à remplacer           |
| C-M-%   | lance query-replace-regexp                                                     |
| M-s o   | lance occur avec la dernière recherche                                         |
| M-s h r | lance highlight-regexp avec la dernière recherche                              |

Pendant un remplacement 
| SPC           | remplace                                                          |
| y             | remplace                                                          |
| n             | ne remplace pas, va au prochain                                   |
| Suppr/Backspc | ne remplace pas, va au prochain                                   |
| Entrée        | quitte                                                            |
| q             | quitte                                                            |
| .             | remplace et quitte                                                |
| ,             | remplace et ne bouge pas le point tout de suite                   |
| \!            | remplace toutes les occurences du modem                           |
| \^            | revient à la précédente                                           |
| E             | édite la chaîne de remplacement                                   |
| Y             | remplace toutes les occurences de tous les buffers restants       |
| N             | ne remplace pas toutes les occurences de ce buffer, va au suivant |

* Rectangles
|           |                            |                                                     | M-4                                                         | C-u |
|-----------+----------------------------+-----------------------------------------------------+-------------------------------------------------------------+-----|
| C-x r c   | clear-rectangle            | vide le rectangle (remplit de blanc)                | remplit de blanc les parties du rectangle qui étaient vides |     |
| C-x r d   | delete-rectangle           | supprime le rectangle                               | remplit de blanc les parties du rectangle qui étaient vides |     |
| C-x r k   | kill-rectangle             | supprime le rectangle et le sauve dans le kill-ring | remplit de blanc les parties du rectangle qui étaient vides |     |
| C-x r o   | open-rectangle             | ouvre un rectangle (insère des blancs)              | remplit de blanc même s’il n’y a pas de texte à droite      |     |
| C-x r r   | copy-rectangle-to-register | copie le rectangle dans un registre                 |                                                             |     |
| C-x r t   | string-rectangle           | insère un rectangle                                 |                                                             |     |
| C-x r y   | yank-rectangle             | colle un rectangle                                  |                                                             |     |
| C-x r M-w | copy-rectangle-as-kill     | copie le rectangle et le sauve dans le kill-ring    |                                                             |     |

* Registres
Demande un registre : un caractère
|             |                                  |                                                                                          | M-4                                                 | C-u                                                        |
|-------------+----------------------------------+------------------------------------------------------------------------------------------+-----------------------------------------------------+------------------------------------------------------------|
| C-x r SPC   | point-to-register                | stocke l’emplacement du point dans le registre                                           | enregistre la configuration de la frame             |                                                            |
| C-x r C-@   | point-to-register                |                                                                                          |                                                     |                                                            |
| C-x r C-SPC | point-to-register                |                                                                                          |                                                     |                                                            |
| C-x r +     | increment-register               | incrémente le registre si c’est un nombre                                                | ajoute 4 au registre                                |                                                            |
|             |                                  | ajoute la région entre point et marque si c’est du texte                                 | et supprime la région                               |                                                            |
| C-x r f     | frameset-to-register             | stocke l’ensemble des frames dans le registre                                            |                                                     |                                                            |
| C-x r i     | insert-register                  | insère le contenu du registre, le point avant et la marque après le texte inséré         | inverse le point et la marque                       |                                                            |
| C-x r j     | jump-to-register                 | déplace le point vers l’emplacement stocké dans le registre                              |                                                     |                                                            |
|             |                                  | si c’est un fichier, va au fichier                                                       |                                                     |                                                            |
|             |                                  | si c’est une configuration de windows, rétablit la frame                                 |                                                     |                                                            |
|             |                                  | si c’est une configuration de frames, rétablit les frames                                | supprime les frames en plus                         |                                                            |
| C-x r n     | number-to-register               | stocke à partir du point jusqu’à la fin le chiffre dans le registre, 0 si pas de chiffre | stocke 4 dans le registre                           |                                                            |
| C-x r r     | copy-rectangle-to-register       | stocke le rectangle dans le registre                                                     | le supprime                                         |                                                            |
| C-x r s     | copy-to-register                 | stocke la région dans le registre                                                        | la supprime                                         |                                                            |
| C-x r x     | copy-to-register                 |                                                                                          |                                                     |                                                            |
| C-x r w     | window-configuration-to-register | stocke la configuration des windows de la frame actuelle                                 |                                                     |                                                            |
| C-x r m     | bookmark-set                     | ajoute un bookmark à l’emplacement courant                                               | n’écrase pas si un bookmark de même nom existe déjà | insère le nom du dernier bookmark utilisé dans le document |
| C-x r b     | bookmark-jump                    | va au bookmark                                                                           |                                                     |                                                            |
| C-x r l     | bookmark-bmenu-list              | affiche la liste des bookmarks                                                           |                                                     |                                                            |

* Divers
|         |                            |                                                            | M-4                               | C-u |
|---------+----------------------------+------------------------------------------------------------+-----------------------------------+-----|
| C-x C-c | save-buffers-kill-terminal | demande s’il faut sauver chaque buffer, ferme la connexion | sauve sans demander puis ferme    |     |
| C-z     | suspend-frame              | suspend la frame courante                                  |                                   |     |
| C-g     | keyboard-quit              | quitte la commande en cours                                |                                   |     |
| C-x u   | undo                       | annule les précédents changements                          | annule les 4 derniers changements |     |
| C-_     | undo                       | (si en mode transient mark,                                | (si pas en mode transient mark,   |     |
| C-/     | undo                       | avec la marque active uniquement dans la région)           | limite à la région)               |     |


| M-/     | dabbrev-expand          | complétion dynamique : les précédents mots du buffer   | prend la 4ème possibilité           |   |
|         |                         | les suivants, les autres buffers                       |                                     |   |
| M-$     | ispell-word             | ispell sur le mot                                      | retourne à la vérification          |   |
| M-!     | shell-command           | exécuter une commande shell                            | insère le résultat de la commande   |   |
| M-&     | async-shell-command     | comme shell-command mais ajoute un &                   |                                     |   |
| M-\vert | shell-command-on-region | exécuter une commande shell avec la région comme input | remplace la région avec le résultat |   |
| M-.     | find-tag                | trouve le tag dans la table des tags courante          | trouve le prochain                  |   |

| C-x C-e     | eval-last-sexp  | évalue la sexp avant le point | insère le résultat dans le buffer |   |
| M-0 C-x C-e |                 |                               | insère le résultat non tronqué    |   |
| M-: EXP     | eval-expression | évalue la sexp EXP            | insère le résultat dans le buffer |   |
| M-0 M-:     |                 |                               | insère le résultat non tronqué    |   |