Différence entre VIM et EMACS

Différence entre VIM et EMACS

C'est une époque de rivalités. Regardez autour de vous et vous pouvez voir des guerres saints partout: iOS vs. Android, Apple VS. Samsung, MCU VS. DC, la liste continue. L'une des longueurs et la plus ancienne des guerres saintes est probablement la «guerre de l'éditeur» entre les utilisateurs de VIM et EMACS. Cette guerre de l'éditeur est en cours, créant une confusion entre la communauté logicielle et les utilisateurs de Linux depuis des décennies. Vim et Emacs sont sans aucun doute deux des éditeurs les plus populaires pour le code de marionnettes sur les machines Unix. Les deux sont des éditeurs de texte vraiment bons et très efficaces utilisés par la plupart des utilisateurs et programmeurs de Linux chevronnés. Jetons un coup d'œil à quelques différences clés entre les deux.

Qu'est-ce que vim?

VIM est une version augmentée de l'éditeur de texte VI utilisé sur les systèmes UNIX. Abréviation de l'éditeur visuel, VI est l'éditeur de texte standard trouvé dans presque tous les systèmes Unix et c'est l'éditeur de texte Linux le plus populaire. Il existe depuis les premiers jours d'Unix. VIM est un éditeur de texte orienté vers l'écran de type VI construit pour permettre une modification efficace de texte. Souvent appelé «éditeur du programmeur», VIM utilise des opérations simples basées sur le curseur pour donner un format plein écran. La première version de VIM a été publiée au public par Bram Moolenaar en 1991. Il est devenu l'un des éditeurs les plus populaires et les plus riches en fonctionnalités depuis lors. En 1998, la cinquième génération de VIM a été publiée et avec l'une des fonctionnalités les plus utilisées de l'éditeur, les scripts, ont également été introduits. Les gens peuvent désormais écrire leurs propres scripts pour VIM, évenant éventuellement élargir sa fonctionnalité.

Qu'est-ce que Emacs?

Emacs est une famille de rédacteurs de texte en temps réel hautement personnalisables et auto-documentés conçus pour les systèmes d'exploitation POSIX et disponible sur Linux, MacOS, BSD, Windows et plus. La plupart des utilisateurs disent que EMACS n'est pas réellement un éditeur; En fait, c'est un système LISP (processeur de liste) très extensible qui présente l'édition de texte. Emacs est adapté au développement de programmes qui vous permet de formater le code source en fonction de la programmation que vous utilisez. C'est l'un des éditeurs de texte les plus populaires de Linux qui agit également comme un client électronique de courrier, un environnement de développement intégré, un navigateur de document, etc. La version GNU d'Emacs créée par le fondateur du projet GNU, Richard Stallman, comprend un client de messagerie, ainsi que d'autres composants, comme un lecteur de journaux et un éditeur. Il a été écrit à l'origine comme une série de commandes d'extension ou de macros pour l'éditeur de texte de la fin des années 1960 TECO.

Différence entre VIM et EMACS

Éditeur

- VIM est un éditeur de texte avec trois modes importants: insert, normal et visuel. VIM commence par défaut en mode «normal» et est utilisé pour contrôler la session d'édition. En mode insert, vos touches font partie du document. Le mode visuel est utilisé pour faire la sélection du texte. Vous pouvez créer et modifier vos documents en faisant des allers-retours entre ces modes. Emacs est également un éditeur d'affichage mais il est bien plus qu'un simple éditeur de texte. Il s'agit d'un système LISP (processeur de liste) hautement extensible qui présente l'édition de texte. Il agit également comme un client de messagerie électronique, un environnement de développement intégré, un navigateur de document, etc.

Facilité d'utilisation

- VIM est extrêmement léger et rapide à charger. Il est destiné à être un éditeur de texte rapide et extrêmement disponible et extrêmement polyvalent qui est préinstallé sur presque tous les systèmes d'exploitation basés sur UNIX, y compris la plupart de vos distributions Linux à l'extérieur de la boîte. C'est mieux que la plupart des éditeurs de texte là-bas. Tout ce que vous avez à faire est d'apprendre les touches et vous êtes prêt à partir. EMACS est disponible sur à peu près tous les principaux systèmes d'exploitation, de Linux à MacOS, BSD, Windows et plus. Cependant, il ne vient pas préinstallé et une très peu de distributions Linux expédient avec EMACS à l'extérieur. Avec EMACS, vous pouvez faire à peu près quelque chose comme modifier des textes, prendre des notes, modifier des vidéos, accès à la coquille, écouter de la musique, parcourir le Web, et plus encore.

Personnalisation

- VIM est plus optimisé pour la répétition. Il est très efficace étant donné qu'il suit vos actions les plus récentes et vous pouvez facilement répéter le dernier changement avec une seule touche. Mais bien sûr, vous devez apprendre à créer vos actions. Comme VIM, Emacs a un ensemble riche et vaste de commandes pour modifier le texte. Mais avec EMACS, vous pouvez personnaliser les commandes à tout moment et vous pouvez également modifier les paramètres, dont la plupart sont des variables personnalisables. Il s'agit essentiellement d'un environnement d'exécution pour le langage de programmation LISP, qui est complet, ce qui rend les capacités d'Emacs pratiquement illimitées.

Langue

- Le noyau de VIM est écrit en C et son interface utilisateur est basée sur VI de Bill Joy’s Years, mais avec de nombreuses nouvelles fonctionnalités. Cependant, les plug-ins pour VIM sont écrits dans une langue appelée vimscript, qui est une interface intégrée qui permet aux développeurs d'améliorer les capacités de VIM. Emacs, en revanche, est écrit dans un sous-ensemble de Lisp appelé Elisp (le dialecte utilisé dans GNU Emacs), ce qui signifie que vous pourrez personnaliser chaque petit détail de l'éditeur. Lisp a une syntaxe très minimale et régulière. Vous pouvez configurer l'interface graphique jusqu'à un niveau hautement granulaire, même l'interface elle-même.

VIM VS. EMACS: Tableau de comparaison

Résumé

Comme VIM, Emacs est également un éditeur de texte qui peut être exécuté avec une interface graphique, mais c'est bien plus qu'un simple éditeur de texte. En fait, Emacs agit également comme un client de messagerie électronique, un environnement de développement intégré, un navigateur de document, etc. Contrairement à VIM, EMACS vous permet d'utiliser le langage de programmation LISP pour écrire de nouvelles commandes ou remplacer les anciennes. Cette fonctionnalité est appelée extensibilité en ligne. EMACS est également hautement personnalisable, ce qui signifie que vous pouvez personnaliser chaque détail jusqu'à un niveau hautement granulaire, ce qui rend ses capacités pratiquement illustrées. Cependant, VIM est toujours l'un des éditeurs de texte les plus populaires et les plus utilisés dans presque tous les systèmes basés sur Unix.