1Didacticiel d'Emacs. Voir la fin de ce document pour les conditions. 2 3Les commandes Emacs utilisent généralement la touche CONTROLE (souvent 4désignée par CTRL) ou la touche META (plus souvent désignée par ALT). 5Pour ces touches, nous utiliserons les abréviations suivantes : 6 7 C-<car> signifie qu'il faut maintenir la touche CONTROLE appuyée tout 8 en tapant le caractère <car>. Ainsi, C-f signifie : presser 9 sur la touche CONTROLE tout en pressant la touche f. 10 M-<car> signifie qu'il faut maintenir la touche META ou ALT 11 appuyée tout en tapant le caractère <car>. Si aucune de ces 12 touches n'existe, pressez puis relâchez la touche ESC et 13 tapez <car>. Nous écrirons <ESC> pour désigner la touche ESC. 14 15Note importante : tapez C-x C-c (deux caractères) pour terminer une 16session Emacs. Pour interrompre une commande partiellement entrée, 17tapez C-g. Dans ce didacticiel, les caractères ">>" en marge gauche 18indiquent les directions à suivre pour essayer une commande. Ainsi : 19<<Lignes blanches insérées après cette ligne par help-with-tutorial>> 20[Centre de page delibérément vide. Le texte continue ci-dessous.] 21>> Tapez C-v (Voir l'écran suivant) pour passer à l'écran suivant 22 (faites-le, pressez la touche CTRL tout en pressant la touche v). 23 À partir de maintenant, vous devrez le faire à chaque fois que 24 vous avez fini de lire l'écran. 25 26Vous remarquerez qu'il y a un recouvrement de deux lignes lorsque l'on 27passe d'un écran à un autre : cela permet une certaine continuité dans 28la lecture du texte. 29 30La première chose que vous devez savoir est comment vous déplacer à 31travers le texte. Vous savez déjà comment avancer d'un écran avec 32C-v. Pour revenir un écran en arrière, tapez M-v (pressez la touche 33META tout en appuyant sur v ou faites <ESC>v si vous n'avez pas de 34touche META ou ALT). 35 36>> Faites M-v, puis C-v plusieurs fois. 37 38 39* RÉSUMÉ 40-------- 41 42Les commandes suivantes servent à manipuler des écrans : 43 44 C-v Avance d'un écran 45 M-v Recule d'un écran 46 C-l Efface l'écran et réaffiche tout le texte autour du 47 curseur, qui est placé au milieu de l'écran 48 (il s'agit de CTRL-L, pas de CTRL-1). 49 50 51>> Notez le texte situé à côté du curseur, puis faites C-l. 52 Recherchez l'emplacement du curseur et vous remarquerez que 53 c'est le même texte qui est à côté de lui, mais il est désormais 54 au centre de l'écran. 55 Si vous appuyez de nouveau sur C-l, ce bout de texte se déplacera 56 en haut de l'écran. Faite encore C-l, et il se déplace en bas. 57 58Si votre terminal en dispose, vous pouvez également utiliser les 59touches PgUp et PgDn pour monter ou descendre d'un écran, bien que les 60combinaisons C-v et M-v soient plus efficaces. 61 62 63* GESTION DU CURSEUR 64-------------------- 65 66Passer d'un écran à l'autre est pratique, mais comment se déplacer à 67un endroit précis du texte dans un écran ? 68 69Il existe plusieurs façons de faire. Vous pouvez utiliser les touches 70du curseur, mais il est plus efficace de garder vos mains dans la même 71position et d'utiliser les commandes C-p, C-b, C-f, et C-n. Ces 72combinaisons sont équivalentes aux quatre touches du curseur : 73 74 Ligne précédente, C-p 75 : 76 : 77 En arrière, C-b .... Position courante .... Vers l'avant, C-f 78 : 79 : 80 Ligne suivante, C-n 81 82>> Déplacez le curseur sur la ligne située au milieu de ce schéma en 83 utilisant C-n ou C-p. Puis, faites C-l pour placer le schéma au 84 centre de l'écran. 85 86Si vous connaissez un peu l'anglais, vous aurez sûrement constaté 87qu'il était facile de se rappeler que P signifiait Previous 88(précédent), N Next (suivant), B Backward (en arrière) et F Forward 89(vers l'avant). 90 91>> Faites quelques C-n pour amener le curseur sur cette ligne. 92 93>> Déplacez-vous le long de la ligne avec des C-f, puis au-dessus avec 94 des C-p. Notez ce que fait C-p lorsque le curseur est au milieu de 95 la ligne. 96 97Chaque ligne de texte se termine par un caractère Newline, qui sert à 98la séparer de la ligne suivante. La dernière ligne de votre fichier 99devrait se terminer par un Newline (mais Emacs n'exige pas qu'il y en 100ait un). 101 102>> Essayez de faire C-b au début d'une ligne. Cela devrait déplacer le 103 curseur à la fin de la ligne précédente car il passe au-dessus du 104 caractère Newline. 105 106C-f peut passer au-dessus d'un Newline, tout comme C-b. 107 108>> Faites encore quelques C-b afin de bien sentir où est le curseur. 109 Puis, faites des C-f pour revenir à la fin de la ligne. 110 Enfin, faites quelques C-f supplémentaires pour passer à la ligne 111 suivante. 112 113Lorsque vous dépassez le haut ou le bas de l'écran, le texte au-delà 114de ces limites est décalé pour passer dans l'écran : c'est ce qu'on 115appelle le « scrolling ». Cela permet à Emacs de placer le curseur à 116l'emplacement spécifié dans le texte sans devoir le placer en dehors 117de l'écran. 118 119>> Essayez de placer le curseur au-delà du bas de l'écran avec C-n et 120 constatez ce qui se passe. 121 122Si le déplacement caractère par caractère est trop lent, vous pouvez 123vous déplacer mot par mot. M-f (Meta-f) avance d'un mot et M-b recule 124d'un mot. 125 126>> Faites quelques M-f et M-b. 127 128Lorsque vous êtes au milieu d'un mot, M-f place le curseur à la fin du 129mot. Lorsque vous êtes entre deux mots, M-f place le curseur à la fin 130du mot suivant. M-b fonctionne de la même façon dans la direction 131opposée. 132 133>> Faites plusieurs fois M-f et M-b, espacés de C-f et C-b afin 134 d'observer l'action de M-f et M-b aux différents emplacements à 135 l'intérieur et à l'extérieur des mots. 136 137Notez le parallèle entre C-f et C-b d'un côté et M-f et M-b de 138l'autre. Très souvent, les caractères Meta servent à des opérations 139sur des unités définies par le langage (mots, phrases, paragraphe) 140alors que les caractères de contrôle opèrent sur les unités de base 141indépendantes de ce que l'on édite (caractères, lignes, etc.). 142 143Ce parallèle s'applique entre les lignes et les phrases : C-a et C-e 144déplacent le curseur au début ou à la fin d'une ligne, tandis que M-a 145et M-e le placent au début ou à la fin d'une phrase. 146 147>> Faites quelques C-a, puis quelques C-e. 148 Faites quelques M-a, puis quelques M-e. 149 150Vous constaterez que la répétition d'un C-a ne fait rien, mais que 151celle d'un M-a vous déplace d'une phrase de plus. Bien que ces deux 152commandes ne soient pas tout à fait analogues, chacune d'elle semble 153naturelle. 154 155L'emplacement du curseur dans le texte est également appelé « point ». 156Pour paraphraser, le curseur apparaît à l'écran à l'endroit où le 157point est situé dans le texte. 158 159Voici un résumé des opérations de déplacements simples du curseur, 160ainsi que les commandes de déplacement par mots et par phrases. 161 162 C-f Avance d'un caractère 163 C-b Recule d'un caractère 164 165 M-f Avance d'un mot 166 M-b Recule d'un mot 167 168 C-n Avance d'une ligne 169 C-p Recule d'une ligne 170 171 C-a Va au début de la ligne 172 C-e Va à la fin de la ligne 173 174 M-a Va au début de la phrase 175 M-e Va à la fin de la phrase 176 177>> Essayez toutes ces commandes plusieurs fois afin de vous entraîner. 178 Ce sont celles qui sont utilisées le plus souvent. 179 180M-< (Meta inférieur à) et M-> (Meta supérieur à) sont deux autres 181commandes importantes de déplacement du curseur. La première renvoie 182au tout début du texte, la seconde à la toute fin de celui-ci. 183 184Sur certains claviers, le "<" se trouve sous la virgule, vous devez 185donc utiliser la touche <Maj> pour y avoir accès. Sur ces terminaux, 186vous devez utiliser également la touche <Maj> pour faire M-<, sinon 187vous taperiez M-virgule. 188 189>> Faites M-< afin de vous déplacer au début du didacticiel. 190 Puis, faites plusieurs fois C-v pour revenir ici. 191 192>> Faites M-> afin de vous déplacer à la fin du didacticiel. 193 Puis, faites plusieurs fois M-v pour revenir ici. 194 195Vous pouvez également déplacer le curseur à l'aide des touches de 196curseur, si votre terminal en dispose. Nous vous conseillons 197d'apprendre à utiliser C-b, C-f, C-n et C-p pour trois raisons. Tout 198d'abord, ces commandes fonctionnent sur tous les types de 199terminaux. Ensuite, lorsque vous aurez un peu pratiqué Emacs, vous 200vous rendrez compte qu'il est plus rapide de taper ces caractères de 201contrôle que d'utiliser les touches de curseur (car vous n'avez pas 202besoin de déplacer vos mains pour atteindre ces touches). Enfin, 203lorsque vous aurez l'habitude d'utiliser ces commandes, vous 204apprendrez plus facilement les autres commandes de déplacement plus 205puissantes. 206 207La plupart des commandes Emacs acceptent un paramètre numérique qui, 208la plupart du temps, indique un nombre de répétitions. Pour indiquer à 209une commande le nombre de fois que l'on souhaite la répéter, on 210utilise C-u suivi du nombre avant de taper la commande. Si vous avez 211une touche META (ou ALT), il existe une autre façon d'entrer 212un paramètre numérique : tapez le nombre tout en pressant la touche 213META. Nous vous conseillons d'apprendre à utiliser la méthode C-u car 214elle fonctionne sur tous les types de terminaux. Le paramètre 215numérique est également appelé « paramètre préfixe » car on le précise 216avant la commande sur laquelle il s'applique. 217 218C-u 8 C-f, par exemple, avance le curseur de huit caractères. 219 220>> Utilisez C-n ou C-p avec un paramètre numérique afin de déplacer, 221 en une seule commande, le curseur sur une ligne proche de celle-ci. 222 223La plupart des commandes utilisent le paramètre numérique pour 224indiquer un nombre de répétitions, mais d'autres s'en servent 225autrement. Plusieurs commandes (mais aucune de celles que nous avons 226vues jusqu'à maintenant) l'utilisent comme indicateur -- la présence 227d'un paramètre préfixe, quelle que soit sa valeur, force la commande à 228agir différemment. 229 230C-v et M-v constituent un autre type d'exception. Lorsqu'on leur donne 231un paramètre, elles font défiler le texte vers le haut ou vers le bas 232du nombre de lignes indiqué au lieu de passer d'un écran complet à 233l'autre. C-u 8 C-v, par exemple, fait défiler le texte de 8 lignes. 234 235>> Faites C-u 8 C-v. 236 237Cela a dû déplacer le texte de 8 lignes vers le haut. Si vous voulez 238redescendre de 8 lignes, il suffit de passer ce nombre comme paramètre 239de M-v. 240 241Si vous utilisez un environnement graphique, comme X11 ou MS-Windows, 242il devrait y avoir une zone rectangulaire appelée barre de défilement, 243ou « scrollbar » sur le bord gauche de la fenêtre d'Emacs. Vous pouvez 244faire défiler le texte en cliquant avec la souris dans cette barre de 245défilement. 246 247Si votre souris a une molette, vous pouvez aussi l'utiliser pour faire 248défiler le texte. 249 250 251* QUAND EMACS NE RÉPOND PLUS 252---------------------------- 253 254Si Emacs cesse de répondre à vos commandes, vous pouvez le débloquer 255en toute sécurité avec C-g. Cette commande fait stopper une commande 256qui met trop de temps à s'exécuter. 257 258C-g peut également servir à annuler un paramètre numérique, ou le 259début d'une commande que vous ne souhaitez pas terminer. 260 261>> Faites C-u 100 pour former un paramètre numérique de 100, puis 262 tapez C-g. 263 Faites maintenant C-f. Le déplacement ne sera que d'un caractère 264 car vous avez annulé le paramètre avec C-g. 265 266Si vous avez tapé <ESC> par erreur, vous pouvez vous en débarrasser 267avec un C-g. 268 269 270* COMMANDES DÉSACTIVÉES 271----------------------- 272 273Certaines commandes d'Emacs sont « désactivées » afin que les 274utilisateurs débutants ne puissent les utiliser par accident. 275 276Si vous tapez l'une de ces commandes, Emacs affiche un message 277indiquant quelle était la commande et vous demande si vous souhaitez 278continuer et l'exécuter. 279 280Si vous souhaitez vraiment essayer la commande, tapez <Espace> en 281réponse à la question. Si vous ne voulez pas exécuter la commande 282désactivée, il suffit normalement de répondre « n ». 283 284>> Faites C-x C-l (qui est une commande désactivée), 285 puis répondez « n » à la question. 286 287 288* FENÊTRES 289---------- 290 291Emacs peut avoir plusieurs fenêtres, chacune affichant son propre 292texte. Nous expliquerons plus tard comment utiliser plusieurs fenêtres ; 293pour l'instant, nous expliquerons comment se débarrasser des 294fenêtres supplémentaires pour revenir à une édition mono-fenêtre. 295C'est très simple : 296 297 C-x 1 Une seule fenêtre (i.e., supprime toutes les autres) 298 299Il s'agit de CTRL-x suivi du chiffre 1. C-x 1 étend la fenêtre 300contenant le curseur pour qu'elle occupe tout l'écran. Cette commande 301supprime toutes les autres fenêtres. 302 303>> Déplacez le curseur sur cette ligne et faites C-u 0 C-l. 304>> Faites C-h k C-f. 305 Vous constatez que cette fenêtre est réduite alors qu'une nouvelle 306 apparaît pour afficher la documentation sur la commande C-f. 307 308>> Faites C-x 1 et la fenêtre de documentation disparaît. 309 310Il y a toute une série de commandes qui commencent par CONTROL-x; 311nombre d'entre elles ont à voir avec la manipulation de fenêtres, 312fichiers, tampons et autres entités associées. Ces commandes font 313deux, trois ou quatre caractères de long. 314 315 316* INSERTION ET SUPPRESSION 317-------------------------- 318 319Si vous voulez insérer du texte, il vous suffit de le taper. Les 320caractères que vous pouvez lire, comme A, 7, *, etc. sont considérés 321comme du texte par Emacs et insérés immédiatement. Tapez <Entrée> (la 322touche de retour chariot) pour insérer un caractère Newline. 323 324Vous pouvez effacer le dernier caractère que vous avez tapé en faisant 325<DEL>. <DEL> est une touche du clavier -- la même que vous utilisez 326habituellement en dehors d'Emacs, pour supprimer le dernier caractère 327saisi. Il s'agit généralement de la grande touche située quelques 328lignes au-dessus de la touche « Entrée ». Elle est habituellement 329nommée « Delete », « Del », « Suppr » ou « Backspace ». 330 331Si cette grande touche s'appelle « Backspace », c'est celle-là qui 332représente <DEL>. Votre clavier peut également comporter une autre 333touche, nommée « Delete », « Del » ou « Suppr », mais ce n'est pas 334<DEL>. 335 336Plus généralement, <DEL> efface le caractère situé immédiatement avant 337la position courante du curseur. 338 339>> Tapez quelques caractères puis effacez-les en faisant plusieurs 340 fois <DEL>. Ne vous inquiétez pas de modifier ce fichier ; vous ne 341 modifierez pas le didacticiel principal mais uniquement votre copie 342 personnelle de celui-ci. 343 344Lorsqu'une ligne de texte devient trop longue pour tenir sur une seule 345ligne de l'écran, elle se « continue » sur une deuxième ligne 346d'écran. Une barre de fraction inverse (« \ ») ou, si vous utilisez un 347environnement graphique, une petite flèche recourbée, sur la marge 348droite indique une ligne qui se poursuit sur la ligne suivante. 349 350>> Insérez du texte jusqu'à atteindre la marge droite et continuez 351 d'en insérer. Vous verrez apparaître une ligne de continuation. 352 353>> Faites des <DEL> pour effacer le texte jusqu'à ce que la ligne 354 tienne à nouveau sur une seule ligne d'écran. La ligne de 355 continuation disparaît. 356 357Vous pouvez effacer un caractère Newline comme n'importe quel autre 358caractère. La suppression d'un Newline entre deux lignes les fusionne 359en une seule ligne. Si la ligne résultante est trop longue pour tenir 360dans la largeur de l'écran, elle s'affichera avec une ligne de 361continuation. 362 363>> Placez le curseur au début d'une ligne et faites <DEL>. Cela 364 fusionne cette ligne avec la ligne précédente. 365 366>> Faites <Entrée> pour remettre le Newline que vous avez supprimé. 367 368La touche <Entrée> est particulière : l'appuyer peut faire plus que 369simplement insérer le caractère Newline. En fonction du texte autour, 370des espaces pourront être insérées après le caractère Newline, de 371façon à ce qu'en commençant à taper dans la ligne nouvelle créée, le 372texte s'aligne avec celui de la ligne précédente. Nous appelons ce 373comportement (où le fait d'appuyer sur une touche fait plus que de 374simplement insérer le caractère correspondant) « électrique ». 375 376>> Voici un exemple de touche <Entrée> « électrique ». 377 Tapez <Entrée> à la fin de cette ligne. 378 379Vous devriez voir qu'après l'insertion du Newline, Emacs insère des espaces de façon à ce que le curseur se déplace sous le « T » de « Tapez ». 380 381Rappelez-vous que la plupart des commandes Emacs peuvent utiliser un 382nombre de répétitions ; les caractères de texte font de même. La 383répétition d'un caractère de texte l'insère plusieurs fois. 384 385>> Essayez ça tout de suite -- tapez C-u 8 * pour insérer ********. 386 387Vous connaissez maintenant la méthode la plus simple pour taper du 388texte dans Emacs et pour corriger les erreurs. Vous pouvez également 389effacer des mots ou des lignes entières. Voici un résumé des 390opérations de suppression : 391 392 <DEL> Efface le caractère situé avant le curseur 393 C-d Efface le caractère situé après le curseur 394 395 M-<DEL> Supprime le mot situé avant le curseur 396 M-d Supprime le mot situé après le curseur 397 398 C-k Supprime du curseur à la fin de la ligne 399 M-k Supprime jusqu'à la fin de la phrase courante 400 401Vous noterez que <DEL> et C-d, par rapport à M-<DEL> et M-d, ont la 402même relation que C-f et M-f (en fait, <DEL> n'est pas vraiment un 403caractère de contrôle, mais ne nous soucions pas de cela) C-k et M-k 404sont un peu comme C-e et M-e. 405 406Vous pouvez aussi supprimer n'importe quelle zone du tampon en 407utilisant une méthode unique et générale. Placez-vous à une extrémité 408de cette zone et tapez C-SPC (SPC désigne la barre espace). Puis, 409allez à l'autre extrémité du texte que vous voulez supprimer. En 410faisant cela, Emacs surligne le texte entre le curseur et la position 411d'où vous avez tapé C-SPC. Enfin, faites C-w. Cela supprime tout le 412texte compris entre ces deux positions. 413 414>> Placez le curseur sur le V au début du paragraphe précédent. 415>> Faites C-SPC. Emacs devrait afficher un message "Mark set" 416 en bas de l'écran. 417>> Déplacez le curseur sur le x d'« extrémité », sur la seconde 418 ligne du paragraphe. 419>> Faites C-w. Cela supprimera le texte allant du V jusqu'au 420 caractère situé juste avant le x. 421 422La différence entre « effacer » et « supprimer » est que vous pouvez 423réinsérer le texte « supprimé », alors que c'est impossible avec ce 424qui a été « effacé » (Vous pouvez cependant « annuler » un effacement 425- voir plus bas.) La réinsertion d'un texte supprimé s'appelle le 426« yanking ». Généralement, les commandes qui ôtent beaucoup de texte 427le suppriment (afin que vous puissiez le récupérer), tandis que celles 428qui ne font qu'ôter un seul caractère, des lignes blanches ou des 429espaces, les effacent (vous ne pouvez donc pas récupérer ce texte). 430Dans le cas le plus simple et sans paramètre, <DEL> et C-d effacent. 431Avec un paramètre, ces commandes suppriment. 432 433>> Placez le curseur au début d'une ligne non vide puis faites 434 C-k pour supprimer le texte de celle-ci. 435>> Refaites C-k : vous verrez que cela supprime le Newline qui suit 436 cette ligne. 437 438Notez qu'un simple C-k supprime le contenu de la ligne et qu'un second 439détruit la ligne elle-même, ce qui fait remonter toutes les lignes 440suivantes. C-k traite son paramètre numérique d'une façon spéciale : 441il détruit ce nombre de lignes ET leur contenu. Ce n'est pas une 442simple répétition : C-u 2 C-k détruit deux lignes et leurs Newlines 443alors que taper deux fois C-k n'aurait pas le même effet. 444 445Réinsérer du texte supprimé est appelé « yanking » (« récupérer »). 446(Pensez au geste de tirer vers soi du texte qui a été jeté.) Vous 447pouvez récupérer le texte supprimé à la place qu'il occupait, à 448n'importe quel autre emplacement du texte, ou même dans un autre 449fichier. Vous pouvez récupérer plusieurs fois ce texte afin d'en 450créer plusieurs copies. Certains éditeurs de texte appellent 451« couper » et « coller » les opérations de « supprimer » et de 452« récupérer » (voir le Glossaire dans le manuel d'Emacs.) 453 454La commande de récupération est C-y. Elle réinsère le dernier texte 455supprimé à la position courante du curseur. 456 457>> Essayez : faites C-y pour récupérer le texte. 458 459Si vous faites plusieurs C-k à la suite, tout le texte supprimé est 460sauvegardé en même temps, de sorte qu'un seul C-y ramènera toutes les 461lignes d'un seul coup. 462 463>> Faites plusieurs fois C-k. 464 465Maintenant, pour récupérer le texte détruit : 466 467>> Faites C-y, puis descendez le curseur de quelques lignes et refaites 468 C-y. Vous savez maintenant comment copier du texte. 469 470Que faire si vous avez du texte que vous voulez récupérer et, 471qu'ensuite, vous supprimez autre chose ? C-y récupérerait la 472suppression la plus récente mais le texte précédent n'est pas pour 473autant perdu : vous pouvez le rappeler en utilisant la commande 474M-y. Après avoir fait C-y pour récupérer la suppression la plus 475récente, M-y remplacera ce texte récupéré par le texte supprimé 476précédemment. En répétant les M-y, vous ramenez les suppressions de 477plus en plus anciennes. Lorsque vous avez atteint le texte que vous 478recherchez, vous n'avez rien besoin de faire pour le conserver. 479Continuez simplement à éditer votre texte et laissez le texte 480récupéré où il est. 481 482Si vous faites M-y un nombre suffisant de fois, vous reviendrez 483à votre point de départ (la suppression la plus récente). 484 485>> Supprimez une ligne, déplacez vous et supprimez une autre ligne. 486 Puis, faites C-y pour récupérer cette dernière. 487 Faites alors M-y et elle sera remplacée par la première ligne détruite. 488 Faites d'autres M-y et notez ce que vous obtenez, continuez jusqu'à 489 ce que la seconde ligne supprimée réapparaisse, et faites-en encore 490 quelques-uns de plus. 491 Si vous le souhaitez, vous pouvez essayer de passer des paramètres 492 positifs et négatifs à M-y. 493 494 495* ANNULATION 496------------ 497 498Si vous modifiez le texte, puis décidez que c'était une erreur, 499vous pouvez annuler cette modification avec la commande C-/. 500 501Normalement C-/ annule les modifications d'une seule commande ; si 502vous répétez plusieurs fois C-/ dans une ligne, chaque répétition 503annulera une commande supplémentaire. 504 505Il y a quand même deux exceptions : les commandes qui ne modifient pas 506le texte ne comptent pas (cela inclut les commandes de déplacement du 507curseur et les commandes de défilement du texte) et les caractères 508auto-insérés sont habituellement gérés par groupes allant jusqu'à 20 509(ceci afin de réduire le nombre de C-/ que vous devriez taper pour 510annuler l'insertion de texte). 511 512>> Supprimez cette ligne avec C-k, puis faites C-/ pour la voir 513 réapparaître. 514 515C-_ est une autre commande d'annulation ; elle fonctionne exactement 516comme C-/. Sur certains terminaux, taper C-/ envoie en fait C-_ à Emacs. 517Autrement, C-x u marche aussi exactement comme C-/, mais est un peu 518moins pratique à taper. 519 520Un paramètre numérique passé à C-_ ou C-/ agit comme un nombre de 521répétitions. 522 523Vous pouvez annuler la suppression de texte de la même manière que 524vous pouvez annuler son effacement. La distinction entre supprimer 525et effacer quelque chose n'intervient que pour la récupération avec 526C-y; elle ne fait aucune différence pour l'annulation. 527 528 529* FICHIERS 530---------- 531 532Afin de rendre permanent le texte que vous éditez, vous devez le 533placer dans un fichier. Sinon, il disparaîtra en même temps que votre 534session Emacs. Pour placer un texte dans un fichier, vous devez 535« trouver » le fichier avant d'entrer le texte (c'est ce que l'on 536désigne également par « visiter » le fichier). 537 538Trouver un fichier signifie que vous voyez le contenu de ce fichier 539dans Emacs. Par de nombreux aspects, c'est comme si vous éditiez le 540fichier lui-même. Cependant, les modifications que vous faites avec 541Emacs ne deviendront permanentes qu'après avoir « sauvegardé » le 542fichier : cela évite d'avoir un fichier à moitié modifié sur le 543système alors que vous ne le vouliez pas. Même lorsque vous 544sauvegardez, Emacs garde le fichier original sous un nom modifié au 545cas où vous décideriez ensuite d'annuler vos modifications. 546 547Si vous examinez le bas de l'écran, vous verrez une ligne qui commence 548et finit par des tirets et débute par « -:--- TUTORIAL.fr » ou quelque 549chose comme ça. Cette partie de l'écran montre normalement le nom du 550fichier que vous êtes en train de visiter. Pour l'instant, vous 551visitez un fichier appelé « TUTORIAL.fr », qui est votre copie 552personnelle du didacticiel Emacs. Lorsque vous trouvez un fichier avec 553Emacs, son nom apparaît à cet endroit précis. 554 555Une particularité de la commande permettant de trouver un fichier est 556que vous devez donner le nom du fichier voulu. On dit que la commande 557« lit un paramètre » (ici, le paramètre est le nom du fichier). Après 558avoir fait la commande 559 560 C-x C-f Trouve un fichier 561 562Emacs vous demande d'entrer le nom du fichier. Ce que vous tapez 563s'inscrit dans la ligne située en bas de l'écran : cette ligne 564s'appelle le mini-tampon lorsqu'elle sert à ce type de saisie. Vous 565pouvez utiliser les commandes d'édition habituelles d'Emacs pour 566éditer le nom du fichier. 567 568Pendant que vous entrez le nom du fichier (ou pendant n'importe quelle 569saisie dans le mini-tampon), vous pouvez annuler la commande par C-g. 570 571>> Faites C-x C-f, puis C-g. Cela annule le mini-tampon et la commande 572 C-x C-f qui utilisait celui-ci : vous ne trouvez donc aucun fichier. 573 574Lorsque vous avez fini d'entrer le nom du fichier, tapez <Entrée> pour 575terminer la saisie. La commande C-x C-f effectue son travail et trouve 576le fichier choisi. Le mini-tampon disparaît lorsque C-x C-f a terminé. 577 578Au bout d'un court instant, le contenu du fichier apparaît à l'écran 579et vous pouvez l'éditer. Lorsque vous voulez que vos modifications 580deviennent permanentes, faites : 581 582 C-x C-s Sauvegarde le fichier 583 584Cette commande copie dans le fichier le texte qui est dans Emacs. La 585première fois, Emacs renomme le fichier original afin qu'il ne soit 586pas perdu. Le nom de cette sauvegarde est construit en ajoutant « ~ » 587à la fin du nom initial. Lorsque la sauvegarde est finie, Emacs 588affiche le nom du fichier écrit. 589 590>> Faites C-x C-s pour sauvegarder votre copie du didacticiel. 591 Cela devrait écrire "Wrote ...TUTORIAL.fr" en bas de l'écran. 592 593Vous pouvez trouver un fichier existant pour le visualiser ou 594l'éditer. Vous pouvez également trouver un fichier qui n'existe pas 595encore. C'est ainsi que l'on crée un fichier avec Emacs : on trouve le 596fichier, qui démarre vide, puis on insère du texte. Lorsque l'on 597demande à « sauvegarder » le fichier, Emacs crée alors vraiment le 598fichier avec le texte que l'on a inséré. À partir de ce moment-là, 599vous pouvez considérer que vous éditez un fichier déjà existant. 600 601 602* TAMPONS 603--------- 604 605Si vous trouvez un second fichier avec C-x C-f, le premier reste dans 606Emacs. Vous pouvez y revenir en le retrouvant avec C-x C-f. Il est 607ainsi possible d'avoir un nombre assez important de fichiers dans 608Emacs. 609 610>> Créez un fichier nommé « truc » en faisant C-x C-f truc <Entrée>. 611 Puis, insérez du texte, éditez-le et sauvegardez « truc » en 612 faisant C-x C-s. 613 Enfin, faites C-x C-f TUTORIAL.fr <Entrée> pour revenir au didacticiel. 614 615Emacs stocke le texte de chaque fichier dans un objet appelé « tampon ». 616Trouver un fichier crée un nouveau tampon dans Emacs. Pour voir la 617liste des tampons existants dans votre session Emacs, faites : 618 619 C-x C-b Liste des tampons 620 621>> Faites C-x C-b 622 623Vous noterez que chaque tampon a un nom et qu'il peut également avoir 624un nom de fichier pour le fichier qu'il contient. TOUT texte que vous 625pouvez voir dans une fenêtre Emacs fait toujours partie d'un tampon. 626 627>> Faites C-x 1 pour faire disparaître la liste des tampons. 628 629Lorsque vous avez plusieurs tampons, seul l'un d'entre eux est le 630tampon « courant » à un instant donné : c'est celui que vous éditez. 631Si vous souhaitez éditer un autre tampon, vous devez « basculer » vers 632lui. Pour basculer vers un tampon correspondant à un fichier, vous 633pouvez le recharger avec C-x C-f mais il y a plus simple : utilisez la 634commande C-x b en lui passant le nom du tampon. 635 636>> Faites C-x b truc <Entrée> pour revenir au tampon « truc », qui 637 contient le texte du fichier « truc ». 638 Puis, faites C-x b TUTORIAL <Entrée> pour revenir à ce didacticiel. 639 640La plupart du temps, le nom d'un tampon est le même que celui du 641fichier qu'il contient (sans le chemin), mais ce n'est pas toujours 642vrai. La liste obtenue lorsque vous faites C-x C-b montre toujours les 643noms de tous les tampons. 644 645TOUT texte que vous visualisez dans une fenêtre Emacs fait toujours 646partie d'un tampon, mais certains tampons ne correspondent pas à des 647fichiers : le tampon "*Buffer List*", par exemple, ne contient pas de 648fichiers mais la liste obtenue par C-x C-b. Ce didacticiel n'avait pas 649de fichier au départ mais il en a un désormais, car dans la section 650précédente, vous avez tapé C-x C-s pour l'enregistrer. 651 652Le tampon "*Messages*" ne correspond pas non plus à un fichier ; il 653contient la liste des messages apparus dans la ligne d'état pendant 654votre session Emacs. 655 656>> Faites C-x b *Messages* <Entrée> pour visualiser le tampon des 657 messages. 658 Puis, faites C-x b TUTORIAL.fr <Entrée> pour revenir à ce didacticiel. 659 660Si vous modifiez le texte d'un fichier, puis que vous chargez un autre 661fichier, le premier ne sera pas sauvegardé. Ses modifications restent 662dans Emacs, dans le tampon qui lui est associé. La création ou 663l'édition du tampon du second fichier n'a aucun effet sur le tampon du 664premier. C'est très pratique, mais cela signifie aussi que vous avez 665besoin d'une méthode simple pour sauvegarder le tampon du premier 666fichier. Ce serait ennuyeux de devoir y revenir avec C-x C-f juste 667pour le sauvegarder avec C-x C-s. On a donc : 668 669 C-x s Sauvegarde certains tampons 670 671C-x s vous demande confirmation pour savoir s'il doit sauvegarder 672chaque tampon contenant des modifications non encore sauvegardées. Il 673vous demande, pour chacun de ces tampons, s'il doit le sauvegarder ou 674non. 675 676>> Insérez une ligne de texte et faites C-x s. 677 Cela devrait vous demander si vous souhaitez sauvegarder le tampon 678 nommé TUTORIAL.fr. Répondez par l'affirmative en tapant « y ». 679 680 681* EXTENSION DU JEU DE COMMANDES 682------------------------------- 683 684Il y a bien plus de commandes Emacs qu'il ne serait possible d'en 685créer avec tous les caractères de contrôle et Meta. Emacs contourne ce 686problème à l'aide de la commande X (eXtension). Celle-ci se présente 687sous deux déclinaisons : 688 689 C-x eXtension caractère, suivie d'un seul caractère. 690 M-x eXtension d'une commande nommée, suivie d'un nom long. 691 692Ces commandes sont généralement des commandes utiles, mais elles sont 693moins souvent utilisées que celles que vous avez déjà apprises. Vous 694en avez déjà rencontré deux : les commandes de fichiers C-x C-f pour 695trouver un fichier et C-x C-s pour sauvegarder. Un autre exemple est 696la commande qui met fin à la session Emacs : C-x C-c (ne vous 697inquiétez pour les modifications que vous avez faites, C-x C-c vous 698proposera de sauvegarder tous les fichiers modifiés avant de quitter 699Emacs). 700 701Si vous utilisez un affichage graphique, vous n'avez pas besoin de 702commande spéciale pour vous déplacer d'Emacs à une autre application. 703Vous pouvez le faire à l'aide de la souris ou avec les commandes du 704gestionnaire de fenêtres. Cependant, si vous utilisez un terminal 705texte ne pouvant afficher qu'une application à la fois, vous devez 706« suspendre » Emacs pour passer à n'importe quelle autre application. 707 708C-z est la commande permettant de quitter *temporairement* Emacs -- 709afin de pouvoir revenir à la même session plus tard. Sur les systèmes 710qui le permettent, C-z « suspend » Emacs ; c'est-à-dire qu'il revient 711au shell mais ne détruit pas Emacs. Avec les shells les plus courants, 712vous pouvez revenir à Emacs en faisant la commande 'fg' ou '%emacs'. 713 714Le moment idéal pour utiliser C-x C-c est lorsque l'on se 715déconnecte. C'est aussi la commande adaptée pour sortir d'un Emacs 716invoqué pour une modification rapide, par exemple par un programme de 717courrier ou tout autre utilitaire. 718 719Il existe de nombreuses commandes C-x. Voici une liste de celles que 720vous avez apprises : 721 722 C-x C-f Trouve un fichier. 723 C-x C-s Sauvegarde un fichier. 724 C-x C-b Liste des tampons. 725 C-x C-c Quitte Emacs. 726 C-x 1 Détruit toutes les fenêtres, sauf une. 727 C-x u Annulation. 728 729Les eXtensions de commandes nommées sont des commandes utilisées 730encore moins souvent, ou des commandes qui ne servent que dans 731certains modes. Un exemple est la commande replace-string, qui 732remplace une chaîne par une autre dans un tampon. Lorsque vous faites 733M-x, Emacs affiche M-x en bas de l'écran et vous demande de taper le 734nom de la commande, « replace-string » ici. Contentez-vous de faire 735«repl s<TAB> » et Emacs complétera le nom (<TAB> représente la touche 736de tabulation, qui se trouve habituellement au-dessus de la touche de 737verrouillage des majuscules, à gauche du clavier). Terminez la 738commande en pressant <Entrée>. 739 740La commande replace-string nécessite deux paramètres -- la chaîne à 741remplacer et la chaîne de remplacement. Vous devez terminer chaque 742paramètre par <Entrée>. 743 744>> Déplacez le curseur sur la ligne blanche deux lignes plus bas. 745 Puis, faites M-x repl s<Entrée>changée<Entrée>modifiée<Entrée>. 746 747 Notez comment cette ligne a été changée : vous avez remplacé le mot 748 « changée » par « modifiée » à chaque fois qu'il apparaissait après 749 la position initiale du curseur. 750 751 752* SAUVEGARDE AUTOMATIQUE 753------------------------ 754 755Lorsque vous avez modifié un fichier, mais que vous ne l'avez pas 756encore sauvegardé, ces modifications pourraient être perdues si votre 757système se plantait. Pour vous protéger de ce problème, Emacs écrit 758périodiquement un fichier de « sauvegarde automatique » pour chaque 759fichier en cours d'édition. Le nom de ce fichier commence et se 760termine par un # : si, par exemple, votre fichier s'appelle 761« hello.c », son fichier de sauvegarde automatique s'appellera 762« #hello.c# ». Lorsque vous sauvegardez le fichier de la façon 763habituelle, Emacs détruit son fichier de sauvegarde automatique. 764 765Si l'ordinateur se plante, vous pouvez récupérer ce qui a été 766sauvegardé automatiquement en ouvrant normalement le fichier (celui 767que vous éditiez, pas la sauvegarde automatique), puis en faisant 768M-x recover file<Entrée>. Lorsqu'Emacs vous demande de confirmer, 769tapez yes<Entrée> pour continuer et récupérer ainsi les données 770sauvées par la sauvegarde automatique. 771 772 773* ZONE D'ECHO 774------------- 775 776Si Emacs constate que vous tapez les commandes multi-caractères 777lentement, il les affiche en bas de l'écran dans une zone nommée 778« zone d'écho ». La zone d'écho contient la dernière ligne de l'écran. 779 780 781* LIGNE DE MODE 782--------------- 783 784La ligne placée immédiatement au dessus de la zone d'écho s'appelle la 785« ligne de mode ». Elle affiche quelque chose comme ça : 786 787 -:**- TUTORIAL.fr 64% L749 (Fundamental) 788 789Cette ligne donne des informations sur l'état d'Emacs et sur le texte 790que vous êtes en train d'éditer. 791 792Vous savez déjà ce que signifie le nom de fichier -- c'est celui que 793vous avez chargé. NN% indique votre position actuelle dans le texte ; 794cela signifie que NN pour cent du texte se trouve au dessus du sommet 795de l'écran. Si le début du fichier est sur l'écran, il s'affichera 796« Top » et non « 00% ». Si le bas du texte est sur l'écran, il 797s'affichera « Bot » (comme « bottom »). Si tout le texte tient dans 798l'écran, il s'affichera « All ». 799 800Le L et les chiffres qui le suivent indiquent une position d'une façon 801différente : ils indiquent le numéro de la ligne courante du point. 802 803Les astérisques au début signifient que vous avez modifié le 804texte. Lorsque vous venez de visiter ou sauvegarder un fichier, cette 805partie de la ligne de mode n'affichera pas d'astérisques mais 806simplement des tirets. 807 808La partie de la ligne de mode située entre parenthèses indique les 809modes d'édition dans lesquels vous vous trouvez. Le mode par défaut 810est le mode « Fundamental » et c'est celui que vous êtes en train 811d'utiliser. C'est un exemple de « mode majeur ». 812 813Emacs possède de nombreux modes majeurs différents. Certains sont 814prévus pour éditer différents langages et/ou types de texte (mode 815Lisp, mode Text, etc). À tout instant, il n'y a qu'un seul mode majeur 816actif et son nom se trouve toujours dans la ligne de mode, à l'endroit 817où « Fundamental » se trouve actuellement. 818 819Chaque mode majeur modifie le comportement de quelques commandes. Il 820existe, par exemple, des commandes pour créer des commentaires dans un 821programme et, comme chaque langage de programmation a sa propre 822syntaxe pour les commentaires, chaque mode majeur doit insérer ceux-ci 823de façon différente. Un mode majeur est le nom d'une commande étendue, 824qui vous permet de basculer dans ce mode. M-x fundamental-mode, par 825exemple, est une commande pour basculer dans le mode Fundamental. 826 827Si vous devez éditer du texte en langage naturel, comme ce fichier, 828vous utiliserez probablement le mode Text. 829 830>> Faites M-x text-mode<Entrée>. 831 832Ne vous inquiétez pas, aucune des commandes Emacs que vous avez 833apprises ne change beaucoup mais vous pouvez constater que M-f et M-b 834traitent maintenant les apostrophes comme des parties de mots. Avant, 835dans le mode Fundamental, M-f et M-b les considéraient comme des 836séparateurs de mots. 837 838Les modes majeurs font généralement des modifications subtiles comme 839celle-ci : la plupart des commandes font « la même chose » dans tous 840les modes majeurs, mais fonctionnent un peu différemment. 841 842Pour lire la documentation sur votre mode majeur actuel, faites C-h m. 843 844>> Faites C-l C-l pour amener cette ligne près du haut de l'écran. 845>> Faites C-h m pour voir comment le mode Text diffère du mode Fundamental. 846>> Faites C-x 1 pour supprimer la documentation de l'écran. 847 848Les modes majeurs sont appelés ainsi parce qu'il existe aussi des modes 849mineurs. Ces derniers ne sont pas des alternatives aux modes majeurs, 850mais simplement des modifications de ceux-ci. Tout mode mineur peut 851être activé ou désactivé indépendamment de tous les autres modes 852mineurs et de votre mode majeur. Vous pouvez donc n'utiliser aucun 853mode mineur, un seul, ou toute combinaison de plusieurs modes mineurs. 854 855Un mode mineur très utile, surtout lorsque l'on édite du langage 856naturel, est le mode Auto Fill. Lorsqu'il est activé, Emacs coupe 857automatiquement la ligne entre les mots lorsque vous insérez du texte 858et que la ligne est trop longue. 859 860Vous pouvez activer le mode Auto Fill en faisant M-x auto fill 861mode<Entrée>. Lorsqu'il est activé, vous pouvez le désactiver en 862faisant à nouveau M-x auto fill mode<Entrée>. Si le mode est 863désactivé, cette commande l'active et, s'il est activé, elle le 864désactive : on dit que la commande « fait basculer le mode ». 865 866>> Faites M-x auto-fill-mode<Entrée> puis insérez une ligne de 867 plusieurs « azer » jusqu'à ce qu'elle se divise en deux lignes. 868 Vous devez mettre des espaces entre eux car le mode Auto Fill ne 869 coupe les lignes que sur les espaces. 870 871La marge est habituellement fixée à 70 caractères, mais pouvez 872modifier cette valeur avec la commande C-x f. Vous devez fournir la 873nouvelle valeur de la marge sous la forme d'un paramètre numérique. 874 875>> Faites C-x f avec un paramètre de 20 (C-u 2 0 C-x f). 876 Puis, tapez du texte et vous verrez qu'Emacs fait des lignes de 20 877 caractères. Remettez la marge à 70 en refaisant C-x f. 878 879Si vous faites des modifications au milieu d'un paragraphe, le mode 880Auto Fill ne reformatera pas ce paragraphe. 881Pour cela, faites M-q (META-q) lorsque le curseur est placé dans ce 882paragraphe. 883 884>> Placez le curseur dans le paragraphe précédent et faites M-q. 885 886 887* RECHERCHE 888----------- 889 890Emacs peut rechercher des chaînes de caractères (ce sont des groupes 891de caractères contigus ou mots) soit vers l'avant, soit vers 892l'arrière. La recherche d'une chaîne est une commande de déplacement 893du curseur : elle déplace le curseur à l'emplacement où la chaîne 894apparaît. 895 896La commande de recherche d'Emacs est « incrémentale ». Cela 897signifie que la recherche a lieu pendant que l'on tape la chaîne que 898l'on recherche. 899 900La commande pour débuter une recherche est C-s pour rechercher vers 901l'avant et C-r pour rechercher vers l'arrière. MAIS ATTENDEZ ! 902N'essayez pas encore. 903 904Lorsque vous faites C-s la chaîne « I-search » apparaît comme invite 905dans la zone d'écho. Cela vous indique qu'Emacs est dans ce que l'on 906appelle une recherche incrémentale et qu'il attend que vous tapiez ce 907que vous recherchez. <Entrée> termine une recherche. 908 909>> Faites C-s pour lancer une recherche. LENTEMENT, une lettre à la 910 fois, tapez le mot « curseur », en attendant entre chaque caractère 911 pour constater ce que fait le curseur. Vous avez maintenant atteint 912 « curseur » une première fois. 913>> Tapez C-s à nouveau pour trouver l'occurrence suivante de « curseur ». 914>> Faites maintenant <DEL> quatre fois et étudiez les mouvements du 915 curseur. 916>> Faites <Entrée> pour mettre fin à la recherche. 917 918Avez-vous vu ce qui se passait ? Emacs, dans une recherche 919incrémentale, essaie d'aller sur l'occurrence de la chaîne que vous 920avez tapée jusqu'à cet instant. Pour aller sur l'occurrence suivante de 921« curseur », il suffit de refaire C-s : s'il ne trouve rien, Emacs 922bippe et vous indique que la recherche a échoué. C-g permet également 923de mettre fin à la recherche. 924 925Si vous vous trouvez au milieu d'une recherche incrémentale et que 926vous tapez <DEL>, vous remarquerez que cela supprime le dernier 927caractère de la chaîne recherchée et que la recherche reprend à 928l'endroit où elle se trouvait précédemment. Supposons, par exemple, 929que vous ayiez tapé « c » pour trouver la première occurrence de 930« c ». Si vous tapez maintenant « u », le curseur ira sur la première 931occurrence de « cu ». Faites <DEL> : cela supprime le « u » de la 932chaîne de recherche et le curseur revient à la première occurrence de 933« c ». 934 935Si vous êtes au milieu d'une recherche et que vous tapez un caractère 936de contrôle ou un meta-caractère (sauf quelques exceptions -- les 937caractères considérés comme spéciaux pour les recherches, tels que C-s 938et C-r), cela met fin à la recherche. 939 940C-s lance une recherche de toutes les occurrences de la chaîne APRÈS la 941position courante du curseur. Si vous voulez faire une recherche plus 942haut dans le texte, faites plutôt C-r. Tout ce que nous avons dit sur 943C-s s'applique également à C-r, sauf que la direction de la recherche 944est inversée. 945 946 947* FENÊTRES MULTIPLES 948-------------------- 949 950L'une des caractéristiques les plus agréables d'Emacs est que vous 951pouvez afficher plusieurs fenêtres en même temps à l'écran. (Notez 952qu'Emacs utilise le terme « cadres » -- décrits dans la section 953d'après -- là où d'autres applications disent « fenêtres ». Le 954manuel d'Emacs contient un Glossaire des termes d'Emacs.) 955 956>> Placez le curseur sur cette ligne et faites C-l C-l. 957 958>> Faites maintenant C-x 2 pour diviser l'écran en deux 959 fenêtres. Toutes les deux affichent ce didacticiel et le curseur 960 reste dans celle du haut. 961 962>> Faites C-M-v pour faire défiler le texte de la fenêtre du bas 963 (Si vous n'avez pas de touche Meta, faites <ESC> C-v). 964 965>> Tapez C-x o (« o » pour « other ») afin de placer le curseur dans 966 la fenêtre du bas. 967>> Utilisez C-v et M-v pour la faire défiler. 968 Conservez ces instructions dans la fenêtre du haut. 969 970>> Faites à nouveau C-x o pour replacer le curseur dans la fenêtre du 971 haut. Le curseur est exactement où il était avant. 972 973Vous pouvez continuer à utiliser C-x o pour passer d'une fenêtre à 974l'autre. La « fenêtre sélectionnée », où la plupart de l'édition a 975lieu, est celle avec un curseur plus visible, qui clignotte quand 976vous ne tapez pas. Les autres fenêtres ont leurs propres positions 977de curseur ; si vous utilisez Emacs dans un affichage graphique, ces 978curseurs sont dessinés comme des boîtes fantômes fixes. 979 980La commande C-M-v est très utile lorsque l'on édite du texte dans une 981fenêtre et que l'on utilise l'autre uniquement comme référence. Vous 982pouvez conserver le curseur dans la fenêtre où vous éditez et 983parcourir l'autre fenêtre avec C-M-v. 984 985C-M-v est un exemple de caractère CONTROLE-META. Si vous disposez 986d'une touche META, vous pouvez faire C-M-v en pressant à la fois 987CONTROLE et META tout en tapant v. Peu importe qui, de CONTROLE ou 988META est pressée en premier car ces deux touches agissent en modifiant 989les caractères que vous tapez. 990 991Si vous n'avez pas de touche META et que vous utilisez <ESC> à la 992place, l'ordre a son importance : vous devez taper <ESC> puis C-v car 993C-ESC v ne fonctionnera pas. En effet, <ESC> est un caractère en 994lui-même, ce n'est pas un modificateur de touches. 995 996>> Faites C-x 1 (dans la fenêtre du haut) pour supprimer la fenêtre du 997 bas. 998 999(Si vous aviez fait C-x 1 dans la fenêtre du bas, vous auriez supprimé 1000celle du haut. Pensez à cette commande comme signifiant « ne garde 1001qu'une fenêtre, celle dans laquelle je suis »). 1002 1003Vous n'êtes pas obligé d'afficher le même tampon dans les deux 1004fenêtres. Si vous faites C-x C-f pour trouver un fichier dans une 1005fenêtre, l'autre n'est pas modifiée. Chaque fenêtre peut contenir un 1006fichier indépendamment de l'autre. 1007 1008Voici une autre façon d'utiliser deux fenêtres pour afficher deux 1009choses différentes : 1010 1011>> Faites C-x 4 C-f suivi du nom d'un de vos fichiers puis faites 1012 <Entrée>. Le fichier indiqué apparaît dans la fenêtre du bas et le 1013 curseur s'y rend également. 1014 1015>> Faites C-x o pour revenir à la fenêtre du haut, puis C-x 1 pour 1016 supprimer celle du bas. 1017 1018 1019* CADRES MULTIPLES 1020------------------ 1021 1022Emacs peut aussi créer plusieurs « cadres ». Un cadre est ce que nous 1023appelons une collection de fenêtres, avec ses menus, ses barres de 1024défilement, son mini-tampon, etc. Dans les affichages graphiques, ce 1025qu'Emacs appelle un cadre est ce que la plupart des applications 1026appellent une « fenêtre ». Des cadres graphiques multiples peuvent 1027apparaître sur l'écran en même temps. Dans un terminal texte, seul 1028un cadre à la fois peut être affiché. 1029 1030>> Tapez M-x make-frame <Entrée> 1031 Voyez un nouveau cadre apparaître dans votre écran. 1032 1033Tout ce que vous faisiez dans votre cadre initial, vous pouvez le 1034faire dans le nouveau cadre. Il n'y a rien de spécial au premier 1035cadre. 1036 1037>> Tapez M-x delete-frame <Entrée> 1038 Ceci détruit le cadre sélectionné. 1039 1040Vous pouvez aussi détruire un cadre en utilisant les méthodes normales 1041fournies par le système graphique (souvent en cliquant sur un bouton 1042avec un « X » dans l'angle haut du cadre.) Si vous supprimez le 1043dernier cadre de la tâche Emacs de cette manière, vous sortez d'Emacs. 1044 1045 1046* NIVEAUX D'ÉDITION RÉCURSIVE 1047----------------------------- 1048 1049Parfois, vous vous trouverez dans ce qui s'appelle un « niveau 1050d'édition récursive ». Cela est indiqué par des crochets dans la ligne 1051de mode, entourant les parenthèses situées autour du nom du mode 1052majeur. Vous verrez, par exemple [(Fundamental)] au lieu de (Fundamental). 1053 1054Pour sortir du niveau d'édition récursive, faites <ESC> <ESC> <ESC>. 1055C'est une commande de sortie à tout faire. Vous pouvez également l'utiliser 1056pour supprimer les fenêtres supplémentaires et pour sortir du mini-tampon. 1057 1058>> Faites M-x pour aller dans le mini-tampon, puis faites <ESC> <ESC> <ESC> 1059 pour en sortir. 1060 1061Vous ne pouvez pas utiliser C-g pour sortir d'un niveau d'édition 1062récursive car cette commande sert à annuler des commandes et des 1063paramètres DANS le niveau d'édition récursive. 1064 1065 1066* OBTENIR DE L'AIDE SUPPLÉMENTAIRE 1067---------------------------------- 1068 1069Nous avons essayé, dans ce didacticiel, de ne fournir que les 1070informations suffisantes pour commencer à utiliser Emacs. Il y a tant 1071de possibilités avec Emacs qu'il serait impossible de tout expliquer 1072ici. Cependant, vous pouvez vouloir en apprendre plus, car il a bien 1073d'autres fonctionnalités utiles. Emacs dispose de commandes pour lire 1074la documentation sur ses commandes. Ces commandes d'« aide » 1075commencent toutes par le caractère C-h, le « caractère d'aide ». 1076 1077Pour utiliser l'aide, tapez C-h suivi d'un caractère indiquant le type 1078d'aide que vous souhaitez. Si vous êtes VRAIMENT perdu, faites C-h ? 1079et Emacs vous indiquera les types d'aide qu'il peut fournir. Si vous 1080avez tapé C-h et que vous vous ravisez, il vous suffit de faire C-g 1081pour annuler. 1082 1083(si C-h n'affiche pas de message d'aide en bas de l'écran, essayez à 1084la place la touche F1 ou M-x help <Entrée>.) 1085 1086La commande d'aide la plus simple est C-h c. Faites C-h, le caractère 1087c, puis un caractère ou une séquence de commande : Emacs affichera une 1088description très courte de cette commande. 1089 1090>> Faites C-h c C-p. 1091 1092Le message devrait être quelque chose comme : 1093 1094 C-p runs the command previous-line 1095 1096Cela vous donne le « nom de la fonction ». Les noms de fonction 1097servent principalement à la personnalisation et à l'extension d'Emacs, 1098mais comme ils sont choisis de façon à indiquer ce que fait la 1099commande, ils servent également de documentation rapide -- c'est 1100suffisant pour vous rappeler les commandes que vous avez déjà 1101apprises. 1102 1103Les commandes multi-caractères, comme C-x C-s et (si vous n'avez ni 1104touche META, ni touche ALT) <ESC>v sont également 1105possibles après C-h c. 1106 1107Pour obtenir plus d'informations sur une commande, faites C-h k au 1108lieu de C-h c. 1109 1110>> Faites C-h k C-p. 1111 1112Cela affiche la documentation de la fonction, ainsi que son nom, dans 1113une fenêtre Emacs. Lorsque vous avez fini de lire, faites C-x 1 pour 1114supprimer le texte de l'aide. Vous n'êtes pas obligé de le faire tout 1115de suite ; vous pouvez continuer à travailler tout en vous référant à 1116l'aide, puis taper C-x 1 lorsque vous n'avez plus besoin de celle-ci. 1117 1118Voici d'autres options utiles de C-h : 1119 1120 C-h f Décrit une fonction. Vous tapez le nom de la fonction. 1121 1122>> Faites C-h f previous-line<Entrée>. 1123 Cela affiche toutes les informations dont dispose Emacs sur la 1124 fonction qui implémente la commande C-p. 1125 1126 C-h a Commande Apropos. Tapez un mot-clé et Emacs affichera 1127 toutes les commandes dont les noms contiennent ce 1128 mot-clé. Ces commandes peuvent toutes être invoquées 1129 avec M-x. Pour certaines, la commande Apropos 1130 affichera également une séquence d'un ou deux 1131 caractères exécutant la même commande. 1132 1133>> Faites C-h a file<Entrée>. 1134 1135Cela affiche dans une autre fenêtre une liste de toutes les commandes 1136M-x ayant « file » dans leurs noms. Vous verrez listée des commandes 1137caractères à côté des noms de commandes qui leur correspondent (comme 1138C-x C-f à côté de find-file). 1139 1140>> Faites C-M-v pour faire défiler la fenêtre d'aide. Faites-le 1141 plusieurs fois. 1142 1143>> Faites C-x 1 pour supprimer la fenêtre d'aide. 1144 1145 C-h i Manuels en ligne (alias Info). Cette commande vous place dans 1146 un tampon spécial, appelé « *info* », où vous pouvez 1147 lire les manuels en ligne des paquetages installés sur 1148 votre système. Faites m emacs <Entrée> pour lire le 1149 manuel d'Emacs. Si vous n'avez jamais utilisé Info 1150 auparavant, tapez ? et Emacs vous fera faire une visite 1151 guidée des fonctionnalités du mode Info. Lorsque vous 1152 en aurez fini avec ce didacticiel, le manuel Info 1153 d'Emacs devrait être votre source de documentation 1154 essentielle. 1155 1156 1157* FONCTIONNALITÉS SUPPLÉMENTAIRES 1158--------------------------------- 1159 1160Vous pouvez en apprendre plus en lisant le manuel d'Emacs, qu'il soit 1161imprimé ou en ligne avec le système Info (utilisez le menu Help, ou 1162faites C-h r). Les deux fonctionnalités que vous apprécierez 1163particulièrement sont la complétion, qui permet d'économiser la 1164frappe, et dired, qui simplifie la manipulation des fichiers. 1165 1166La complétion permet d'éviter les frappes inutiles. Si, par exemple, 1167vous voulez basculer vers le tampon *Messages*, tapez simplement 1168C-x b *M<Tab> et Emacs complètera le nom du tampon s'il peut le 1169déterminer à partir de ce que vous avez saisi avant la tabulation. La 1170complétion est décrite dans la version Info du manuel Emacs, à la 1171rubrique "Completion". 1172 1173Dired vous permet de consulter la liste des fichiers d'un répertoire 1174(et, éventuellement, de ses sous-répertoires), de vous déplacer dans 1175cette liste, d'ouvrir, de renommer, de supprimer et, de façon 1176générale, de manipuler ces fichiers. Dired est décrit dans la version 1177Info du manuel Emacs, à la rubrique "Dired". 1178 1179Le manuel décrit également les nombreuses autres fonctionnalités 1180d'Emacs. 1181 1182 1183* CONCLUSION 1184------------ 1185 1186Pour quitter définitivement Emacs, faites C-x C-c. 1187 1188Ce didacticiel est destiné à être compréhensible par tous les nouveaux 1189utilisateurs. Si vous avez trouvé que quelque chose n'était pas clair, 1190ne restez pas les bras croisés à vous accuser de tous les maux -- 1191plaignez-vous ! 1192 1193 1194* COPIE 1195--------- 1196 1197Ce didacticiel descend d'une longue lignée de didacticiels Emacs, 1198débutée par celui qui fut écrit par Stuart Cracraft pour le premier 1199Emacs. 1200 1201Cette version du didacticiel, comme GNU Emacs, est placée sous 1202droit d'auteur, et vous pouvez en distribuer des copies sous certaines 1203conditions : 1204 1205Copyright (C) 1985, 1996, 2001-2021 Free Software Foundation, Inc. 1206 1207 Chacun peut créer ou distribuer des copies de ce document tel qu'il 1208 l'a reçu, sur n'importe quel support, pourvu que la note de 1209 copyright et cette note de permission soient préservées et que le 1210 distributeur garantisse au destinataire la permission d'une 1211 redistribution ultérieure telle qu'elle est permise par cette note. 1212 1213 Vous pouvez distribuer des versions modifiées de ce document, ou 1214 de parties modifiées de celui-ci sous les conditions citées plus haut, 1215 pourvu qu'il soit clairement indiqué qui les a modifié pour la 1216 dernière fois. 1217 1218Les conditions de copie d'Emacs lui-même sont plus complexes, mais 1219dans le même esprit. Lisez le fichier COPYING et donnez ensuite des 1220copies de GNU Emacs à vos amis. Participez à l'éradication de 1221l'obstructionnisme du logiciel (sa « propriétarisation ») en 1222utilisant, écrivant et partagent des logiciels libres ! 1223 1224Cette traduction française a été effectuée par Éric Jacoboni 1225<jaco@teaser.fr> et complétée par Bastien Guerry <bzg@gnu.org>. 1226 1227--- end of TUTORIAL.fr --- 1228 1229;;; Local Variables: 1230;;; coding: utf-8 1231;;; sentence-end-double-space: nil 1232;;; End: 1233