Configuration Emacs

par Arnaud Lucas Arnaud.Lucas@cnes.fr


Le fichier .emacs placé sous la racine de votre compte, permet de configurer votre éditeur préféré. Ce fichier contient des instructions en LISP. Pas de panique, c'est très simple.

La force de cet éditeur est sa modularité : il est composé d'une multitude de sous-programmes. La première chose à faire est donc d'appeler quelques fonctions qui agrémentent la vie :

	(display-time) ; affiche l'heure

C'est toujours agréable d'avoir l'heure ! On notera au passage que toute instruction LISP est contenue dans des parenthèses. Les commentaires sont situés après un point-virgule. Le format affiché est le format américain (AM/PM), on peut le franciser par la ligne suivante :

	(setq display-time-24hr-format t)

En fait, on affecte la valeur vraie (t) à la variable display-time-24hr-format à l'aide de l'instruction setq.

La fonction suivante affiche le numéro de colonne:

	(column-number-mode)

et celle-ci les lettres accentuées:

	(standard-display-european 1)

Dans l'exemple précédent on remarquera la passage du paramètre 1 à la fonction standard-display-european. Une autre fonction très importante va nous permettre de modifier l'affectation des touches. C'est la fonction global-set-key qui prend en paramètres un touche et sa fonction correspondante. Ainsi,

	(global-set-key [f1] 'help)

affecte l'aide à la touche F1. Il faut ajouter A-,S- ou C- pour obtenir les combinaisons avec Alt, Shift ou Control.

	;; SHIFT-F10 : Sortie de emacs. 
	(global-set-key [S-f10] 'save-buffers-kill-emacs)

Un petit coup d'oeil dans l'aide en ligne permet de trouver le nom des fonctions. Les fonctions sont contenues dans des modules. Le module doit préalablement être chargé en mémoire pour pouvoir exécuter une fonction. Certains sont chargés par défaut, les autres le sont par la commande load.

	(load "hilit19")

Cette ligne permet de charger le module qui met en couleur les textes. La fonction hilit-repaint-command située dans ce module repeint le texte. Elle est appelée directement au chargement du fichier ou par la combinaison des touches S-C-l (SHIFT+CONTROL+l).

Voilà pour finir une partie de mon fichier .emacs..

;; un peu de couleurs

(load "hilit19")

;; les numéros de colonne pour le développeur
;; FORTRAN :-)

(column-number-mode) 

;; affichage de l'heure

(display-time)
(setq display-time-24hr-format t)

;; 
;; Redéfinition des touches
;; ------------------------
                    
;; F1 : Touche d'aide. 
 
(global-set-key [f1] 'help)        
 
;; F2 : Sauvegarde du tampon courant. 
 
(global-set-key [f2] 'save-buffer) 
 
;; F3 : Chargement d'un fichier. 
 
(global-set-key [f3] 'find-file)  
 
;; F4 : Fenêtre courante en plein ecran. 
 
(global-set-key [f4] 'delete-other-windows) 
 
;; F5 : Insertion de la marque de region. 
 
(global-set-key [f5] 'set-mark-command) 
 
;; F6 : Couper une région. 
 
(global-set-key [f6] 'kill-region) 
 
;; F7 : Copier une région. 
 
(global-set-key [f7] 'kill-ring-save) 
 
;; F8 :  Coller une région. 
 
(global-set-key [f8] 'yank) 
 
;; F9 : Editer le tampon courant en hexadécimal. 
 
(global-set-key [f9] 'hexl-mode) 
 
;; F10 : Tuer le tampon courant. 
 
(global-set-key [f10] 'kill-buffer) 

;; END : fin de ligne

(global-set-key [end] 'end-of-line)

;; HOME : début de ligne

(global-set-key [home] 'beginning-of-line)