Emacs

Description générale

Editeur de texte

Fonctionnalités générales

Emacs est un éditeur de texte multiplateforme qui permet de créer, d'éditer et de traiter presque tous types de documents texte au travers de très nombreux modes d'édition : développement dans plusieurs langages (coloration syntaxique, édition dirigée par la syntaxe en C, Perl, Python, HTML, SGML, XML, TeX/LaTeX et des dizaines d'autres), mais aussi le shell (et ses commandes), la lecture/écriture de mail/news, agenda, voire navigation web. Il a une très longue histoire (premières versions vers 1985). Il en existe même plusieurs déclinaisons, les principales étant gnuemacs et XEmacs.

Il est conçu à partir d'un interpréteur Lisp (elisp pour Emacs LISP) qui lui permet d'être très facilement programmable donc :

d'être facilement paramétrable et donc personnalisable (le fichier de configuration étant un simple fichier texte) ;
de pouvoir réaliser des tâches complexes en mode non interactif ;
d'enregistrer puis d'automatiser des traitements répétitifs (macros).

Comme son concurrent direct Vim, il possède les fonctions habituelles d'un éditeur de texte comme :

multi-fenêtrage, multi-fichiers ;
auto-complétion et auto-indentation ;
comparaison visuelle de 2 fichiers ;
coloration syntaxique ;
replis de portion de texte ;
recherche et substitution de texte par expressions régulières ;
possibilité de définir des abréviations ;
système de plugins ;
fonction défaire/refaire multi-niveau ;
correction orthographique.

Bien qu'ayant des objectifs multiples, il ne peut être utilisé comme traitement de texte WYSIWYG, mais il contient de nombreux outils permettant de réaliser de l'édition de texte sophistiquée (qui ont été ensuite inclus dans d'autres outils) comme par exemple :

Le "chercher/remplacer" par expressions rationnelles (query-replace-regexp ) ;
Le "chercher/remplacer" dans une multitude de fichiers (tags-query-replace) ;
La "sélection rectangulaire" (kill-rectangle) ;
La lecture de courrier électronique (gnus ou rmail) ;
L'édition de fichiers à distance via un protocole réseau (ftp, ssh, etc via le mode tramp ou ange-ftp) ;
Il permet de faire le lien entre un débogueur (gdb) et le code source (C ou C++) en cours d'édition.

Domaine

Mot clé

Type de la ressource

Méthode d'accès des clients

Non Applicable

Méthode d'authentification des clients

Aucune

Cycle de vie du projet

Non Applicable

Date de début du projet

Etablissement du Référent

UM

Unité du référent

LIRMM