Aller au contenu

Jour 12 : raccourcis clavier

·449 mots·3 mins·
eeame
Auteur
eeame

Voyons comment personnaliser les raccourcis clavier.

Aujourd’hui, tu vas découvrir quelques fonctions avancées d’emacs et découvrir elisp le langage sur lequel repose emacs.

Il faut que tu saches qu’emacs c’est quelques primitives écrites dans le langage C, notamment un interpréteur lisp, et du code lisp. C’est ce qui explique, que l’on peut modifier en profondeur le comportement d’emacs à la volée.

C’est une étape un peu plus difficile que les autres : enjoy!!

Les raccourcis clavier
#

Comme tu le sais M-x permet d’accéder aux fonctions1 d’emacs. (et M-X permet d’accéder aux fonctions d’emacs en rapport avec le mode du tampon ouvert)

Certaines de ces fonctions sont associées à des raccourcis clavier par exemple:

  1. C-x C-s : Sauvegarder le fichier en cours
  2. C-g : Annuler l’opération précédente
  3. C-y : Répéter l’opération précédente (collage)
  4. C-k : Supprimer la fin de la ligne jusqu’à la fin du mot actuel
  5. C-w : Supprimer le mot avant le curseur
  6. C-a : Se rendre au début de la ligne actuelle
  7. C-e : Se rendre à la fin de la ligne actuelle
  8. C-M-% : Chercher et remplacer une expression rationnelle
  9. M-% : Chercher et remplacer
  10. C-x C-k: ferme le tampon en cours

D’autres ne sont pas associées à un raccourci clavier, mais si tu veux pourvoir accéder rapidement à l’une de ces commandes tu peux créer tes propres raccourcis!

keymap
#

Les raccourcis sont organisés sous forme de keymap .

M-x describe-keymap permet d’ouvrir un tampon qui liste tous les raccourcis associés à un mode.

Essaye d’afficher tous les raccourcis associés à org-mode.

Raccourci global
#

Pour créer des raccourcis il faut utiliser le langage lisp d’emacs. Il est facile d’utiliser elisp dans org-mode. Il suffit de créer un bloc de code par C-, puis choisir src et enfin écrire emacs-lisp:

Pour utiliser rapidement string-insert-rectangle:

  1. on crée un bloc de code pour elisp
  2. on utilise la fonction global-set-key
  3. avec le curseur dans le bloc de code on presse C-c qui va évaluer le bloc et charger le nouveau raccourci dans emacs
(global-set-key (kbd "C-x r i ") 'string-insert-rectangle)

Raccourci
#

Certains raccourcis ont vocation à être utiliser uniquement dans un mode, c’est en ce sens qu’ils sont qualifiés de .

La démarche est la même:

  1. on crée un bloc de code pour elisp
  2. on utilise la fonction define-key ou local-set-key
  3. avec le curseur dans le bloc de code on presse C-c qui va évaluer le bloc et charger le nouveau raccourci dans emacs

Par exemple pour créer un squelette de table dans org

(local-set-key (kbd "C-c t c") 'org-table-create)

Pour aller plus loin
#

Documentation
#

Paquetages dédiés aux raccourcis
#


  1. Les fonctions interactive d’emacs. D’autres fonctions sont accessibles différemment ↩︎