200 cict.fr InterNetNews NNRP server INN 1.5.1 17-Dec-1996 ready (posting ok). Path: cict.fr!irit.fr!cerfacs!cnrm-meteo!univ-lyon1.fr!howland.erols.net!news-peer.sprintlink.net!news.sprintlink.net!Sprint!newsfeed.nacamar.de!newsfeed.eerie.fr!jussieu.fr!ext.jussieu.fr!not-for-mail From: Jerome Kalifa Newsgroups: fr.comp.applications.emacs Subject: [FAQ] fr.comp.applications.emacs Date: 17 Feb 1998 17:32:48 +0100 Organization: Acces regional Ile-de-France (Univ. Paris VI/VII) - France Lines: 388 Message-ID: NNTP-Posting-Host: balard.polytechnique.fr Mime-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit Mail-Copies-To: Jerome Kalifa X-Newsreader: Gnus v5.5/XEmacs 20.3 - "Vatican City" Xref: cict.fr fr.comp.applications.emacs:966 Salut, Voici la FAQ dans sa derniere mouture. Ca reste tres succinct et superficiel, mais bon, avec le temps... Vos contributions sont toujours vivement encouragees, les contributeurs sont cites a la fin du document. Ce fichier texte est dorenavant genere a partir d'un SGML-LinuxDoc, c'est Nat qui s'est charge de la premiere conversion en SGML, d'ailleurs c'est absolument genial ce systeme et je suis bien con de ne pas m'y etre mis plus tot. Au fait, tant que j'y pense, si quelqu'un a un bon syntax highlighting de SGML pour XEmacs, je suis preneur. Enfin, si vous souhaitez que cette FAQ soit postee avec la table des matieres au debut, dites-le moi. /-----------------------------------------------------------------/ FAQ fr.comp.applications.emacs Jérôme Kalifa Version 19980217 (BROUILLON) Emacs : questions fréquemment posées. 1. Introduction et généralités 1.1. Présentation, objectifs et mode de rédaction Ce document traite pour l´instant uniquement des thèmes et questions les plus classiques se rapportant à Emacs. Ce n'est en aucun cas la traduction des monumentales FAQ GNU Emacs et XEmacs originales. Je (Jérôme Kalifa) suis disposé à participer à cette tache si d´autres volontaires (quatre ou cinq me paraît un minimum) souhaitent s´investir aussi, étant donné le relatif peu de temps dont je dispose. N'importe qui peut (et y est fortement encouragé) contribuer à cette FAQ, il suffit de soumettre ses questions/réponses à Jérôme Kalifa qui se charge de l'assemblage. Cette FAQ est publiée régulièrement dans le groupe fr.comp.applications.emacs et est disponible à . Les noms des différents contributeurs sont regroupés dans la section "Remerciements" à la fin de ce document. 1.2. Notations Lorsque ce n'est pas explicité, le nom Emacs désigne à la fois les logiciels GNU Emacs (parfois appelé FSF Emacs) et XEmacs (anciennement Lucid Emacs). Les raccourcis claviers sont désignés grâce aux conventions de notation suivantes : · C-x : maintenir la touche Control enfoncée, puis appuyer sur la touche 'x' avant de les relâcher toutes les deux · C-x y : idem, puis appuyer sur la touche 'y' · M-x : comme avec Control (ci-dessus) mais utiliser Meta (touche spéciale MS-Windows, Alt ou 'diamant') en lieu et place de Control. Sur les claviers sans Meta utiliser Echappement · M-x nom_d'une_fonction : idem, puis relâcher les touches Meta et 'x', saisir le nom de la fonction, puis Entrée 1.3. Qu'est-ce qu'Emacs ? Emacs est un puissant éditeur de texte, programmable et extensible. C'est un riche environnement de programmation, de formattage de texte, de lecture d'article Usenet et de messages électroniques, c'est aussi un gestionnaire de fichiers et un client ftp très efficace, ainsi qu'un arpenteur web et un shell. Emacs dispose d'une interface graphique utilisateur, celle de XEmacs étant la plus evoluée, mais peut également fonctionner en mode texte, dans un simple terminal vt100, par exemple. Emacs est un logiciel libre, dont la redistribution obéit aux termes de la GNU Public License. 1.4. Qui développe Emacs? GNU Emacs est principalement l'oeuvre de Richard M. Stallman, fondateur du projet GNU et de la Free Software Fondation (FSF). XEmacs est un projet «dissident», basé sur la version de GNU Emacs à jour lors de son lancement, et plus particulièrement destiné aux machines à interface X11. Les développeurs s'y succèdent au cours du temps. Steven Baur est actuellement le responsable du développement de XEmacs. 2. Comment l'essayer ? 2.1. Systèmes concernés Emacs est bien entendu disponible pour les différents Unix, ainsi que sous NextStep pour GNU Emacs, sous MS-Windows 95/NT à la fois pour GNU Emacs (sous le nom de NTEmacs), et XEmacs (dont il n´existe pas encore de portage véritablement stable). Enfin, une vieille version (18.59) de GNU Emacs est compilée sous MacOS 7. 2.2. Quelle est la plus récente version diponible ? Au 17/2/98, la plus récente version stable de GNU Emacs était la 20.2, la dernière version de XEmacs était la 20.3. 2.3. Où obtenir de la documentation ? 2.3.1. Sous Emacs Si vous utilisez Emacs, vous trouverez énormement d'informations dans le menu « Help » situé en haut à droite. De plus, les combinaisons de touches C-h quelque_chose sont des fonctions d'aide. 2.3.1.1. Info Toute la documentation de base est livrée en standard avec Emacs et XEmacs dans le format Info. Aussi, il serait dommage de ne pas en profiter, surtout que surfer dans Info est encore plus facile que de surfer sur la Toile ! Info est le système de documentation standard du GNU. Il permet une lecture aussi bien linéaire que non-linéaire du texte, avec la notion de « noeud », qui est un bout de documentation. La documentation est organisée de manière arborescente mais où chaque noeud peut avoir un noeud précédent et un noeud suivant, qui ne sont pas forcément des noeuds frères. Pour accéder à Info, taper C-h i ou F1 i ou M-x info. L'écran devrait afficher dans le tampon « Info » des choses comme : * Info: (info). Documentation browsing system. * Emacs: (emacs). The extensible self-documenting text editor. * Gnus: (gnus). The news reader Gnus. Ces lignes sont des pointeurs vers des noeuds. Où que vous soyez dans la documentation, vous pouvez taper 'd' (comme « dir ») pour revenir sur cette page. Pour lire la documentation sur Emacs, mettre le curseur sur la ligne « * Emacs: ... » et taper Entrée : vous venez d'arriver dans la racine de l'arborescence (Top) de la documentation d'Emacs. Pour faire une lecture linéaire, utiliser Espace et Backspace pour avancer et reculer. La première ligne de chaque noeud indique le fichier dans lequel est ce noeud (File), le nom du noeud (Node), éventuellement les noeuds suivant (Next) et précédent (Prev) et le noeud père (Up) : · pour passer au noeud précédent, taper 'p' (« previous »); · pour passer au noeud suivant, taper 'n' (« next »); · pour passer au noeud père, taper 'u' (« up »); · pour passer dans un noeud fils (toujours en fin de noeud, après « Menu: », mettre le curseur dessus et taper Entrée ou m nom_du_noeud · pour quitter, taper 'q' ; · pour rechercher, taper M-s « (*note ...) » indique un lien vers un autre noeud : pour y accéder, mettre le curseur entre les parenthèses et taper Entrée ou f nom_du_noeud pour choisir le noeud. La touche 'l' permet de retourner au dernier (« last ») noeud. Taper C-h m ou M-x describe-mode pour plus de détails. 2.3.1.1.1. Enrichir Info · Copier les fichiers Info dans un répertoire destiné à accueillir ces documentations locale. Par convention : /usr/local/info · Copier /usr/info/dir dans /usr/local/info, le truc est que le nom de ce dossier soit dans la variable Info-directory-list · Editer /usr/local/info/dir et y supprimer tout ce qui suit le premier titre de Menu · Ajouter son propre titre sur le même modèle · Ajouter ses docs sur ce modèle : * package: (fichier). description ^ sans ^. ^ tabulations .info ni .gz · sauver puis, sous Emacs, accéder aux Info (s'ils étaient déjà affichés fermer le tampon (C-c C-k) puis le rouvrir (C-h i)). Les docs locales se retrouveront à la fin, c'est à dire que les deux fichiers sont CONCATENES à l'exception de l'entête qui n'est montrée qu'une fois. 2.3.2. Sur le Web · Cette introduction en français est chaudement recommandée aux débutants · Emacs : manuels et FAQ en anglais · XEmacs : site Web et documentations Notez que les documentations GNU Emacs sont souvent utiles à l'utilisateur XEmacs et vice-versa. 3. GNU Emacs et XEmacs 3.1. XEmacs est-il le successeur de GNU Emacs ? Non. XEmacs est présenté comme « la nouvelle génération », offre des fonctionnalités non disponibles sous GNU Emacs, mais les deux projets sont développés en parallèle, et ni la fin ni même le déclin de GNU Emacs ne sont prévisibles à moyen terme. 3.2. Pourquoi deux versions? Les aspirations et conceptions de Richard Stallman et celles des développeurs XEmacs ne sont apparement pas conciliables. La concurrence entre les deux logiciels est une excellente motivation pour les développeurs. En outre, la compatibilité GNU Emacs/XEmacs reste fort bonne. 3.3. Pourquoi préférer GNU Emacs ? Parce qu'il est sensiblement plus léger. Pour des raisons affectives face à ce monument historique et à la personnalité de Stallman. Et éventuellement pour des raisons techniques plus avancées. 3.4. Pourquoi choisir XEmacs ? Parce que ses développeurs sont beaucoup plus réceptifs aux souhaits des utilisateurs, parce qu'il est plus joli et que son interface graphique évoluée permet des choses impossibles sous GNU Emacs, et parce qu'il dispose de plus de packages fort utiles par défaut. Ou éventuellement, là encore, en fonctions de critères techniques que nous ne détaillerons pas ici. 3.5. Lequel est le plus répandu ? C'est difficile à dire, cependant il est clair qu'aucun des deux ne domine nettement sur l'autre. 4. Editer sous Emacs 4.1. Comment créer des caractères accentués ISO sur un clavier non- francophone et les afficher? Quatre solutions existent. 4.1.1. x-compose Si ce n'est pas déjà fait, placer dans un fichier de démarrage (.xinitrc, .xsession) la commande : xmodmap -e "keysym Alt_R = Multi_key". Pour insérer des caractères accentués il suffit dès lors d'utiliser une combinaison de touches Alt-droit, accent, lettre. Par exemple, alt-droit, '^', 'A' produira le A majuscule circonflexe. GNU Emacs n'affiche pas par défaut les caractères accentués. Il faut pour cela évaluer la fonction standard-display-european, par exemple en incluant directement (standard-display-european t) dans son fichier d'initialisation d'Emacs (souvent ~/.emacs, sous Unix). En revanche la saisie de ces caractères ne pose pas de problème. Sous XEmacs, c'est le contraire. Il affiche les caracteres accentués correctement par défaut. Pour qu'il gère la touche compose il faut cependant l'obliger à charger la bibliothèque x-compose, par exemple en plaçant (require 'x-compose) dans le fichier d'initialisation de XEmacs. 4.1.2. iso-accents Ajouter dans le /.emacs (standard-display-european t) et (iso- accents-mode t) Pour obtenir l'accent souhaité il suffit de taper ' (accent aigu) ou ` (accent grave) suivi de la lettre que l'on veut accentuer. Le c cédille s'obtient avec c , les trémas avec les guillemets, les accents circonflexes avec ^. Il existe aussi des combinaisons avec / Pour obtenir un signe simple ( ' ou bien ` ), il suffit de saisir le signe suivi d'un espace. 4.1.3. iso-insert Ajouter dans le /.emacs (require 'iso-insert) puis utiliser le préfixe (par défaut) C-x 8. Par exemple, pour taper un <, pour un '©', utiliser C-x 8 C, etc. Pour plus de détails, voir le fichier iso- insert.el de votre distribution. 4.1.4. set-language-environment Pour voir les accents sous GNU Emacs 20 : (set-language-environment 'latin-1) (set-input-mode (car (current-input-mode)) (nth 1 (current-input- mode)) 0) Ensuite, on peut avoir des caractères non accessibles au clavier en changeant de méthode de saisie avec la commande toggle-input-method, C-\fR (ou C-u C-\fR pour choisir sa méthode, notez la disponibilité de french-postfix et de french-prefix) 4.2. Comment obtenir un passage à la ligne automatique? M-x auto-fill-mode. La variable default-fill-column contient le nombre maximum de caractères par ligne. Utiliser (setq default-fill-column VALEUR) pour la modifier. Vous pouvez rajouter dans votre fichier .emacs pour lancer ce mode par défaut : (setq default-major-mode 'text-mode) (setq text-mode-hook 'turn-on-auto-fill) 4.3. Comment reformater un paragraphe en tenant compte de ce qui est spécifié par default-fill-column ? Se positionner dans le paragraphe et faire ESC-Q (ou tout autre combinaison liée à fill-paragraph-or-region). Attention, si une ligne commence par elle ne sera pas reformatée (mettre un espace avant pour qu'elle soit prise en compte). 5. Lecture du mail sous Emacs 5.1. Quel logiciel de mail utiliser sous Emacs ? En gros, vous devrez choisir entre Rmail, VM et Gnus. Rmail est encore beaucoup utilisé, notamment sous GNU Emacs, mais est dorénavant considéré comme obsolète. Parmi ses inconvénients majeurs, Rmail stocke et lit les messages dans un format non-standard (BABYL), contrairement à VM ou Gnus qui peuvent utiliser le format Unix standard. VM est un lecteur de mail très intuitif, riche et convivial. Gnus est également et avant tout le lecteur de news d´Emacs. Ceux qui le recommandent aussi pour la lecture du mail mettent en avant le confort que procurent la gestion et la présentation des mailing-lists, identique à celles des forums Usenet. 5.2. Comment se constituer un carnet d'adresses ? Récuperer le gestionnaire appelé BBDB . Autres sites : Erlangen , ? BBDB n'est pas fourni par défaut à la demande de son auteur. 5.3. Comment créer des raccourcis pour les adresses fréquemment utilisées? Utiliser define-mail-alias. Exemple : (define-mail-alias "Moi" "kalifa@cmapx.polytechnique.fr") 6. MULtinlingual Emacs (MULE) 6.1. Qu´est-ce que MULE? MULE, « MULtinlingual Emacs », est une extension d´Emacs permettant d´utiliser des jeux de caratères "exotiques" (par exemple, Chinois, Arabe, Hebreu, Ethiopien...). Pour voir un exemple (sous X11), taper M-x view-hello-file. MULE intègre les méthodes de saisie les plus populaires de chacune de ces langues. 6.2. Quelle version d´Emacs utiliser ? GNU Emacs 20.2 ou XEmacs 20.3. En principe, GNU Emacs 20.2 comprend MULE par défaut, contrairement à XEmacs 20.3 qui nécessite l´ajout de MULE. 6.3. Comment s'en débarrasser ? Le Multibyte Survival Kit permet d'employer un GNU Emacs 20.2 sans MULE. 7. Remerciements A Nat Makarevitch pour avoir converti la version initiale en SGML, pour l'hébergement sur linux-france, et pour ses corrections. Aux contributeurs, par ordre alphabétique : J.M.Calvez, T.Faucille, O.Galibert, E.Jacoboni, F.Jeanmougin, G.Ko, G.Lamiral, J.M.Vilarem, L.Wacrenier. -- Jerome Kalifa Centre de Mathematiques Appliquees, Ecole Polytechnique. 91128 Palaiseau Cedex, France. (33)169333981