Configurer Emacs

haypo

- Titre : Configurer Emacs

- Auteur : haypo

- Parution : 23 février 2003

- Mise à jour : 8 mars 2013

- Licence : Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright ® 2003 haypo. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- I. Introduction ♪

- II. Créer ses propres raccourcis clavier

- III. Avoir un clavier français

- IV. Afficher le numéro de ligne et de colonne

- V. Activer la sélection avec la touche SHIFT

- VI. Autres options intéressantes

- VI-A. Activer la roulette de la souris

- VI-B. Afficher l'heure

- VI-C. Beep d'erreur visuels

- VI-D. Activer la coloration syntaxique

- VI-E. Afficher la parenthèse correspondante

I - Introduction ♪

Emacs est un éditeur de texte très puissant, très complet, mais assez très complexe … Possédant énormément de fonctions, il est bon de bien le configurer pour accéder facilement aux fonctions les plus utilisées.

Les lignes de script données sont du code ELisp qui doit être écrit dans son fichier « ~/.emacs » (sous UNIX, ou « C:\.emacs » sous Windows). Elles peuvent également être exécutées directement dans un tampon « interactif lisp », pour cela créez un nouveau buffer, lancez la fonction « lisp-interactive-mode », écrivez votre ligne, et enfin exécutez-la avec C-j (CTRL+j). Le résultat est écrit sur la ligne suivante.

J'ai travaillé avec Emacs version 20 et 21, je ne sais pas si cela est valable pour les autres versions…

II - Créer ses propres raccourcis clavier

Pour travailler encore plus vite, il faut rapidement redéfinir les raccourcis clavier ou en créer de nouveaux. Pour cela, rien de plus simple : utilisez la fonction « global-set-key » ! Voici mes raccourcis :

;; Raccouris clavier
(global-set-key [f2] 'save-buffer)
(global-set-key [f3] 'find-file)
(global-set-key [f4] 'kill-this-buffer)
(global-set-key [f9] 'compile)
(global-set-key [(control z)] 'undo)
(global-set-key [(meta g)] 'goto-line)

Ce qui donne :

- F2 : enregistre le fichier (buffer) en cours ;

- F3 : ouvre un fichier ;

- F4 : ferme le fichier (buffer) en cours ;

- F9 : lance la compilation (utilise le fichier makefile du répertoire du fichier en cours) ;

- CTRL+Z : annulation (undo) ;

- META+G : va à la ligne demandée.

III - Avoir un clavier français

Rien de plus gênant que posséder un clavier AZERTY, et se retrouver avec la configuration QWERTY, ou ne pas avoir accès à tous les accents. Avec Emacs, ce n'est pas un problème, dès lors qu'il est bien configuré. Il suffit de sélectionner le bon environnement de langage (« latin-1 »), et d'activer les accents (fonction standard-display-european).

;; Clavier et affichage français (utilise l'ISO 8859)
(set-language-environment "latin-1")
(standard-display-european t)

IV - Afficher le numéro de ligne et de colonne

Il suffit de passer successivement en mode « nombre de colonne », puis en mode « nombre de ligne ».

;; Affiche le numéro de ligne et de colonne
(column-number-mode t)
(line-number-mode t)

V - Activer la sélection avec la touche SHIFT

Peut-être que vous arrivez à travailler avec la sélection de type Emacs (C-espace… M-w), mais moi non. Je ne jure que par la sélection « PC » grâce à la touche SHIFT. On reste appuyé sur cette touche, puis on se promène avec les touches fléchées. Pour cela, il faut activer la « sélection PC » :

;; Autorise la sélection à l'aide de la touche SHIFT
(custom-set-variables '(pc-selection-mode t nil (pc-select)))

VI - Autres options intéressantes

VI-A - Activer la roulette de la souris

Très pratique pour la lecture de texte, la roulette permet de facilement faire défiler le texte.

;; Active la roulette de la souris
(custom-set-variables( '(mouse-wheel-mode t nil (mwheel))))

VI-B - Afficher l'heure

Emacs sait afficher l'heure dans le format français (24h). Elle sera réactualisée après pression d'une touche.

;; Affiche l'heure au format 24h
(setq display-time-24hr-format t)
(setq display-time-day-and-date t)

Vous pouvez aussi utiliser la fonction « display-time ».

VI-C - Beep d'erreur visuels

Les beeps sonores sont vraiment très gênants, quel son horrible ! Emacs sait générer des beeps « visuels » : inverse les couleurs de la première et la dernière ligne par exemple. Très pratique quand l'ordinateur n'est pas équipé de buzzer :-)

;; Les 'beep' deviennent visibles (et non plus audibles)
(setq visible-bell t)

VI-D - Activer la coloration syntaxique

;; Activer la coloration syntaxique
(global-font-lock-mode t)

VI-E - Afficher la parenthèse correspondante

Très pratique quand on utilise beaucoup de parenthèses (formule de math, programmation C ou Lisp…) : Emacs sait afficher la parenthèse ouvrante correspondante à la parenthèse fermante (et inversement) :

;; Afficher la 'parenthèse correspondante'
(require 'paren)
(show-paren-mode)