Comment lire ce tutorial: l'entrée: C-_ (f7): undo "Undo" : annule la dernière action se lit: raccourci-clavier standard (raccourci défini dans mon .emacs) : nom de la fonction emacs associée "Equivalent à la Word de la fonction" : description de l'effet de la fonction **************************************************************** ***Racourcis-Clavier C-g signifie: j'appuie sur Ctrl, je laisse Ctrl appuyé pour appuyer sur g avec un autre doigt. C-x C-g signifie: j'exécute C-x, je lâche tout, j'exécute C-f OU BIEN: Je maintiens Ctrl enfoncé pour appuyer sur x, relacher x, et appuyer sur f. M-g, comme C-g, sauf que M désigne la touche Esc (dûre à atteindre) ou bien la touche Left-Alt (fortement recommandée) **************************************************************** ***Basic C-g: abandon/annulation de la commande en cours (affichée dans le minibuffer). Permet d'annuler la saisie d'un raccourci C-x C-c: Quitter Emacs C-_ (f7): Undo C-j: 'Entrée' propre avec indentation adaptée. Bannir 'enter' ou 'return' autant que possible. tab: indentation de la ligne de code courante selon le mode en cours M: quitter une fenetre d'aide ou de requete fichier C-?: aide M-x: apeller une macro ou une fonction emacs **************************************************************** dans tous les modes: la completion peut etre apellee par TAB. TAB TAB --> Liste de completions: choisir avec bouton du milieu. **************************************************************** **************************************************************** ***Manip buffers Rappel: -un buffer est une plage de mémoire qui contient un document. Un buffer n'est pas nécessairement affiché à l'écran. -une fenêtre affiche un buffer à l'écran. Il peut y avoir bien plus de buffers que de fenêtres (une seule au démarrage d'émacs). Plusieurs fenêtres peuvent afficher le contenu d'un même buffer (pratique pour éditer un long fichier .c à plusieurs endroits à la fois). C-x C-f: find-file: "Open" :Ouverture d'un fichier (chargement du fichier dans un buffer et affichage sur la fenêtre courante) C-x 4 C-f: Ouverture fichier dans une autre fenetre, créée si necessaire C-x 5 2: Ouverture d'un fichier dans un autre Emacs C-x C-s: "Save": Sauvegarde du buffer courant dans son fichier associé C-x C-w: "Save as": Sauvegarde du buffer courant dans un nouveau fichier (notamment si pas encore de fichier associé) C-x C-b: affiche la liste des buffers ( 'C-h m' pour aide, et surtout 'C-?' pour liste des commmandes ) s:save k:kill x:execute les selections et sort. C-x b (M-b): switch-to-buffer: demande seulement le nom du buffer à afficher pour remplacer celui en cours (plus facile) Si un nouveau nom est entré, alors un nouveau buffer est créé. C-x k: tuer un buffer (mais pas la fenêtre) C-x C-q: modifie de force un buffer protege sans pouvoir le sauver. **************************************************************** ***Manipulation de Fenetres C-x 2 (f3): ajout d'une fenetre à emacs (split horizontal de la fenêtre où se trouve le curseur) C-x 3 (f2): idem, mais split vertical C-x o (M-o): faire passer le curs. d'une fenetre à l'autre C-x 1: detruire toutes les fenetres sauf celle où se trouve le curseur C-x 0: detruire la fenetre où est positionné le curseur **************************************************************** ***Manip regions Region: zone entre le dernier marquage et la pos. courante du curseur. Sur les emacs récents, cette zone apparaît en surbrillance (la fonction transient-mark-mode peut-etre appelée pour (dés)activer la surbrillance) C-SPC, C-@: poser une marque à la position courante du curseur commandes effectuant un marquage automatique: M-> , M-< , C-s , C-v , M-C-s... C-x C-x: echange position courante du curseur et marque C-u C-SPC: revenir a un marquage inferieur M-w: kill-ring-save : copie la région courante C-w: kill-region : kille la région courante C-y (f6): yank : recopie la derniere region killee à la position du curseur C-_ (f7): undo la derniere manip Il faut comprendre que quand une région est coupée ou collée, elle est en fait 'empilée' dans le kill-ring. M-y permet, lorsque vous avez fait C-y, de remplacer ce qui vient d'être collé par l'occurence précédente dans la pile. En retapant C-y, vous faites le tour de la pile, qui s'avère cyclique (ok, c'est une liste circulaire). **************************************************************** ***Deplacement curseur M-< (M-flèche-haut): debut buffer M-> (M-flèche-bas): fin buffer C-v: page avt M-v: page arr C-a: debut ligne M-a: debut paragraphe C-e: fin ligne M-e: fin de paragraphe C-b: car. precedent M-b: mot precedent C-f: car. suivant M-f: mot suivant C-n: ligne suivante C-p: ligne percedente C-l: centrage écran sur position curseur Bon, autant il est plus qu'utile de connaitre certains de ces raccourcis pour naviguer facilement dans ses buffers, autant certains font de la peine: C-f pour déplacer le curseur vers la droite, faut pas abuser! Il faut comprendre qu'emacs, par défaut, est pensé pour fonctionner sur tous les clavier, y compris ceux sans touches de fonction, pavé numérique ni flêches de direction. D'ailleurs, les permières versions d'emacs datent tant que tout cela n'était pas nécessairement présent à l'époque. Comme nous avons maintenant tous les mêmes claviers civilisés, voici un mappage moins anachronique et ne demandant aucune mnémotechnique: **************************************************************** ***Commandes Minuscules-Majuscules C-t: inveser les 2 derniers caracteres M-t: mots M-u: fin du mot en majuscules M-l: minuscules M-c: caractere sous curseur passe de min. à maj. et inv. **************************************************************** ***Commandes Speciales M-/: repete la fin du mot M-g 21: va a la ligne 21 **************************************************************** ***Repetitions C-u t: insere 4 cars "t" C-u C-u t: insere 4*4=16 t C-u 10 t: insere 10 t **************************************************************** ***Mode Lisp Interaction on peut taper des progs Lisp: (* 25 35) C-x C-e: execution -->resultat ds ligne de prompt