Emacs

De Disposition de clavier bépo

Emacs, l’éditeur de texte GNU, est sans doute avec vim ce qui se fait de mieux en matière d’éditeur de texte. Petit rappel: à la différence d’un traitement de texte, emacs édite un fichier provisoire qui remplace le fichier d’origine à chaque sauvegarde. C’est pour cela que l’on parle d’éditeur de texte. Là où cela se corse, c’est que chacun des éditeurs a ses fanatiques qui se livrent à une guerre de religion plus ou moins folklorique pour savoir qui a la palme d’or… Pour résumer, on peut dire qu’emacs a une approche plus traditionnelle, tandis que vim est un éditeur modal: il faut taper a ou i avant de pouvoir insérer du texte, ce qui est très déroutant pour le débutant mais plus ergonomique à la longue.

La philosophie des deux projets diffère aussi: emacs est rédigé en C et emacs lisp, un langage qui permet de rajouter de nombreuses et puissantes extensions, au point que l’on peut utiliser emacs comme daemon, lui faire lire le mail, gérer les fichiers, jouer à tetris etc. Selon l’adage courant, emacs peut tout faire, sauf le café… Vim permet d’effectuer aussi de nombreuses opérations (comme appeler des commandes externes, etc.) mais il s’agit justement d’opération externes et le programme se concentre sur sa tâche N.1: écrire du texte. Vim est donc plus léger et démarre plus vite qu’emacs.

Emacs et l’ergonomie

Le bépoiste s’intéressant plus ou moins à l’ergonomie, il constate assez vite, surtout s’il envisage d’acheter un clavier ergonomique, qu’emacs n’est pas vraiment optimisé dans ce domaine. Les touches Controle (C) et Méta (M) — sollicitée en appuyant sur escape ou par un Alt- — sont fréquemment sollicitées. Dans la folklorique guerre des éditeurs, les détracteurs d’emacs disent d’ailleurs que ce dernier est un acronyme pour Escape Meta Alt Control Shift… Les doubles raccourcis clavier du type C-X C-S sont plutôt la norme, et il est tentant de limiter les dégâts. L’usage de la souris est une solution, mais moyennement ergonomique. La communauté des bépoïstes a exploré plusieurs pistes:

Adapter des raccourcis clavier au bépo

Première solution, adapter les raccourcis standards, tout en continuant à utiliser les touches controle et Méta: c’est ce que proposent

Raccourcis clavier sans utiliser les touches Controle et Meta

C’est possible avec l’extension key-chord de David Andersson.

Émuler vim sur emacs

Cela peut sembler incongru: pourquoi ne pas utiliser directement vim? Parce que l’on peut préférer certains modes d’emacs, comme auctex pour latex, à leur équivalent vim.

  • Viper-mode est un émulateur de vi inclut dans emacs
  • Evil le dernier émulateur en date, très performant. Émule vim.

Combiner Evil et key-chord permet ainsi de bénéficier de la puissance des nombreuses fonctions simplifiant considérablement l’édition sous emacs sans jamais recourir, ou presque, aux touches Controle ou Meta…