Memento pour GNU Emacs
(version 20)
Démarrage d'Emacs
Pour appeler Emacs, taper simplement son nom (suivi de & sous X) :
emacs
Pour lire un fichier à traiter, voir Fichiers ci-dessous.
Quitter Emacs
| suspendre Emacs (ou l'icônifier sous X) |
C-z |
| sortir définitivement d'Emacs (en fin de session) |
C-x C-c |
Notations
appui simultané sur les touches ctrl et
t |
C-t |
appui simultané sur les touches Meta
et t, ou appuis successifs sur les touches ESC et t |
M-t |
appui simultané sur les touches Ctrl,
Meta et t, ou appuis successifs de ESC et
C-t |
C-M-t |
| barre d'espacement |
SPC |
touche Return |
RET |
| fournir l'argument arg à une commande |
M-arg |
| argument universel (multiplicateur par 4) |
C-u |
| bouton de gauche de la souris |
mouse-1 |
| bouton du milieu |
mouse-2 |
| bouton de droite |
mouse-3 |
appui simultané sur la touche Shift et
un bouton n |
S-mouse-n |
Utilisation de la souris
| mettre le point (extrémité de
région) |
mouse-1 |
| mettre la marque (autre
extrémité) et copier dans le presse-papier |
mouse-2 |
| tuer depuis le point |
mouse-3 mouse-3 |
| récupérer le presse-papier ou le
dernier élément tué et l'insérer |
mouse-2 |
Dans tous les modes d'exploration (courrier, Info, News, W3, calendrier, personnalisation, complétion, grep, messages d'erreur de compilation,
etc.), mouse-2 sélectionne et ouvre le champ
pointé.
| menu des polices |
S-mouse-1 |
| menu des tampons (classés par type) |
C-mouse-1 |
| menu des propriétés du texte |
C-mouse-2 |
| menu propre au mode |
C-mouse-3 |
Insertion
Le mode par défaut d'Emacs est l'insertion. Les caractères
combinés avec C- et M- sont des commandes.
| introduire tel quel le caractère qui suit |
C-q |
| passer en mode remplacement (ou en sortir) |
M-x overwrite-mode |
Rattrapage des Erreurs
| avorter une commande en cours d'appel ou
d'exécution |
C-g |
| récupérer un fichier perdu
après une panne |
M-x recover-file |
| défaire un changement non voulu |
C-x u ou C-_ |
| restaurer le contenu initial d'un tampon |
M-x revert-buffer |
| réafficher l'écran pollué |
C-l |
Appeler à l'Aide (menu Help)
Le système Help est simple (si vous lisez l'anglais !). Tapez
C-h et suivez les instructions. Si vous êtes un
utilisateur novice, tapez C-h t pour suivre un tutoriel.
Ce memento suppose que vous connaissez le tutoriel.
| se débarrasser de la fenêtre Help |
C-x 1 |
| dérouler la fenêtre Help |
C-M-v |
| "à propos" : montrer les commandes
conformes à une chaîne |
C-h a |
| montrer toutes les liaisons de touches du tampon |
C-h b |
| nommer la fonction appelée par une touche |
C-h c |
| décrire le système de codage |
C-h C |
| décrire une fonction donnée par son nom |
C-h f |
| aller dans la page de manuel d'une fonction |
C-h C-f |
| aller à la racine des manuels |
C-h i |
| décrire la méthode d'entrée |
C-h I |
| décrire la fonction appelée par une
touche |
C-h C-k |
| montrer les 100 derniers caractères
tapés |
C-h l |
| décrire l'environement de langage |
C-h L |
| obtenir l'information spécifique du mode |
C-h m |
| voir les dernières nouveautés d'Emacs |
C-h n |
| trouver les paquetages contenant un mot-clef |
C-h p |
| décrire la syntaxe |
C-h s |
| décrire une variable |
C-h v |
| nommer les touches liés à une fonction |
C-h w |
Info
| entrer dans le mode à la racine (menu Info) |
C-h i |
| trouver une fonction ou une variable dans les Infos |
C-h C-i |
Déplacement dans un noeud :
| avancer |
SPC |
| reculer |
DEL |
| début du noeud |
. |
Déplacement entre les noeuds :
| prochain noeud |
n |
| précédent noeud |
p |
| aller vers le haut |
u |
| choisir l'élément de menu par nom |
m |
| choisir le nième élément de
menu (1-5) |
n |
| suivre une référence (retour avec 1) |
f |
| revenir au dernier noeud vu |
l |
| revenir au répertoire |
d |
| aller à un noeud donné par nom |
g |
Divers :
| appeler le tutoriel d'Info |
h |
| lister les commandes d'Info |
? |
| quitter Info |
q |
| rechercher une expression régulière dans
les noeuds |
s |
Fichiers (menu Files)
| amener un fichier dans Emacs |
C-x C-f |
| amener un fichier (lecture seulement) dans
Emacs |
C-x C-r |
| sauvegarder un fichier sur disque |
C-x C-s |
| sauvegarder les fichiers à la demande |
C-x s |
| insérer le contenu d'un autre fichier
dans ce tampon |
C-x i |
| remplacer ce fichier par celui que vous voulez en fait |
C-x C-v |
| écrire le tampon dans un fichier
spécifié |
C-x C-w |
| supprimer l'indicateur de modification |
M-~ |
| entrer dans le mode de contrôle de version (ou
en sortir) |
C-x C-q |
Tampons (menu Buffers)
| choisir un autre tampon |
C-x b |
| lister tous les tampons |
C-x C-b |
| tuer un tampon |
C-x k |
Fenêtres Multiples (menu Files)
Quand il y a deux commandes, la seconde est pour l'autre cadre.
| supprimer toutes les autres fenêtres |
C-x 1 | |
| couper la fenêtre en deux superposées |
C-x 2 | C-x 5 2 |
| supprimer cette fenêtre |
C-x 0 | C-x 5 0 |
| couper la fenêtre en deux latérales |
C-x 3 | |
| faire défiler l'autre fenêtre |
C-M-v | |
| passer à l'autre fenêtre |
C-x o | C-x 5 o |
| amener un tampon dans l'autre fenêtre |
C-x 4 b | C-x 5 b |
| voir un tampon dans l'autre fenêtre |
C-x 4 C-o | C-x 5 C-o |
| lire un fichier dans l'autre fenêtre |
C-x 4 f | C-x 5 f |
| voir un fichier dans l'autre fenêtre |
C-x 4 r | C-x 5 r |
| composer du courrier dans l'autre fenêtre |
C-x 4 m | C-x 5 m |
| appeler Dired dans
l'autre fenêtre |
C-x 4 d | C-x 5 d |
| trouver un index dans l'autre fenêtre |
C-x 4 . | C-x 5 . |
| raccourcir la fenêtre |
M-x shrink-window | |
| allonger la fenêtre |
C-x ^ | |
| rétrécir la fenêtre |
C-x { | |
| élargir la fenêtre |
C-x } | |
Mouvements
Mouvement du curseur :
| composant du mouvement |
en arrière | en avant |
| caractère |
C-b | C-f |
| mot |
M-b | M-f |
| ligne |
C-p | C-n |
| début (ou fin) de ligne |
C-a | C-e |
| phrase |
M-a | M-e |
| paragraphe |
M-{ | M-} |
| page |
C-x [ | C-x ] |
| sexp |
C-M-b | C-M-f |
| fonction |
C-M-a | C-m-e |
| début (ou fin) de tampon |
M-< | M-> |
Mouvement de l'écran :
| passer à l'écran suivant |
C-v | |
| passer à l'écran précédent |
M-v | |
| défiler vers la gauche |
C-x < | |
| défiler vers la droite |
C-x > | |
| centrer la ligne actuelle |
C-u C-l | |
| n'afficher que les lignes décalés de
moins de arg |
arg C-x $ | |
Marquer
| placer la marque |
C-@ ou C-SPC |
| échanger marque et point |
C-x C-x |
| placer la marque arg mots au-delà |
arg M-@ |
| marquer le paragraphe |
M-h |
| marquer la page |
C-x C-p |
| marquer la sexp |
C-M-@ |
| marquer la fonction |
C-M-h |
| marquer tout le tampon |
C-x h |
Tuer et Effacer (menu Edit)
| composant du mouvement |
en arrière | en avant |
| caractère (effacer) |
DEL | C-d |
| mot |
M-DEL | M-d |
| ligne (vers le début ou la fin) |
M-0 C-k | C-k |
| phrase |
C-x DEL | M-k |
| sexp |
M-- C-M-k | C-M-k |
| tuer la région |
C-w | |
| copier la région dans l'anneau d'efacement |
M-w | |
| tuer jusqu'à un caractère |
M-z car | |
| récupérer ce qui a
été tué |
C-y | |
| remplacer la récupération par la précédente |
M-y | |
| effacer tous les blancs, tous sauf un |
M-\, M-SPC | |
Recherche incrémentale (menu Search)
| chercher en avant |
C-s |
| chercher en arrière |
C-r |
| chercher par expression régulière |
C-M-s, C-M-r |
Utilisez RET immédiatement après C-s ou
C-r pour que la recherche soit non incrémentale.
Utilisez C-s ou C-r à nouveau pour
répéter la recherche dans l'une ou l'autre direction.
| terminer la recherche incrémentale |
RET |
| défaire l'effet du dernier caractère |
DEL |
| avorter la recherche en cours |
C-g |
Si Emacs est en train de chercher, C-g annule la partie de la
recherche non effectuée, sinon il annule toute la recherche.
Remplacer à la demande (menu Search)
| remplacer à la demande une chaîne |
M-% |
| avec une expression régulière |
M-x query-replace-regexp |
Les réponses possibles dans ce mode sont :
| remplacer celui-ci, passer au suivant |
SPC |
| remplacer celui-ci sans bouger |
. |
| passer au suivant sans remplacer |
DEL |
| remplacer tous les suivants |
! |
| revenir au précédent |
^ |
| quitter le remplacement à la demande |
RET |
commencer un traitement récursif
(C-M-c pour terminer) |
C-r |
Dired, l'éditeur de répertoires
| entrer dans le mode (menus spécialisés) |
C-x d |
| passer au fichier suivant |
n, SPC, C-n |
| passer au fichier précédent |
p, DEL, C-p |
| marquer un fichier |
m |
| marquer ce fichier pour effacement |
d |
| marquer les #fichiers# pour effacement |
# |
| marquer les fichiers~ pour effacement |
~ |
| enlever la marque d'effacement |
u |
| enlever la marque d'effacement et passer au fichier précédent |
DEL |
| effectuer les effacements |
x |
| lire le fichier dans cette fenêtre |
RET, e |
| lire le fichier dans l'autre fenêtre |
o |
| voir le fichier |
v |
| insérer un sous répertoire |
i |
| copier le fichier courant ou les fichiers marqués |
C |
| renommer le fichier courant ou les fichiers marqués |
R |
| trier par date (ou par nom) |
s |
| relire tous les répertoires |
g |
| demander de l'aide |
h |
Typographie
| mot en majuscules |
M-u |
| mot en minuscules |
M-l |
| mot avec capitale initiale |
M-c |
| région en majuscules |
C-x C-u |
| région en minusciles |
C-x C-l |
| région avec capitales initiales |
M-x capitalize-region | |
Présentation
| décaler la ligne (selon le mode) |
TAB |
| décaler la région (selon le mode) |
C-M-\ |
| décaler la sexp (selon le mode) |
C-M-q |
| décaler la région de arg colonnes |
arg C-x TAB |
|
|
| insérer une nouvelle ligne après le point |
C-o |
| descendre le reste de la ligne |
C-M-o |
| effacer les lignes blanches autour du point |
C-x o |
| joindre cette ligne et la précédente |
M-^ |
| effacer les blancs autour du point |
M-\ |
| ne laisser qu'un espace autour du point |
M-SPC |
|
|
| remplir le paragraphe |
M-q |
| remplir la région |
M-g |
| fixer la colonne de remplissage |
C-x f |
| fixer le préfixe de ligne |
C-x . |
Le Mini-Tampon (menu Minibuffer)
Les touches suivantes sont définies dans le mini-tampon :
| compléter autant que possible |
TAB |
| compléter jusqu'au bout du mot |
SPC |
| compléter et exécuter |
RET |
| montrer les complétions possibles |
? |
| amener la commande précédente |
M-p |
| ammener la commande suivante |
M-n |
| chercher en remontant dans l'historique |
M-r |
| chercher en descendant dans l'historique |
M-s |
| avorter la commande |
C-g |
Taper C-x ESC ESC pour modifier et répéter la
dernière commande utilisant le mini-tampon. Taper M-`
pour activer le menu dans le mini-tampon.
Transposition
| transposer des caractères |
C-t |
| transposer des mots |
M-t |
| transposer des lignes |
C-x C-t |
| transposer des sexps |
C-M-t |
Dessins
| entrer dans le sous-mode |
M-x picture-mode | |
| revenir dans le mode normal |
C-c C-c |
| écrire vers la gauche, la droite |
C-c <, C-c > |
| écrire vers le haut, le bas |
C-c ^, C-c . |
| écrire vers le nord-ouest, nord-est |
C-c `, C-c ' |
| écrire vers le sud-ouest, sud-est |
C-c /, C-c \ |
| tuer le rectangle |
C-c C-k |
| copier le rectangle dans le registre et le tuer |
C-c C-w R |
| récupérer le dernier rectangle tué |
C-c C-y |
| récupérer le rectangle depuis le registre |
C-c C-x R |
Vérification Orthographique (menu Edit, sous-menu Spell)
| vérifier l'orthographe du mot courant |
M-$ |
| vérifier l'orthographe de tous les mots d'une région |
M-x ispell-region |
| vérifier l'orthographe du tampon entier |
M-x ispell-buffer |
Jeux de cractères internationaux (menu Mule)
| choisir le langage principal |
M-x set-language-environment |
| montrer toues les méthodes d'entrée |
M-x list-input-methode |
| activer ou désactiver la méthode d'entrée |
C-\ |
| choisir le système de codage pour la commande suivante |
C-x RET c |
| montrer tous les systèmes de codage |
M-x list-coding-system |
| choisir le système de codage préféré |
M-x prefer-coding-system |
Index
| trouver un index |
M-. |
| trouver la prochaine apparition d'un index |
C-u M-. |
| choisir un nouveau fichier d'index |
M-x visit-tags-table |
| recherche par expression régulière sur
tous les fichiers d'une table d'index |
M-x tags-search |
| remplacer à la demande sur tous les fichiers |
M-x tags-query-replace> |
| continuer la dernière recherche ou le dernier remplacement |
M-, |
Shells
| exécuter une commande du shell |
M-! |
| exécuter une commande du shell sur la région |
M-| |
| filtrer la région à travers une commande
du shell |
C-u M-| |
exécuter un shell dans la fenêtre *shell* |
M-x shell |
Les touches suivantes sont définies (menus
spécialisés) :
| envoyer le signal d'achèvement |
C-c C-c |
| envoyer le signal de suspension |
C-c C-z |
| envoyer une fin de fichier |
C-c C-d |
| répéter la dernière commande |
C-c C-y |
| insérer la commande précédente |
M-p |
| insérer la commande suivante |
M-s |
| placer le point au début des derniers résultats |
C-c C-r |
| effacer les derniers ésultats |
C-c C-o |
Rectangles
| copier un rectangle vers un registre |
C-x r r |
| tuer un rectangle |
C-x r k |
| récupérer un rectangle |
C-x r y |
| ouvrir un rectangle en décalant le texte
à droite |
C-x r o |
| blanchir un rectangle |
C-x r c |
| préfixer chaque ligne avec une chaîne |
C-x r t |
Abréviations
| ajouter une abréviation globale |
C-x a g |
| ajouter une abréviation locale |
C-x a l |
| ajouter l'expansion globale de cette abréviation |
C-x a i g |
| ajouter l'expansion locale de cette abréviation |
C-x a i l |
| étendre cette abréviation |
C-x a e |
| étendre dynamiquement le mot précédent |
M-/ |
Expressions Régulières
Ce qui suit a une signification spéciale dans une expression
régulière :
| tout caractère |
. (point) | |
| zéro, une ou plusieurs fois |
* | |
| une ou plusieurs fois |
+ | |
| zé:ro ou une fois |
? | |
| caractère spécial ou sans signification c |
\c | |
| choix ("ou") |
\| | |
| groupement |
\( ... \) | |
| nième groupe |
\n | |
| entité |
début | fin |
| ligne |
^ | $ |
| mot |
\< | \> |
| tampon |
\` | \' |
| classe de caractères |
ceux-là | les autres |
| ensemble explicite |
[ ... ] | [^ ... ] |
| caractère de mot |
\w | \W |
| caractère de syntaxe c |
\sc | \Sc |
| coupure de mot |
\b | \B |
Registres
| copier la région dans le registre |
C-x r s |
| insérer le contenu du resgistre dans le tampon |
C-x r i |
| garder le point dans le registre |
C-x r SPC |
| amener le point à l'emplacement noté |
C-x r j |
Lecture des News
| entrer dans le mode (menus spécilisés) |
M-x gnus |
|
|
| lister tous les groupes |
L |
| lister les groupes suivis et contenant des articles
non lus |
l |
| cesser de suivre un groupe |
u |
| cesser définitivement de suivre un groupe |
C-k |
| sélectionner le groupe ou l'article courant ou
avancer dans l'article |
SPC |
| précédent groupe ou remonter dans
l'article |
DEL |
| prochain groupe ou article |
n |
| précédent groupe ou article |
p |
| marquer le groupe comme entièrement lu |
c |
| quitter la lecture |
q |
Exploration du Web
| entrer dans le mode (menus spécilisés) |
M-x w3 |
|
|
| avancer |
SPC |
| reculer |
DEL |
| début du document |
< |
| fin du document |
> |
| passer au prochain lien HTML |
TAB |
| passer au prochain lien HTML |
S-TAB, M-TAB |
| suivre un lien HTML |
RET, mouse-2 |
| ouvrir un documet URL |
C-o |
| revenir au document précédent |
l |
| recharger le document |
g |
| quitter le mode |
q |
Lecture du Courrier avec Rmail
| entrer dans le mode (menus spécilisés) |
M-x rmail |
|
|
| avancer dans le message |
SPC |
| reculer dans le message |
DEL |
| début du message |
. |
| prochain message non effacé |
n |
| précédent message non
effacé |
p |
| prochain message |
M-n |
| précédent message |
M-p |
| message de numéro donné |
j |
| dernier message |
> |
| premier message |
< |
| effacer le message |
d |
| effacer le message et reculer |
C-d |
| supprimer l'effacement du message |
u |
| effectuer les effacements |
x |
| répondre au message |
r |
| copier le message à quelqu'un d'autre |
f |
| envoyer un message |
m |
| lire le courrier nouvellment arrivé |
g |
| copier le message dans un autre fichier Rmail |
C-o |
| sommaire des en-têtes |
h |
| terminer Rmail |
q |
Lecture du Courrier avec Mh-e
| entrer dans le mode (menu spécialisé) |
M-x mh-rmail |
Les commandes sont similaires à celles de Rmail, sauf ce
qui suit :
| lire le courrier nouvellement arrivé |
i |
| refaire la liste des messages |
M-r |
| déplacer le message dans un autre classeur |
o, ^ |
| dire dans quel classeur le message doit aller |
? |
| changer de classeur |
M-f |
Écriture du Courrier avec Rmail
| composer un message |
C-x m |
| ajouter au champ du sujet |
C-c C-f C-s |
| ajouter au champ des destinataires |
C-c C-f C-t |
| ajouter au champ des destinataires secondaires |
C-c C-f C-c |
| ajouter au champ des destinataires aveugles |
C-c C-f C-b |
| insérer le fichier $HOME/.signature en fin de message |
C-c C-w |
| insérer une copie du message auquel on répond |
C-c C-y |
| insérer une copie de la région du
message auquel on répond |
C-c C-r |
| envoyer le message |
C-c C-s |
| envoyer le message et quitter l'écriture |
C-c C-c |
Écriture du Courrier avec Mh-e
| composer un message |
M-x mh-smail |
Les commandes sont les mêmes que pour Rmail, sauf ce qui
suit :
| vérifier la liste de destinataires |
C-c C-w |
| insérer un message |
C-c C-i |
| insérer le fichier $HOME/.signature en fin de message |
C-c C-s |
Calendrier et Agenda
| entrer dans le mode (menus spécialisés) |
M-x calendar | |
| composant du mouvement |
en arrière | en avant |
| jour |
C-b | C-f |
| semaine |
C-p | C-n |
| mois |
M-{ | M-} |
| décaler d'un mois |
C-x > | C-x < |
| décaler de trois mois |
M-v | C-v |
| année |
C-x [ | C-x ] |
| composant du mouvement |
début | fin |
| semaine |
C-a | C-e |
| mois |
M-a | M-e |
| année |
M-< | M-> |
| aller à une date |
g d | |
| centrer autour d'un mois |
o | |
| aller à la date courante |
. | |
| nombre de jours de la région |
M-= | |
| place du jour dans l'année |
p d | | >
Transfer interrupted!
u jour
h | |
| entrées du jour dans l'agenda |
d | |
| afficher tout l'agenda |
s | |
| marquer les dates avec une entrée dans l'agenda |
m | |
| ajouter une entrée dans l'agenda pour cette date |
i d | |
| ajouter une entrée dans l'agenda pour ce jour
de la semaine |
i w | |
| ajouter une entrée dans l'agenda pour ce jour
du mois |
i m | |
| ajouter une entrée dans l'agenda pour ce jour
de l'année |
i y | |
| ajouter un anniversaire pour cette date |
i a | |
| ajouter une entrée pour un bloc de dates |
i b | |
| ajouter une entrée périodique |
i c | |
| heures de lever et de coucher du soleil |
S | |
| phases de la lune pour les trois mois en cours |
M | |
| faire défiler l'autre fenêtre |
SPC | |
| quitter le calendrier |
q | |
Compilation et déboguage (menu Tools)
| lancer une compilation asynchrone |
M-x compile |
| lancer un grep asynchrone |
M-x grep |
| lancer un grep récursif asynchrone |
M-x grep-find |
| visiter le lieu du prochain message |
C-x ` |
| visiter le lieu de ce message |
RET, mouse-2 |
|
|
| commencer le déboguage d'un programme |
M-x gdb |
| placer un point d'arrêt |
C-x SPC |
| enlever un point d'arrêt |
C-c C-d |
| exéter une ligne de code |
C-c C-s |
| reprendre l'exécution |
C-c C-r |
Divers (menu Tools)
| imprimer le tampon |
M-x print-buffer |
| imprimer la région |
M-x print-region |
| imprimer le tampon en Postscript |
M-x ps-print-buffer |
| imprimer la région en Postscript |
M-x ps-print-region |
| trier les lignes de la région |
M-x sort-lines |
| trier les lignes de la région par champs |
M-x sort-fields |
| trier les lignes de la région par colonnes |
M-x sort-columns |
| rétrécir le tampon à la région |
C-x n n |
| rétrécir le tampon à la defun |
C-x n d |
| rétrécir le tampon à la page |
C-x n p |
| ramener au tampon entier |
C-x n w |
| calculateur algébrique |
M-# |
Macros
| début de la définition d'une macro |
C-x ( |
| fin de définition d'une macro |
C-x ) |
| exécuter la dernière macro définie |
C-x e |
| ajouter à la fin de la dernière macro |
C-u C-x ( |
| nommer la dernière macro |
M-x name-last-kbd-macro |
| insérer une définition dans le tampon |
M-x insert-kbd-macro |
Commandes concernant Emacs Lisp
| évaluer la sexp avant le point |
C-x C-e |
| évaluer la defun courante |
C-M-x |
| évaluer la région |
M-x eval-region |
| évaluer le tampon entier |
M-x eval-current-buffer |
| lire et évaluer le mini-tampon |
M-: |
| ré-exécuter la dernière commande
de mini-tampon |
C-x ESC ESC |
| lire et évaluer un fichier Emacs Lisp |
M-x load-file |
| charger depuis le répertoire standard |
M-x load-library |
Personnalisation Simple
| personnalisation des variables et des faces |
M-x customize |
Personnalisation manuelle : voici quelques exemples de liaisons globales
de touches en Emacs Lisp.
Notez que vous ne pouvez pas écrire
"M-#" ; vous devez écrire
"\e#".
(global-set-key "\C-cg" 'goto-line)
(global-set-key "\e\C-r" 'isearch-backward-regexp)
(global-set-key "\e#" 'query-replace-regexp)
Exemple d'affectation de variable :
(set backup-by-copying-when-linked t)
Écriture de Commandes
(defun <nom-de-commande> (<arguments>)
"<documentation>"
(interactive "<modèle>")
<corps>)
Exemple :
(defun cette-ligne-en-haut-d-ecran (line)
"Déplace la ligne sur laquelle est le point en haut d'écran.
Avec ARG, place le point sur la ligne ARG.
Les comptes négatifs partent du bas."
(interactive "P")
(recenter (if (null line)
0
(prefix-numeric-value line))))
L'argument de interactive est une chaîne qui
spécifie comment obtenir les arguments de la fonction si elle est
appelée interactivement. Tapez C-h f interactive pour
plus d'information.