mycheatsheets/emacs-les-bases.org

4.0 KiB

Emacs, les bases

Cette page est basée sur cette page

emacs se lance soit en mode gui, soit console. J'utilise les deux, peut importe, seul le contexte détermine mon choix.

En mode console, si emacs est configuré pour fonctionner en tant que service, on peux utiliser la commande suivante : emacsclient -nw

Lorsqu'une fenetre s'affiche, sous emacs on appel ça une frame. La frame est donc le contenant de plus haut niveau.

Dans une frame on va retrouver une windows qui va contenir un buffer.

On utilise rarement les fenêtres (page de documentation par exemple).

Quand on édite un fichier, celui-ci est donc dans un buffer. Il y a autant de buffers actifs qu'il y a de fichiers ouverts.

En bas de fenêtre, on va retrouver une barre de status, classique, et un mini buffer qui là aussi affiche quelques messages.

Dans la suite de cet article, je vais présenter ce qui m'a été utile et souvent manqué. Il existe parfois (souvent) d'autres raccourcis pour réaliser les opérations. J'ai choisi de limiter l'information afin de faciliter sa mémorisation.

Les opérations de base

  • C-h C-h : affiche l'aide intégrée
  • C-x fleche droite : passe au buffer suivant
  • C-x fleche gauche : passe au buffer précédent
  • C-x f : charge un fichier dans un nouveau buffer
  • C-x C-s : sauvegarde les modifications dans le fichier
  • C-x s : sauvegarde les modification dans tous les fichiers ouverts
  • C-x k : ferme le buffer actif
  • C-g : annule la séquence de raccourcis clavier. Trèèèès utile.

Couper, copier, coller, annuler

  • M-w : copier
  • C-w : couper
  • C-k : coupe la ligne entière à partir du curseur
  • C-y : coller
  • C-x u : annuler

Les opérations de type couper/copier/coller s'opèrent sur une "région". Il faut donc définir cette région. Pour se faire on déplace le curseur en début de zone, puis on exécute : C-espace.

En bas de fenètre l'inscription Mark set apparait.

Après avoir marqué le début de la région, il faut déplacer le curseur jusqu'à la fin, pour sélectionner la zone.

A partir de là, vous pouvez couper, copier le contenu de la région et déplacer le curseur vers la zone ou coller le texte.

Chercher une chaine de caractères

La recherche d'une chaine de caractère se fait vers le début du fichier ou vers sa fin, par rapport au curseur.

  • C-R : recherche vers le début
  • C-S : recherche vers la fin

Pour se déplacer dans les résultats de recherche, il suffit de ré-exécuter la séquence.

Chercher et remplacer

Chercher une chaine de caractère et la remplacer, fonctionne à partir du curseur. Pour faire une recherche sur tout le fichier, il faut se mettre au tout début.

  • ESC-% : ouvre un minibuffer ou l'on écrit la chaine que l'on va chercher

Puis le minibuffer nous demande par quoi la remplacer. Après validation, emacs met en surbrillance les occurences trouvées et nous propose d'effectuer le remplacement.

  • y : valide le remplacement;
  • n : invalide le remplacement et on passe à l'occurence suivante;
  • . : remplace et quitte le mode cherche et remplace;
  • ! : remplace toutes les occurences et me demande pas à chaque fois;
  • ^ : revient sur la précédente occurence
  • q : quitte tout simplement le mode cherche et remplace

Déplacement dans un fichier

  • C-a : va au début de la ligne;
  • C-e : va en fin de ligne;
  • ESC > : aller à la fin du fichier;
  • ESC < : aller au début du fichier;

les replis

Les replis permettent de garder que les titres ou sections, et augmente ainsi la visibilité. Dans un fichier org-mode :

  • SHIFT-TAB : replis toutes les sections;
  • TAB : déplit. Pour fonctionner, il faut être en début de ligne.

Exécuter une commande emacs

Toute les commandes n'ont pas de raccourcis clavier et on a pas toujours envie de tout retenir. Emacs permet d'exécuter une action, simplement en l'appelant :

  • ALT-X : puis le nom de l'action (la completion fonctionne)