Page suivantePage pr�c�denteTable des mati�res

4. Customiser Emacs

Toutes les customisations d'Emacs peuvent virtuellement �tre effectu� par du code Lisp. Vous pouvez modifier des variables qui influence la mani�re d'agir d'Emacs, ou vous pouvez ajouter de nouvelles fonctions � Emacs (ou effacer des fonction existantes, en les remplacant par les v�tres).

4.1 Customisation Temporaire

Lorsque vous vous habituerez � customiser Emacs, vous voudrez probablement le faire d'une mani�re temporaire. Si vous faites quelque chose de vraiment mauvais, vous pourrez sortir avec C-x C-c et le relancer. Une fois que vous aurez trouv� les changements qui vous plaisent, vous voudrez les rendre permanent, vous pourrez alors les ajouter � votre fichier .emacs pour qu'ils soient effectif � chaque lancement d'Emacs. Nous en parlerons dans la prochaine section.

Assignements de Variable

La plus simple des customisations � faire est de changer la valeur d'une variable d'Emacs. Le code pour effectuer cette action ressemble � celui-ci:

(setq nom-variable nouvelle-valeur)

O� nom-variable est le nom de la variable et nouvelle-valeurest la valeur que vous voulez affecter. (En langage Lisp, vous assignez une variable � une valeur.) La fonction setq est analogue � un op�rateur d'assignement(courament =) dans d'autres langages de programmations.

NOTE: Je passe sur beaucoup de d�tail dans un soucis de simplicit�. Vous me verez moi, ou d'autres utiliser la fonction Lisp set et m�me setq-default. Si vous �tes vraiment curieux, aller voir de quoi il retourne dans la r�ference Lisp d'Emacs.

Regarder cette ligne de mon fichier .emacs.

(setq-default transient-mark-mode t)

La Variable transient-mark-mode contr�le si une region doit �tre surlign� ou lorsqu'on la marque. Dans beaucoup d'application graphique, lorsque vous cliquez et d�placez le pointeur pour selectionner une partie du texte, elle devient surlign�e en mode inverse, ou dans une autre couleur. Emacs effectuera de m�me lorsque la variable transient-mark-mode aura une valeur non nulle d'affect�e.

QUELLE valeur?

D'accord. Petite digression. Beaucoup de langage de programmation ont des notions de valeurs vrai/fausse (true/false). En C/C++ une valeur est consid�r� vrai (true) si elle poss�de une valuer non nulle. En Perl, une valeur non nulle ou diff�rentes de z�ro est vrai (true). En Lisp, la m�me id�e s'applique, mais avec des noms et des symboles diff�rents.

Vrai (True) est courament �cris comme ceci t et faux (False) (ou Null) est �crit comme nil. Comme d'autres language, bien sur, toute valeur non nulle est consid�r� comme vrai.

Pour donner la description compl�te de ce que fait transient-mark-mode, vous pouvez utilisez l'aide en-ligne. Tapez C-h v ou M-x describe-variable puis transient-mark-mode. Si vous �tes fain�ant comme moi, vous pourrez tirez avantage de la compl�tion des noms de variables en utilisant la touche Tab Tapez juste les premi�res lettres et appuyez sur la touche Tab. Si vous avez tap� assez de lettre pour qu'Emacs puisse l'identifier, vous verez apparaitre le mot entier compl�t� pour vous.

Une autre variable que l'on utilise souvent est fill-column. Si vous dites � Emacs la largeur de l'�cran, il effectura la casse des lignes (et auto-fill-mode respecte cette valeur). Pour affecter une valeur absurde vous pouvez tapez:

(setq fill-column 20)

Mais cela ne fait rien maintenant. Vous devrez demander � Emacs d'�valuer l'expression que vous avez tap�. Pour l'�valuer, placer le point (le curseur) � la fin de l'expression et tapez C-x C-e, qui appelera la fonction eval-last-sexp. Lorsque vous ferez cela, notez que 20 (ou ce que vous avez tap�) est renvoy� dans la mini-buffer en bas de l'�cran. C'est la valeur de retour de l'expression que vous avez �valu�.

Juste pour montrer que cela marche, taper une phrase ou deux. Si vous avez le mode auto-fill-mode activ� (probablement pas) Vous remarquerez que le texte est cass� � la colonne 20. Autrement apr�s avoir tap� quelque chose, tapez M-q qui appelera la fonction fill-paragraph. Il effectura alors la casse du paragraphe.

Associations de fichiers

Vous pouvez configurer Emacs pour qu'il effectue des t�ches automatiques lorsque vous ouvrez des fichiers d'un certain type (comme certaines interfaces graphiques lance une application lorsque l'on clique sur un fichier pr�cis). Par exemple, Je veux qu'Emacs passe en mode text-mode chaque fois que j'ouvre un fichier avec l'extension .txt. Bon, il le fait d�j�. :-) Donc faisont le passer en mode text-mode lorsqu'il ouvre un fichier "README".

(setq auto-mode-alist (cons '("README" . text-mode) auto-mode-alist))

Ouch?

Sans plonger dans des flots de programmation Lisp que vous n'avez pas besoin de connaitre (mais cela ne vous fera pas de mal d'en apprendre plus), laisser juste vous expliquer que la variable auto-mode-alist contien une liste de paires . Chaque paires contient une expression r�guli�re et un nom de mode Emacs. Si dans un fichier que vous ouvrez correspond � l'une des expressions r�guli�res (dans ce cas, la chaine README) Emacs lance automatiquement le mode que vous avez sp�cifi�.

La syntaxte amusante ;-) au dessus est du au fait que nous rajoutons une paire � ce mode. Vous ne voulez surement pas juste assigner � auto-mode-alist une valeur sans vous assurer que les valeurs contenues ne sont pas perdue.

Et si vous voulez qu'Emacs passe dans le mode html-helper-mode chaque fois que j'ouvre un fichier que se termine par .html ou .htm, je n'ai qu'� ajouter � mon fichier .emacs:

(setq auto-mode-alist (cons '("\\.html$" . html-helper-mode) auto-mode-alist))
(setq auto-mode-alist (cons '("\\.htm$"  . html-helper-mode) auto-mode-alist))

Les possibilit�s sont vraiment sans fin.

4.2 Utiliser un fichier .emacs

Apr�s avoir pass� quelque temps avec Emacs et avoir une id�e de base de ce que l'on peut customiser, vous voudrez probablement changer quelques petites options de mani�re permanente. (ou au moins jusqu'� ce que vous ayez chang� d'avis. Si vous utiliser Emacs tout les jours, vous trouverez que votre fichier .emacs grossis de plus en plus. C'est bon puisque cela signifie que vous avez compris comment faire fonctionner Emacs de la mani�re dont vous voulez. C'est triste de voir que peu de programmes permettent cette approche.

Dans le cas ou vous n'auriez pas encore devin�, chaque fois que vous lancez Emacs, il cherche dans le fichier .emacs dans votre r�pertoire home. Votre fichier .emacs est le fichier o� tout le code que vous voulez lancer automatiquement et toutes sortes de customisations que nous avons vu pr�cedement.

Un autre exemple de mon fichier .emacs:

(setq inhibit-startup-message t)

La varialbe inhibit-startup-message contr�le si Emacs doit afficher le message de bienvenu ou non. Apr�s un certain temps, je devenais malade en le voyant ( car je savais o� trouver l'aide et autres trucs) donc j'ai cherch� une mani�re de le d�sactiver.

Comme exercice, essayer de cr�er un fichier .emacs par vous m�me et en ajoutant cette ligne. Sortez alors d'Emacs, et relancer le. Vous ne devriez plus voir le message de bienvenue.

Souvent, lorsque vous lisez quelque chose � propos d'un mode Emacs(ou d'un package), la documentation sugg�rera d'ajouter des lignes � votre fichier .emacs pour pouvoir faire fonctionner le package ou le mode d'une mani�re pr�cise.

La FAQ GNU Emacs (C-h F) contient quelques unes des options concernant le fichier .emacs que vous trouverez peut-�tre utile.

4.3 Le Package Customis�.

Au fur et � mesure du d�veloppement d'Emacs en popularit� et son �volution, quelques un ont dis "il y doit y avoie une meilleure mani�re de permettre aux novices de customiser Emacs." Et customize �tait n�.

Customize procure aux utilisateurs une mani�re plus intuitive de configurer des parties d'Emacs. Pour l'essayez, visitez le sous-menu Customize de votre menu Help , ou tapez M-x customize.

Customize groupe la configuration dans des groupes logiques, tels que ``Editing'', ``Programming'', ``Files'', et ainsi de suite Quelques groupes contiennent des sous-groupes.

Si vous effectuer des changements en utilisant l'interface Customize, Emacs sauvegardera vos changements dans votre fichier .emacs C'est assez pratique, car cle code ajout� peut-�tre facilement inspect� (et chang�)

Je n'utilise pas l'interface Customize, je ne peut donc pas vous en dire plus..

4.4 L'affichage X Windows

Comme n'importe quelle application X, Emacs respecte vos ressources X. Cela signifie que vous pouvez contr�ler les couleurs initiales, (geometrie), et d'autres choses sp�cifiques que vous pouvez faire avec un xterm ou nxterm, ou autre.

Voici une partie utile de mon fichier ~/.Xdefaults:

emacs*Background: DarkSlateGray
emacs*Foreground: Wheat
emacs*pointerColor: Orchid
emacs*cursorColor: Orchid
emacs*bitmapIcon: on
emacs*font: fixed
emacs.geometry: 80x25

Voyez les pages man Xpour plus de d�tails � propos des ressources X.

Chris Gray ( cgray4@po-box.mcgill.ca) dis aussi:

Dans la debian, le fichier ~/.Xdefaults ne semble pas �tre utilis�. N�anmoins, les utilisateurs de la debian peuvent mettre ce que vous avez mis plus haut dans le fichier /etc/X11/Xresources/emacs et ils auront toutes les belles couleurs comme si ils utilisaient une RedHat.


Page suivantePage pr�c�denteTable des mati�res

Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:17