Vérifié contenu

Emacs

Sujets connexes: Logiciel

À propos de ce écoles sélection Wikipedia

Enfants SOS bénévoles ont aidé à choisir des articles et faites autre matériel pédagogique enfants SOS a regardé des enfants en Afrique depuis quarante ans. Pouvez-vous aider dans leur travail en Afrique ?

Emacs
Emacs logo
Emacs-screenshot.png
GNU Emacs 22.0.91.1 avec plusieurs tampons et la coloration syntaxique pour LaTeX, C # et C .
Auteur (s) d'origine Richard Stallman
Développeur (s) le projet GNU
Première publication Il ya 1976 ans, 36-37
Version stable 23,3 [ edit] (10 Mars 2011 (2011-03-10)) [ ±]
Preview Non [ ±]
Écrit en C et Emacs Lisp
Système d'exploitation Multiplate-forme
Disponible en Anglais
Type éditeur de texte
Licence GNU General Public License
Site Web http://www.gnu.org/software/emacs/

Emacs est une classe de riches en fonctionnalités éditeurs de texte, généralement caractérisés par leur extensibilité. Le développement a débuté au milieu des années 70 et, à partir de 2008, est toujours actif. Emacs éditeurs de texte sont les plus fréquentées par les utilisateurs informatiques techniquement compétents et programmeurs informatiques. La version la plus populaire d'Emacs est GNU Emacs, une partie du projet GNU , ce qui est communément appelé simplement "Emacs".

Le manuel de GNU Emacs décrit comme «extensible, personnalisable, auto-documenté, en temps réel éditeur d'affichage." Il est aussi le plus porté des implémentations de Emacs. En Mars 2008, la dernière version stable de GNU Emacs est une version 22.2. L'autre grand Emacs est XEmacs.

La version originale d'Emacs est un ensemble de macros de l'éditeur pour le Éditeur TECO. Il a été écrit en 1976 par Richard Stallman , d'abord avec Guy L. Steele, Jr .. Il a été inspiré par les idées de TECMAC et TMACS, une paire de rédacteurs TECO-macro écrit par Steele, Dave Lune, Richard Greenblatt, Charles Frankston, et d'autres. En dehors de GNU Emacs, une autre version d'Emacs est en cours d'utilisation XEmacs, qui est un fork de GNU Emacs a commencé en 1991. XEmacs est resté la plupart du temps compatible et continue à utiliser le même langage d'extension, Emacs Lisp, comme GNU Emacs. Presque tous GNU Emacs et XEmacs sont écrits en Emacs Lisp, donc l'extensibilité des fonctionnalités d'Emacs est de profonde.

Dans Unix culture, Emacs est l'un des deux principaux prétendants à la traditionnelle guerres de l'éditeur, l'autre être vi. Le mot «emacs» est souvent au pluriel comme emacsen, par analogie avec boxen (lui-même utilisé par analogie avec bœufs) et VAX.

Histoire

Emacs développement a commencé à la MIT AI Lab au cours des années 1970. Avant son introduction, l'éditeur par défaut sur le Incompatible Timesharing System (ITS), le système d'exploitation sur l'AI Lab PDP-6 et PDP-10 ordinateurs, était un éditeur de ligne connu sous le nom Editeur de texte et Corrector (TECO). Contrairement à la plupart des éditeurs de texte modernes, TECO a modes distincts que l'utilisateur soit utilisé pour ajouter du texte, modifier le texte existant ou afficher le document. Saisie de caractères dans TECO ne pas placer ces caractères directement dans un document; il fallait écrire une série d'instructions dans le langage de commande TECO lui disant de saisir les caractères requis, au cours de laquelle le texte édité ne était pas affiché sur l'écran. Ce comportement est similaire au programme éd.

Richard Stallman a visité le Stanford AI Lab en 1972 ou 1974 et a vu "E" rédacteur en chef du laboratoire, écrit par Fred Wright. L'éditeur avait une interface intuitive Comportement WYSIWYG comme il est presque universellement utilisé par les éditeurs de texte modernes, qui ont impressionné Stallman. Il est retourné au MIT où Carl Mikkelsen, un pirate à l'AI Lab, avait ajouté un affichage + édition mode combiné appelé «Ctrl-R" pour TECO, permettant l'affichage de l'écran pour être mis à jour à chaque fois que l'utilisateur a entré une combinaison de touches. Stallman réimplémentée ce mode pour fonctionner efficacement, a ensuite ajouté un macro fonction pour le mode écran d'édition de TECO, permettant à l'utilisateur de redéfinir toute frappe d'exécuter un programme TECO.

Une autre caractéristique de E qui TECO manquait, ce était l'édition à accès aléatoire. Depuis la mise en œuvre initiale de TECO a été conçu pour une bande de papier d'édition dans le PDP-1, ce est un éditeur de pages séquentielle. Édition typique ne peut se faire sur une page à la fois, dans l'ordre des pages dans le fichier. Pour fournir un accès aléatoire dans Emacs, Stallman a décidé de ne pas adopter l'approche de E de structurer le fichier pour l'accès à la page-aléatoire sur le disque, mais plutôt modifié TECO à traiter de gros tampons plus efficacement, puis a changé sa philosophie de gestion de fichier pour lire, modifier et écrire le fichier entier comme un seul tampon. Presque tous les éditeurs modernes utilisent cette approche.

La nouvelle version de TECO était instantanément populaire à l'AI Lab, et bientôt il a accumulé une grande collection de macros personnalisées, dont les noms sont souvent retrouvés dans «MAC» ou «MACS», qui se tenait pour "macro". Deux ans plus tard, Guy Steele a pris sur le projet d'unifier les diverses macros trop en un seul ensemble. Après une nuit de piratage conjointe de Steele et Stallman, ce dernier a terminé la mise en œuvre, qui comprenait des installations pour l'extension et la documentation du nouvel ensemble macro. Le système résultant a été appelé Emacs, qui était de "Modification de macros". Une version alternative est que EMACS représentait "E" avec des macros, une fouille à l'absence de E d'une capacité macro. Selon Stallman, il prit le nom Emacs "parce ne était pas en cours d'utilisation comme une abréviation sur les STI à l'époque. "(Il a également été noté que" Emack & Bolio de "était le nom d'un magasin de crème glacée populaire dans Boston , à distance de marche du MIT. Un programme de formatage de texte utilisé sur les STI a été nommé plus tard par Bolio Dave Lune, qui fréquentait ce magasin. Cependant, Stallman ne aimait pas que la crème glacée, et ne savait même pas de celui-ci au moment de choisir le nom de «Emacs»; cette ignorance est la base d'une pirate koan, Emacs et Bolio).

Stallman a vu un problème dans trop de personnalisation et de facto bifurcation et de définir certaines conditions d'utilisation. Il écrivit plus tard:

"EMACS a été distribué sur une base de partage communautaire, ce qui signifie toutes les améliorations doit être donné de nouveau à moi d'être incorporé et distribué."

La version originale d'Emacs, comme TECO, couru uniquement sur la ligne PDP d'ordinateurs. Son comportement était assez différent de TECO à être considéré comme un éditeur de texte dans son propre droit. Il est rapidement devenu le programme d'édition norme sur ses. Il était également porté de ITS à la Tenex et TOPS-20 systèmes d'exploitation par Michael McMahon, mais pas Unix, initialement. Autres contributeurs à les premières versions d'Emacs comprennent Kent Pitman, Earl Killian, et Eugene Ciccarelli. En 1979, Emacs était l'éditeur utilisé par la plupart des gens dans le laboratoire d'IA du MIT et de son laboratoire informatique.

D'autres implémentations début

De nombreux éditeurs Emacs-comme ont été écrits dans les années suivantes pour d'autres systèmes informatiques, y compris SINE (Sine ne est pas EMACS), EINE ("Eine Is Not EMACS») et ZWEI ("ZWEI été EINE départ", pour la Machine Lisp), qui ont été écrit par Michael McMahon et Daniel Weinreb. ("Eine" et "zwei" sont l'allemand pour «un» et «deux») de Weinreb EINE était les premiers écrits en Lisp Emacs. En 1978, Bernard Greenberg écrit Multics Emacs à Cambridge systèmes d'information de laboratoire de Honeywell. De nombreuses versions d'Emacs, y compris GNU Emacs Lisp, plus tard adopté comme langage d'extension.

Le premier éditeur Emacs comme pour fonctionner sur Unix était Gosling Emacs, écrit en 1981 par James Gosling (qui plus tard a inventé News et le langage de programmation Java ). Il a été écrit en C et, notamment, utilisé un langage avec une syntaxe Lisp comme dit MOCKLISP comme un langage d'extension. En 1984, il était logiciel propriétaire.

GNU Emacs

En 1984, Stallman a commencé à travailler sur GNU Emacs pour produire un alternative du logiciel libre de Gosling Emacs; Initialement, il était basé sur Gosling Emacs, mais Stallman remplacé l'interprète MOCKLISP à son cœur avec un vrai interpréteur Lisp, ce qui a entraîné le remplacement de la quasi-totalité du code. Il est devenu le premier programme publié par la naissante projet GNU . GNU Emacs est écrit en C et fournit Emacs Lisp (lui-même mis en œuvre en C) comme un langage d'extension. Version 13, la première version publique, a été faite le 20 Mars, 1985. La première version largement distribué de GNU Emacs était 15,34, qui est apparu plus tard en 1985. Versions 2-12 ne ont jamais existé. Les versions antérieures de GNU Emacs avaient été numérotées "1.xx», mais quelque temps après la version 1.12 a été décidé de laisser tomber le "1", comme on le pensait le nombre majeur ne changerait jamais.

GNU Emacs a ensuite été porté sur Unix. Comme il avait plus de fonctionnalités qui Gosling Emacs, en particulier un Lisp complet comme langage d'extension, il est vite remplacé Gosling Emacs comme de facto éditeur Emacs sous Unix.

Jusqu'en 1999, le développement GNU Emacs était relativement fermée, au point où il a été utilisé comme un exemple du style de développement "Cathédrale" dans La cathédrale et le bazar. Le projet a depuis adopté une liste de diffusion publique au développement et anonyme L'accès CVS. Développement se déroule dans un seul tronc de CVS, qui était à la version 23.0.60 à la mi-2008.

Richard Stallman est resté le mainteneur de GNU Emacs travers la plupart du temps, mais a pris plusieurs pauses. Le dernier persiste et a commencé à 2008, lorsque l'entretien a été remis à Stefan Monnier et Chong Yidong.

l'histoire de sortie

Version Date de sortie Des changements importants
22,2 Mar 26, 2008 Nouveau support pour le bazar, Mercurial, Monotone, et Git systèmes de contrôle de version
Nouveaux modes majeurs pour l'édition CSS, fichiers de style Vera, Verilog, et BibTeX
Amélioration du support de défilement en mode image
22,1 2 juin 2007 Soutien à la boîte à outils graphique GTK +
Le support du glisser-déposer sur X
Soutien pour les images, barre d'outils, et des infobulles
Support de l'Unicode
Prise en charge de Mac OS X
21,1 20 octobre, 2001 Soutien pour les couleurs d'affichage et certains autres attributs sur les bornes
Construit en défilement horizontal
Le support de son
support de la souris de roue
Amélioration bar disposition du menu
20,1 17 septembre, 1997 Support multilingue
19,28 15 septembre, 1997 Support de plusieurs cadres en utilisant le système de fenêtrage X
Nouvelle interface pour les systèmes de contrôle de version, appelée VC
Nouveau mode de hexl, qui est un mode d'édition hexadécimal
18,24 2 octobre 1986
17,36 20 décembre, 1985 Les numéros de version de fichier de sauvegarde
16,56 15 juillet, 1985
15,10 11 avril, 1985
13,0? 20 mars, 1985

XEmacs

À partir de 1991, Lucid Emacs a été développé par Jamie Zawinski et d'autres à Lucid Inc., basée sur une première version alpha de GNU Emacs 19. Les bases de code dès divergé, et les équipes de développement distincts ont renoncé à essayer de les fusionner en un seul programme. Ce était l'un des plus célèbres au début fourches d'un logiciel libre. Lucid Emacs a depuis été renommé XEmacs; il reste la deuxième variété la plus populaire d'Emacs, après GNU Emacs.

Autres fourchettes et clones modernes

Beaucoup d'autres dérivés des Emacs GNU ont été faites, comme une version japonaise pour MS Windows appelé La fourche Meadow Steve Young de XEmacs appelé SXEmacs, et une version qui se concentre sur l'intégration avec l'interface utilisateur d'Apple Macintosh appelé Aquamacs.

Clones Emacs, ne reposant pas sur GNU Emacs code source, sont plus nombreux. Une motivation pour les clones d'écriture était que GNU Emacs était initialement prévu à des ordinateurs avec un appartement espace d'adressage 32 bits, et au moins une MiB de RAM. À une époque où ces ordinateurs ont été considérés comme haut de gamme, ce qui a laissé une ouverture pour les petits réimplémentations. Certains clones modernes notables incluent:

  • MicroEmacs, écrit à l'origine par Dave Conroy et développé par Daniel Laurent, qui existe dans de nombreuses variantes. L'éditeur est utilisé par Linus Torvalds .
  • mg, appelé à l'origine (et MicroGNUEmacs mg2a tard), une émanation du domaine public de MicroEmacs destinés à ressembler davantage à GNU Emacs. Maintenant installé par défaut sur OpenBSD .
  • NotGNU, un petit, rapide, la mise en œuvre de freeware pour DOS, Win16, Win32 et Linux par Julie Melbin.
  • JOVE (propre version de Jonathan d'Emacs), une mise en œuvre non-programmable Emacs pour Systèmes de type UNIX par Jonathan Payne.
  • Freemacs, un Version DOS avec un langage d'extension basé sur le texte expansion de macros, le tout dans l'original 64 KiB limite de mémoire plat.
  • MINCE (MINCE ne est pas complète Emacs), une version pour CP / M de Mark of the Unicorn. MINCE évolué dans Final Word, qui devint finalement le traitement de texte Sprint de Borland.
  • Zile
  • Climacs, un Emacs variante mise en œuvre dans Common Lisp en plus influencé partir Zmacs que GNU Emacs.

Licences

Le code source, y compris à la fois le C et Emacs Lisp composants, est librement disponible pour examen, la modification et la redistribution, aux termes de la GNU General Public License (GPL).

Pour GNU Emacs (et GNU paquets en général), il reste la politique à accepter des contributions de code significatif que si les détenteur du copyright exécute un avertissement approprié ou la cession de leurs droits d'auteur à la Free Software Foundation, même si une exception a été faite à cette politique pour le MULE (multilingue Extension, qui gère Unicode et des méthodes plus avancées de traiter avec les scripts d'autres langues) code car le titulaire du droit d'auteur est la mission du gouvernement et le droit d'auteur du Japon ne était pas possible. Cela ne se applique pas aux contributions de code extrêmement mineures de moins de 10 lignes ou corrections de bugs. Cette politique est en place pour que la FSF peut défendre le logiciel en cour si sa licence copyleft est violée.

Les anciennes versions de la documentation GNU Emacs ont été libérés sous une licence ad hoc qui a nécessité l'inclusion de certains texte dans toute copie modifiée. Dans le manuel de l'utilisateur GNU Emacs, par exemple, cela comprenait comment obtenir essai politique de GNU Emacs et Richard Stallman Le Manifeste GNU. Les XEmacs manuels, qui ont été hérités de plus âgés manuels GNU Emacs lorsque la fourche se est produite, ont la même licence. Les nouvelles versions de la documentation utilisent GNU Free Documentation License et fait usage de «sections invariantes" d'exiger l'inclusion des mêmes documents, exigeant en outre que les manuels se proclament comme GNU manuels.

Caractéristiques

Emacs est principalement un éditeur de texte, pas un traitement de texte; il est orienté vers la manipulation des morceaux de texte, plutôt que la manipulation de la police (la «police») des caractères ou l'impression de documents (si Emacs peut faire ces derniers aussi bien). Emacs fournit des commandes pour manipuler mots et paragraphes (les supprimer, de les déplacer, se déplaçant à travers eux, et ainsi de suite), la coloration syntaxique pour faire code source plus facile à lire, et "macros de clavier" pour effectuer lots de commandes arbitraires d'édition définis par l'utilisateur.

GNU Emacs est un éditeur "d'affichage en temps réel" en ce que vos modifications sont affichées sur l'écran comme vous les faites. Ce est un comportement standard pour les éditeurs de texte modernes.

Personnalisable

La quasi-totalité des fonctionnalités de l'éditeur, allant des opérations d'édition de base telles que l'insertion de caractères dans un document à la configuration de l'interface utilisateur, est contrôlée par un dialecte de la Langage de programmation Lisp connue sous le nom Emacs Lisp. Cette conception unique et insolite fournit la plupart des fonctionnalités présentes dans Emacs. Dans cet environnement Lisp, variables et même l'ensemble fonctions peuvent être modifiés sans avoir à recompiler ou même redémarrer l'éditeur.

Il ya trois façons principales de personnaliser Emacs. La première est l'extension de personnalisation, qui permet à l'utilisateur de définir des variables de personnalisation communs, tels que le jeu de couleurs, en utilisant une interface graphique, etc. Ce est destiné aux débutants Emacs qui ne veulent pas travailler avec le code Emacs Lisp.

La seconde est de collecter les frappes en macros et les rejouer pour automatiser les tâches répétitives, complexes. Cela se fait souvent sur une base ad hoc, chaque macro jetés après usage, bien que les macros peuvent être sauvegardés et invoquées plus tard.

La troisième méthode pour personnaliser Emacs utilise Emacs Lisp. Habituellement, le code Emacs Lisp fourni par l'utilisateur sont stockées dans un fichier nommé .emacs , qui est chargé lors du démarrage d'Emacs. Le .emacs fichier est souvent utilisé pour définir des variables et raccourcis clavier différent du réglage par défaut, et de définir de nouvelles commandes que l'utilisateur trouve commode. De nombreux utilisateurs avancés ont .emacs fichiers des centaines de lignes de long, avec des personnalisations idiosyncrasiques qui causent Emacs pour divergent énormément du comportement par défaut.

Extensible

En conséquence, le comportement d'Emacs peut être modifiée presque sans limite, soit directement par l'utilisateur, ou en chargeant le code Emacs Lisp connue diversement comme des «bibliothèques», «packages», ou «extensions».

Emacs contient un grand nombre de bibliothèques Emacs Lisp, en plus de bibliothèques "tiers" peut être trouvé sur le Internet . Emacs peut être utilisé comme un Environnement de développement intégré (IDE), permettant aux programmeurs de modifier, compiler et déboguer leur code au sein d'une interface unique. Autres bibliothèques remplissent des fonctions les plus insolites. Quelques exemples sont énumérés ci-dessous:

  • Calc, un puissant RPN numérique calculateur
  • Calendrier mode, pour garder des calendriers de rendez-vous et agendas
  • Dunnet, un Text Adventure
  • Ediff , pour travailler avec fichiers diff interactive.
  • Emerge, pour comparer les fichiers et en les combinant
  • Emacs / W3, un navigateur Web
  • ERC, une Client IRC
  • Gnous, une vedette plein- lecteur de news et client de messagerie (et les preuves tôt pour Droit de Zawinski, avec Rmail et VM)
  • VM (ou «Voir Mail '), un plein de fonctionnalités email client
  • MULE, extensions multilingues Pour Emacs, permettant l'édition de texte écrit en plusieurs langues, quelque peu analogue à Unicode
  • Info, un aide-navigateur en ligne
  • Planner, un gestionnaire d'informations personnelles pour Emacs

Beaucoup de bibliothèques tierces peuvent être trouvés sur l'Internet; par exemple, il existe une bibliothèque appelée wikipedia mode pour édition articles de Wikipédia. Il ya même un Usenet newsgroup, gnu.emacs.sources, qui est utilisé pour l'affichage de nouvelles bibliothèques. Certaines bibliothèques tiers éventuellement faire leur chemin dans Emacs, devenant ainsi une bibliothèque "standard".

Performance

L'inconvénient de conception basé sur Lisp d'Emacs est une surcharge de performance résultant de chargement et l'interprétation du code Lisp. Sur les systèmes dans lesquels Emacs a d'abord été mis en œuvre, Emacs était souvent sensiblement plus lent que rivales éditeurs de texte. Plusieurs blague backronyms allusion à ceci: Huit mégaoctets et constamment permutation (de l'époque où huit mégaoctets avait beaucoup de mémoire), Emacs crée un ordinateur lent, Finalement Tous Mallocs Mémoire et rend Finalement Tous les ordinateurs de maladie. Cependant, les ordinateurs modernes sont suffisamment rapide pour que Emacs est rarement jugée lente. En fait, Emacs démarre plus vite que la plupart des traitements de texte modernes. Autres backronyms blague décrivent l'interface utilisateur: Évasion Meta Alt Contrôle Maj.

Plates-formes

Emacs est l'un des plus programmes informatiques non-triviales portés. Il fonctionne sur une large gamme de systèmes d'exploitation, y compris la plupart des Unix systèmes -comme ( GNU / Linux , les différents BSD, Solaris, AIX, IRIX, Mac OS X, etc.), MS-DOS, Microsoft Windows et OpenVMS. Systèmes Unix, les deux libres et propriétaires, souvent fournissent Emacs regroupés avec le système d'exploitation.

Emacs fonctionne aussi bien sur terminaux texte et interface utilisateur graphique (GUI) environnements. Sur Unix les systèmes d'exploitation, Emacs utilise le système X Window pour produire son interface graphique, soit directement, soit en utilisant un "Toolkit" tels que Motif, LessTif ou GTK +. Emacs peut également utiliser les systèmes graphiques natifs de Mac OS X (en utilisant le Carbone ou interfaces de cacao) et Microsoft Windows . L'interface graphique fournit menubars, barres d'outils, les barres de défilement, et menus contextuels.

modes d'édition

Emacs adapte son comportement au type de texte, il est en train d'éditer en entrant édition modes dits «principaux modes". Les modes majeurs sont définis pour les fichiers texte ordinaires, code source pour de nombreux langages de programmation , documents HTML, TeX et documents LaTeX, et de nombreux autres types de texte. Chaque mode majeur est un programme Emacs Lisp qui se étend de l'éditeur à se comporter plus commodément pour le type de texte particulier qu'il couvre. Modes majeurs typiques seront fournir tout ou partie des caractéristiques communes suivantes:

  • La coloration syntaxique (appelé "verrouillage police" dans Emacs): en utilisant différentes polices ou les couleurs à afficher mots-clés, commentaires, et ainsi de suite.
  • Indentation automatique: le maintien de mise en forme cohérente dans un fichier.
  • Caractéristiques "électrique", ce est à dire l'insertion automatique d'éléments tels que les espaces, les nouvelles lignes, et les parenthèses qui sont requis par la structure du document.
  • Commandes d'édition spéciales: par exemple, les principaux modes de langages de programmation définissent habituellement les commandes pour sauter au début et à la fin d'une fonction, tandis que les principaux modes de langages de balisage tels que XML fournissent des commandes pour valider les documents ou insérer des balises de clôture.

Des fonctionnalités supplémentaires peuvent être ajoutés en utilisant des «modes mineurs". Bien qu'un seul mode majeur est associé à un tampon à la fois, plusieurs modes mineures peuvent être simultanément actifs. Ceux-ci peuvent influer directement sur les documents. Par exemple, le mode majeur pour le langage de programmation C définit un mode mineur différent pour chaque de la populaire styles tiret. Ou alors, ils peuvent affecter l'environnement d'édition à la place. Par exemple, "mode gagnant» ajoute la possibilité d'annuler les modifications apportées à la configuration de la fenêtre, tandis que "MMM-mode" ajoute la possibilité d'utiliser plus d'un mode majeur dans un seul fichier, tel que requis dans les cas courants tels que l'édition d'un document HTML avec embarquée CSS et JavaScript.

Auto-documenté

Le premier Emacs inclus une bibliothèque d'aide innovant qui permet d'afficher la documentation pour chaque commande unique, variable et fonction interne. (Il peut provenir cette technique.) Pour cette raison, Emacs a été décrit comme "auto-documenté" en ce qu'il présente sa propre documentation, non seulement de ses fonctions normales, mais aussi de son état actuel, à l'utilisateur. Par exemple, l'utilisateur peut savoir sur la commande liée à une touche particulière, simplement en entrant Ch k (qui exécute la commande describe-key ), suivie de la touche. Chaque fonction comprend une chaîne de documentation, en particulier à être utilisé pour montrer à l'utilisateur sur demande. La pratique de donner fonctions chaînes de documentation est ensuite propagée à divers langages de programmation tels que Lisp et Java .

En outre, à travers le système d'aide d'Emacs, les utilisateurs peuvent être prises pour le code réel pour chaque fonction - que ce soit une bibliothèque intégrée ou une bibliothèque tierce installée.

Emacs a également un haut- tutoriel. Lorsque Emacs est lancé avec pas de fichier à modifier, il affiche des instructions pour effectuer des commandes d'édition simples et en invoquant le tutoriel.

Manuels

Outre la documentation intégrée, Emacs a un temps anormalement long, détaillé et bien écrit manuel. Une copie électronique du Manuel GNU Emacs, écrit par Richard Stallman, est inclus avec GNU Emacs et peut être considérée avec le haut- Infos navigateur. Deux autres manuels, le manuel Emacs Lisp référence par Bill Lewis, Richard Stallman, et Dan Laliberte, et de la programmation en Emacs Lisp par Robert Chassell, sont également inclus. Outre les versions électroniques, les trois manuels sont également disponibles sous forme de livre, publié par le Free Software Foundation. XEmacs a un manuel similaire au Manuel GNU Emacs, qui fourchue du Manuel GNU Emacs en même temps que le logiciel de XEmacs.

Internationalisation

Emacs supporte l'édition de texte écrit dans de nombreuses langues humaines . Il est le support de nombreux alphabets, des scripts, des systèmes d'écriture et des conventions culturelles. Emacs fournit la vérification de nombreuses langues sort en appelant programmes externes tels que ispell. Beaucoup systèmes de codage, y compris UTF-8, sont pris en charge. Emacs 22 possède un support complet de l'Unicode, cependant, il utilise le codage Emacs spécifique en interne, ce qui nécessite la conversion à charger et enregistrer. UTF-8 deviendra l'encodage interne Emacs-23 dans Emacs.

Cependant, l'interface utilisateur Emacs est en anglais, et n'a pas été traduit dans une autre langue, à l'exception du tutoriel pour débutants.

Pour les utilisateurs malvoyants et aveugles, il ya un sous-système appelé Emacspeak qui permet l'éditeur à utiliser grâce à la rétroaction audio seulement.

Utiliser Emacs

Commandes

Dans le mode d'édition normale, Emacs se comporte comme les autres éditeurs de texte: les touches de caractères (a, b, c, 1, 2, 3, etc.) insérer les caractères correspondants, les touches fléchées pour déplacer le point de montage, backspace efface du texte, et ainsi de suite. D'autres commandes sont invoquées avec frappes modifiés, en appuyant sur la touche de commande et / ou la méta clé / touche alt en liaison avec une touche normale. Chaque commande d'édition est en fait une invocation d'une fonction dans l'environnement Emacs Lisp. Même une commande aussi simple que de taper a pour insérer le caractère implique un appel d'une fonction - dans ce cas, self-insert-command .

Alternativement, si un utilisateur préférerait IBM utilisateur commune touches de style d'accès, "cua-mode" peuvent être utilisés. Cela a été un paquet tiers jusqu'à, et incluant, GNU Emacs 21, mais il est inclus dans GNU Emacs 22.

Notez que les commandes save-buffer et save-buffers-kill-emacs utilisent plusieurs frappes modifiés. Par exemple, Cx Cc signifie: tout en maintenant enfoncée la touche de commande, appuyez sur x; puis, tout en maintenant enfoncée la touche de commande, appuyez sur c. Cette technique, qui permet plusieurs commandes d'être lié au clavier qu'avec l'utilisation des seules frappes simples, a été popularisé par Emacs, dont il a obtenu de TECMAC, l'une des collections macro TECO qui a immédiatement précédé Emacs. Il a depuis fait son chemin dans éditeurs de code modernes comme Processeurs Visual Studio, et est même utilisé dans une certaine mesure par un mot de consommation tels que Microsoft Word.

Certaines commandes Emacs travail en invoquant un programme externe (comme ispell pour la correction orthographique ou gcc pour la compilation du programme), l'analyse de la sortie du programme et afficher le résultat dans Emacs.

Minibuffer

Le mini-tampon, normalement la ligne la plus basse, est l'endroit où Emacs demande des informations. Texte de cibler dans une recherche, le nom d'un fichier à lire ou d'enregistrer et d'information similaire est entré dans le mini-tampon. Lorsque applicable, ligne de commande achèvement est généralement disponible en utilisant la touche de tabulation et d'espace.

Gestion de fichiers et l'affichage

Emacs garde texte dans des objets appelés tampons. L'utilisateur peut créer de nouveaux tampons et de rejeter les indésirables, et plusieurs tampons peut exister en même temps. La plupart des tampons contenant du texte chargés à partir fichiers texte, que l'utilisateur peut modifier et enregistrer sur le disque. Les tampons sont également utilisés pour stocker du texte temporaire, telles que les chaînes de documentation affichées par la bibliothèque d'aide.

En tant terminal texte et les modes graphiques, Emacs est capable de diviser la zone d'édition en sections distinctes (appelées depuis 1975 comme des «fenêtres», qui peut être source de confusion sur les systèmes qui ont une autre notion de «fenêtres» ainsi), de sorte que plus d'un tampon peut être affiché à la fois. Ceci a de nombreux usages. Par exemple, une section peut être utilisé pour afficher le le code source d'un programme, tandis que l'autre affiche les résultats de la compilation du programme. Dans les environnements graphiques, Emacs peut également lancer multiples fenêtres graphique et l'environnement, appelés «cadres» dans le contexte d'Emacs.

Emacs Pinky

En raison de la dépendance de Emacs sur les touches de modification, en particulier, comment la touche de commande est pressée avec le le petit doigt ("pinky"), les gros utilisateurs d'Emacs ont connu la douleur dans leurs petits doigts (voir microtraumatismes répétés et de la graisse-doigt). Cela a été surnommé le «Emacs Pinky", et vi défenseurs citent souvent comme une raison pour passer à vi. Pour pallier cette situation, de nombreux utilisateurs d'Emacs transposent la touche de commande gauche et la touche de verrouillage des majuscules gauche ou définissent à la fois comme des touches de contrôle. Pour mettre la clé de contrôle là où il était (généralement la touche la plus à gauche sur la rangée du milieu de caractères) lorsque les combinaisons de touches Emacs ont été choisis, avant l'ère des claviers PC IBM de style. D'autres utilisent viper-mode, un fonctionnalité intégrée dans Emacs qui permet l'utilisation des touches de vi pour l'édition de texte de base et les touches Emacs pour plus de fonctionnalités avancées. D'autres utilisent des claviers spéciaux tels que Clavier profilé de Kinesis, ce qui réduit la souche en déplaçant les touches de modification de sorte qu'ils sont en mesure d'être facilement poussé par le pouce, ou Microsoft Natural Keyboard, qui dispose de grandes touches de modification placés symétriquement sur les deux côtés du clavier de sorte qu'ils peuvent être pressées avec la paume.

Récupéré à partir de " http://en.wikipedia.org/w/index.php?title=Emacs&oldid=226196154 "