Page suivantePage pr�c�denteTable des mati�res

3. Les modes d'Emacs

Les modes d'Emacs proposent diff�rentes caract�ristiques et possibilit�s qui peuvent �tre activ�e(ou configur�e, bien sur) pour �tre utilis�e dans diff�rentes circonstances. Ces modes aident a transformer l'�diteur (Emacs) pour en faire un outil utilisable autant pour �crire une documentation, programmer dans diff�rents langages (C, C++, Perl, Java, et bien d'autres), cr�er une page Web, envoyer des emails, lire des news, garder une traces des ?appointements??, et m�me jouer.

Les modes d'Emacs sont simplement des librairies de code Lisp qui �tendent, modifient, am�liorent Emacs d'une certaine mani�re.

3.1 Modes majeur vs. modes mineur

Il existe deux types de modes diff�rents disponible: le mode majeur et le mode mineur. La distinction n'est pas facile � voir sans avoir utilis� certains de ces modes, mais tracons en les grands traits.

Seul un mode majeur peut �tre actif � un instant donn�. Les modes majeur sont des modes sp�cifiques � un langage, ou � une tache, tandis que les modes mineurs sont des petits utilitaires moins sp�cifique qui peuvent �tre utilis�e avec nombre de taches diff�rentes.

Cela ressemble � un r�sum�, donc voici un exemple. Il existe un que j'utilise assez souvent lorsque j'�cris en format texte brut. Ce mode est appel� text-mode. Ce mode a �t� cr�e pour �crire du texte brut comme par exemple un fichier README. Il reconnait les mots et les paragraphes et normalement fait ce que je veux lorsque j'utilise les touches de direction standard

Quand j'�cris un texte qui sera utilis� par d'autres personnes, je veux courament qu'il ait un aspect correct. Il doit �tre correctement cass�, etc... Pour activer le cassage du texte, je met en place le mode mineur auto-fill Ce mode essaye de faire les bons choix quand je tape et que je valide � la fin d'une ligne. Le fait est qu'�tant donn� que c'est un mode mineur, on peut l'utiliser avec beaucoup de mode majeur diff�rents. Mes notions de bon choix � effectuer quand j'atteind la fin d'une ligne sont diff�rentes que je soit dans le cas o� je suis en mode texte text-mode du cas o� je suis en java java-mode par exemple.Je ne veux pas que mon code java soit cass� comme un texte anglais. Mais je veux que les commentaires de mon code Java soit cass�. Le mode autofill est assez bon pour deviner quoi faire.

Les auteurs des diff�rents mode d'emacs ont fait du bon travail en impl�mentant les caract�ristiques mineures devant �tre dans des modes mineurs dans ces m�mes modes mineurs!

Si vous regardez la composition d'un �cran d'Emacs, vous remarquerez que le mode ligne identifie le mode dans lequel se situe Emacs. Dans ce cas c'est le mode qui se nomme Lisp Interaction, c'est � dire le mode par d�fault. Il est r�element utile seulement lors de la frappe de code Lisp. (Mais puisque Emacs est �cris en Lisp, pourquoi pas ?)

3.2 Les Modes de Programmations

D'abord et avant tout, Emacs a �t� concu par des programmeurs, pour des programmeurs (NdT: et des traducteurs...). Il existe des modes de tr�s grande qualit� disponible pour chaqu'un des langages de programmation auquel vous pouvez pensez (et m�me d'autres moins populaires). Je ne peux que d�crire brievement quelqu'uns d'entre eux ici. La plupart des modes de programmations partagent certaines caract�ristiques. Commun�ment, Il font la plupart des choses suivantes:

En plus, il existe des modes non sp�cifiques � un langage qui aide � la r�alisation de t�ches commune � plusieurs langages. Ces t�ches sont par exemple l'interfacage avec un contr�leur de version (RCS,CVS) , l'ajout automatique de commentaires, la cr�ation de makefile, la mise � jour des fichiers de changement(ChangeLog), etc...

Quand vous ajouter tout ces modes ensembles, et consid�rer la maturit� et la stabilit� du code d'Emacs, vous pouvez le comparer d'une mani�re plaisante � des applications IDE(Intergrated Developpement Environnement) pour des langages comme C++ et Java. Et, en plus, il est gratuit/libre.

C/C++/Java

A cause de leur syntaxte, le C, le C++ et le java sont assez simiaires, il existe donc un seul mode majeur pour g�rer les trois langages (comme l'objective-C et l'IDL). C'est un package tr�s mature et complet et il est inclu dans la distribution d'Emacs. Ce mode est nomm� cc-mode ou CC Mode

Pour plus de d�tails, ou pour t�l�charger une nouvelle version, aller � http://www.python.org/emacs/.

Perl

Il existe v�ritablement deux modes pour �diter du code Perl dans Emacs. Le premier est nomm� perl-mode (comme vous pouviez l'�sp�rer, et le second se nomme cperl-mode. Je n'ai pas de bonnes raisons pour lesquelles il existe deux modes (la documentation ne le dit pas, mais il semblerais que perl-mode soit le mode original pour �diter du code Perl dans Emacs. il semble avoir moins de possibilit�es que cperl-mode et la reconnaisance de certaines possibilit�es �tranges du langage manque.

Personnalement, j'utilise et je recommande cperl-mode qui semble �tre mieux maintenu et poss�dent toutes les caract�ristiques que je demande. Vous pouvez trouver la derni�re version ici: ftp://ftp.math.ohio-state.edu/pub/users/ilya/emacs.

Mais ne prenez pas mes mots comme paroles d'�vangiles: essayez les deux et prenez celui qui vous convient le mieux.

Python

Python(un autre langage de script tr�s populaire poss�de aussi un mode Emacs. Pour autant que je puisse dire, il n'est pas distribu� avec GNU Emacs, mais est distribu� avec XEmacs. Il fonctionne malgr� tout assez bien avec les deux �diteurs.

Vous pouvez obtenir le python-mode � partir du site web officiel de Python http://www.python.org/emacs/python-mode/.

Les autres

Il existe beaucoup d'autres modes d'�ditions disponibles pour aider les programmeurs. De tel mode vous aideront � executer des t�ches comme :

Et bien plus. Voyez la derni�re section de ce document pour plus d'informations pour trouver d'autres modes et des ajouts.

3.3 Authoring

Les modes d'Emacs ne sont pas limit� aux seuls d�veloppeurs. Les personnes �crivant de la documentation peuvent b�n�ficier d'un vaste ensemble de modes Emacs.

Correction Orthographique (mode ispell)

Les auteurs de beaucoup de type de document on toujours besoin de correction orthographique. Si vous avez GNU ispell , vous pouvez taper M-x ispell et corriger le buffer courant. Si ispell trouve des mots qu'il ne connait pas, it affichera la liste des remplacements possible et vous laissera en choisir un (ou aucun) de ceux-ci. Il est �quivalent � bien des outils de correction orthographique de logiciel non-libre.

HTML (mode html-helper)

Si vous vous retrouver � �crire des fichiers en HTML une fois (et m�me beaucoup) vous voudrez peut-�tre tester html-helper-mode. Il est disponible � l'adresse http://www.santafe.edu/~nelson/tools/ avec une documentation.

Comme son nom le sugg�re, html-helper-mode offre beaucoup de fonctions pour aider ceux qui �crivent du code HTML � la main, � l'ancienne mode.

TeX (tex-mode)

Lorsque vous �crivez des documents en TeX, il est souvent utile d'obtenir Emacs certains surlignage ou coloration pour les /, les accolades, et d'autres caract�res. tex-mode s'occupera de cela pour vous.

Bien que je n'�crivent plus en TeX directement maintenant, lorsque je le faisais ce mode a �t� assez utile en transformant mon source Tex en un source un peu plus lisible.

SGML (sgml-mode)

Le document que vous �tes en train de lire a �t� �cris en SGML (et probablement converti vers le format dans lesquel vous �tes en train de lire). sgml-mode procure toute les bases pour un document SGML: validation, surlignage, �tiquetage avant/arri�re, et bien d'autre choses. C'est une des parties standard d'Emacs.

3.4 Autres Modes

Bien sur, il existe des tas d'autres modes pratique pour rendre la vie facile. Voici juste un panel des plus populaire.

Le Contr�le de Version (mode vc)

Le mode vc s'interface avec les plus populaires contr�leurs de version(RCS, SCCS, CVS) pour simplifier le contr�le des fichiers, contr�ler les release, etc... C'est un mode standard d'Emacs, document� dans la doc d'Emacs.

Le Mode Shell

Pourquoi passer vers une autre fen�tre X, ou une console virtuelle, juste pour lancer quelques commandes? Faites le a partir d'Emacs, et garder vous des probl�mes. :-)

M-x shell lancera un shell � l'interieur d'un buffer Emacs. Vous pourrez effectuer la plupart des t�ches que vous effectuer sur un shell classique (a par des programmes tournant en plein �cran tel que vi ou pine car Emacs dialogue avec votre shell r�el derni�re vous...

Cela fait aussi partie des standard d'Emacs, donc vous pourrez le trouver document� dans la doc d'Emacs.

Telnet et FTP

Pourquoi passer vers une autre fen�tre ou une console virtuelle juste pour lancer telnet ou ftp? Faites le avec Emacs, et gagner du temps. (Vous avez remarqu� la ressemblance ?)

Comme vous pouvez lancer un shell avec Emacs, vous pouvez aussi lancer telnet et ftp. Essayez M-x telnet ou M-x ftp pour en faire l'experience. voyez la documentation pour tous les d�tails.

Pages Man

Pourquoi passer vers une autre fen�tre ou une console virtuelle juste pour lire une page man? Faites le avec Emacs, et gagner du temps. (Promis, c'est fini.)

Comme vous pouvez lancer un shell avec Emacs, vous pouvez aussi lire les pages de manuel. Essayez M-x man pour en faire l'experience. voyez la documentation pour tous les d�tails.

Ange-FTP

Pour citer la documentation d'ange-ftp

Ce package tente de rendre accessible des fichiers et des r�pertoires en utilisant FTP � l'int�rieur d'Emacs aussi transparent que possible. Un sous ensemble du syst�me de gestion de fichier a �t� �tendu pour utiliser FTP.

Cela signifie que vous pouvez traiter des fichiers de machines distantes comme si elle �taient situ� sur votre ordinateur. Donc si vous devez �diter un fichier sur diff�rents ordinateurs, demander � Emacs de l'ouvrir (en utilisant une syntaxte diff�rente pour le chemin) et vous occuper des d�tails de connection et de r�cuperer le fichier. Vous pourrez alors sauver le fichier via C-x C-s, et ange-ftp interceptera la sauvegarde et �crira le fichier sur la machine distante.

La syntaxte diff�rente pour le chemin se pr�sente ainsi. Un fichier nomm� "monfichier", dans un r�pertoire "utilisateur", sur une machine nomm�e :"ma.machine.org" peut-�tre obtenu en ouvrant le fichier (C-x f)

/utilisateur@ma.machine.org:~utilisateur/monfichier

Etant un package standard de la distribution, vous pouvez aussi consulter la documentation pour tous les d�tails.

Merci � Etienne Grossmann ( etienne@anonimo.isr.ist.utl.pt) pour l'exemple ci-dessus.


Page suivantePage pr�c�denteTable des mati�res

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