VIM VS EMACS Comparaison détaillée

VIM VS EMACS Comparaison détaillée
La communauté Linux n'est pas étrangère aux débats houleux. De discuter des avantages et des inconvénients des logiciels propriétaires et open source à la défense de leurs distributions préférées avec le zèle d'un chevalier défendant la dernière redoute, les utilisateurs de Linux peuvent être extrêmement opinionnés, ce qui ne permet pas aux nouveaux arrivants de trouver facilement des informations utiles et impartiales impartiales.

Un débat qui confond les nouveaux arrivants depuis des décennies tourne maintenant autour de VIM contre Emacs, qui sont deux éditeurs de texte vénérables que de nombreux utilisateurs et programmeurs de Linux chevronnés préfèrent toujours en tant qu'alternatives aux éditeurs et IDE modernes tels que SUBLIME Text, Visual Studio Code, ou Intellij.

Dans cet article, nous comparons VIM et EMACS pour expliquer pourquoi comparer ces deux éditeurs de texte, c'est comme comparer les pommes aux oranges. À la fin de cet article, vous devriez être en mesure de décider lequel des deux éditeurs de texte correspond plus à vos besoins et préférences et si vous ne devriez pas vous en tenir à quelque chose de plus moderne après tout.

Philosophie de conception

VIM a été publié pour la première fois en 1991 en tant que descendant direct de VI, un éditeur de texte orienté écran beaucoup plus ancien développé à l'origine par Bill Joy pour le système d'exploitation UNIX. Le créateur de VIM, Bram Moolenaar, a initialement nommé l'éditeur VI Imitation, mais il a décidé plus tard de changer le sens de l'acronyme en vi a amélioré. Fan de logiciel open-source, Moolenaar a publié VIM sous une licence de charité, encourageant les utilisateurs qui aiment l'éditeur de texte à faire un don à des enfants en Ouganda.

Tout comme VI, VIM est destiné à être rapide, facilement disponible et extrêmement polyvalent. Il est préinstallé sur la plupart des distributions Linux, et il est disponible pour pratiquement tous les systèmes d'exploitation. Parce que VIM est partout, il est vraiment payant pour connaître au moins les bases parce que vous ne savez jamais quand vous aurez besoin de modifier un fichier texte sur un système qui n'a pas votre éditeur de texte préféré.

Emacs existe depuis 1976 et son nom signifie éditeur Macros. La version d'Emacs que la plupart des gens utilisent aujourd'hui s'appelle GNU Emacs, qui a été créée par nul autre que le fondateur du projet GNU Richard Stallman. Tout comme VIM, Emacs fonctionne sur essentiellement tous les systèmes d'exploitation que vous rencontrerez jamais. Cependant, comme il s'agit d'un logiciel relativement grand, il n'est généralement pas préinstallé.

La raison pour laquelle Emacs est grand a tout à voir avec le fait qu'il est beaucoup plus proche d'un système d'exploitation qu'un éditeur de texte. Il dispose d'un langage de programmation complet Turing, Emacs Lisp, ce qui permet de personnaliser et d'étendre Emacs d'une manière que l'esprit a du mal à comprendre. Pour illustrer ce que nous voulons dire, nous vous encourageons à visiter le site Web de Gneve, un éditeur vidéo pour Emacs.

Facilité d'utilisation

L'image ci-dessus illustre parfaitement les courbes d'apprentissage de VI / VIM, EMACS et d'autres éditeurs de texte populaires. Avec VIM, tout ce que vous avez à faire pour commencer est d'ouvrir à peu près n'importe quelle feuille de triche que vous trouvez sur Google Images dans une fenêtre séparée et jouez avec les clés de clés pendant un certain temps. Au départ, vous ne saurez même pas comment modifier un fichier texte, mais cela ne vous prendra pas plus de quelques heures pour connaître toutes les bases. Vous pouvez même télécharger une version GUI de VIM, comme GVIM, pour ajouter des menus et des barres d'outils pour les commandes couramment utilisées, ce qui rend l'éditeur encore plus facile à apprendre.

Emacs est un peu comme un jeu de bac à sable. Vous commencez par une boîte brune non marquée qui regorge d'outils capables d'accomplir à peu près tout ce que vous pourriez imaginer, y compris la modification des fichiers texte. Le seul problème est qu'il n'y a aucun moyen évident de savoir comment aborder ce bac à sable. Bien qu'il y ait des armes et des tutoriels en ligne, mais vous pouvez passer des heures avec eux, et vous gratterez à peine la surface de ce que Emacs peut faire. Oui, il peut être extrêmement gratifiant de connaître les tenants et les aboutissants d'Emacs, mais vous devez vous demander si le voyage en vaut la peine.

Productivité

VIM est un éditeur de texte rapide qui s'ouvre instantanément et présente à ses utilisateurs deux modes: mode d'insertion et mode de commande. Le premier est l'endroit où vous tapez du texte dans l'éditeur, tandis que le second est l'endroit où vous entrez des raccourcis clavier pour exécuter diverses commandes. Emacs prend un peu plus de temps pour commencer, et c'est sans modes, tout comme la plupart des éditeurs de texte aujourd'hui.

Même si Emacs peut prendre jusqu'à 2-3 secondes pour se charger sur des systèmes plus anciens, la plupart des utilisateurs ne se soucient pas du tout parce qu'ils ne le ferment jamais. Au lieu de cela, ils ouvrent Emacs en mode Shell, leur permettant d'exécuter Shell dans Emacs, au lieu de l'inverse. Avec Shell fonctionnant à l'intérieur d'Emacs, vous pouvez plus ou moins vivre à l'intérieur du logiciel 24/7 et l'utiliser pour tout faire, de l'écoute de la musique à la prise de notes à des jeux.

Inutile de dire qu'il est facile de se laisser distraire avec Emacs si vous êtes le type de personne qui aime bricoler avec un logiciel. Mais si vous parvenez à rester concentré et à utiliser Emacs pour améliorer votre flux de travail, votre productivité peut monter en flèche. Pour l'édition de texte pur, VIM est généralement plus rapide, mais l'expérience joue un rôle énorme à cet égard.

Personnalisation et extensibilité

VIM et EMACS prennent en charge les plugins qui peuvent améliorer leurs fonctionnalités, EMACS prend la personnalisation et l'extensibilité un peu plus loin avec son langage de programmation EMACS LISP. Parce qu'Emacs Lisp est complet, ses capacités sont illimitées.

Souhaitez-vous rechercher Google directement à partir d'Emacs? Exécutez simplement le code des lèvres EMACS suivant, tapez M-X Prelude-Google, et cette nouvelle commande fonctionnera instantanément:

(Defun Prelude-Google ()
"Google une requête ou une région, le cas échéant."
(interactif)
(parcourir
(Concat
"http: // www.Google.com / recherche?ie = utf-8 & oe = utf-8 & q = "
(Si Mark-actif
(tampon-substring (région de région) (extrémité régionale))
(lecture-chaîne "Google:")))))

Pour en savoir plus sur l'extensibilité impressionnante d'Emacs, nous vous recommandons de lire cet article écrit par Bozhidar Batsov, l'auteur de The Code Snippet ci-dessus.

Lorsque les utilisateurs de VIM ont l'impression de manquer certaines fonctionnalités, ils saisissent généralement l'un des milliers et des milliers de plugins VIM facilement disponibles. Cependant, ils peuvent également utiliser VIMScript, le langage de script interne de VIM. Vim et Emacs soutiennent en outre les thèmes, donc rien ne vous empêche de faire semblant d'être néo de la matrice.

Conclusion

Comme nous l'avons dit au début, comparer VIM avec Emacs, c'est comme comparer les pommes avec les oranges. L'un est le rédacteur en texte capable avec de nombreuses fonctionnalités avancées destinées aux utilisateurs de puissance, tandis que l'autre est un bac à sable qui se trouve être idéal pour modifier les fichiers texte. Si vous êtes satisfait de votre flux de travail actuel et que vous voulez juste une alternative aux éditeurs de texte modernes comme le texte sublime, vim est la voie à suivre. Mais si vous souhaitez réinventer complètement la façon dont vous modifiez des fichiers texte et écrivez des applications logicielles, Emacs peut vous donner tout ce que vous pourriez demander et plus.

Vigueur:

  • Plus simple et plus facile à apprendre que Emacs.
  • Mieux en tant qu'éditeur de texte.
  • Préinstallé sur la plupart des distributions Linux.

Emacs:

  • Extrêmement puissant et infiniment extensible.
  • Support fantastique pour les outils GNU.
  • Incarne l'état d'esprit de programmation.