Les éditeurs de texte basés sur les terminaux Linux ont comparé
Sommaire
Résumé
-
VIM et Nano sont des éditeurs de texte en ligne de commande qui s'exécutent dans un terminal plutôt que dans une interface utilisateur graphique (GUI).
-
VIM et Nano ont une apparence similaire mais diffèrent considérablement en fonctionnalité et en efficacité.
-
VIM est beaucoup plus puissant en raison de son mode de ligne de commande flexible, mais Nano est plus facile à utiliser.
À moins que vous ne soyez prêt à apprendre EMACS, il n'y a vraiment que deux options pour modifier le texte dans le terminal Linux: VIM ou Nano. Mais le choix est-il important et, si oui, pourquoi?
Commençons par expliquer ce que Nano et Vim ne sont pas. Bien qu'ils vous permettent de modifier du texte, ce ne sont pas des traitements de texte comme LibreOffice Writer ou Google Docs. Un éditeur de texte vous permet de travailler avec des fichiers de configuration en texte brut non formatés, un code source de programme ou Markdown.
Mais Nano et Vim sont plus spécifiques que cela: ce sont des éditeurs de texte en ligne de commande, pas des applications GUI. Vous les exécutez dans un terminal et les contrôlez avec le clavier. Vous pourriez être habitué à un éditeur graphique comme Gedit ou Kate:
D'un autre côté, un éditeur de ligne de commande semble plus basique:
Parce qu'ils s'exécutent sur la ligne de commande, Nano et VIM présentent tout dans une interface de caractère sans menus, boutons ou autres contrôles GUI. En vérité, parce que les éditeurs de texte fonctionnent de toute façon avec du texte brut, la différence n'est pas aussi austère que pour d'autres types d'applications.
En rapport
Comment modifier graphiquement les fichiers texte sur Linux avec Gedit
Sur Linux, Gedit rend indolore de modifier les fichiers système — graphiquement.
Ils ont l'air similaires mais se sentent très différents
Les looks peuvent être trompés. Bien que Vim, Nano et même Gedit ne semblent pas si différents, ils se sentent très différents à utiliser.
Dans le cas de VIM et Nano, car ce sont des outils de ligne de commande, ils nécessitent des commandes de clavier et des raccourcis. En les utilisant, vous n'atteignez pas la souris pour couper du texte ou effectuer une recherche. Ainsi, un éditeur GUI comme Kate est beaucoup plus accessible la première fois que vous l'utilisez.
Même entre VIM et Nano, cependant, il existe des différences significatives. L'une que vous remarquerez immédiatement est que Nano utilise les deux lignes inférieures de votre terminal pour afficher les raccourcis:
Nano utilise un modèle commun pour étiqueter ses raccourcis. Ici, le personnage ^ représente Ctrl, donc « ^ x exit » signifie que vous pouvez tenir Ctrl, puis appuyer sur X pour quitter le programme.
L'éditeur VIM est beaucoup plus minimaliste et n'a aucune aide persistante comme Nano. Au lieu de cela, si vous l'exécutez sans arguments en ligne de commande, vous verrez des instructions très brèves:
Ce ne sont même pas particulièrement faciles à comprendre au début, et vous pouvez finir par descendre un peu de lapin à moins que vous ne puissiez déterminer ce qui se passe. Par exemple, la saisie « : Aide » fonctionnera si vous l'essayez immédiatement, mais cela peut être très déroutant si vous ne réalisez pas que VIM affiche votre document d'origine au bas du terminal et un document d'aide (help.txt) en haut. Vous pouvez quitter l'aide en tapant «: Q» mais, à ce stade, vous aurez probablement pas mal de questions sans réponse.
Pendant ce temps, l'aide de Nano est un peu moins déroutante; Il s'affiche sur une page et dispose de raccourcis de clavier familier en bas, spécifique au contexte:
La principale chose qui provoque la confusion initiale avec VIM est son interface modale. Lorsque vous démarrez VIM, il est en mode commande, donc appuyer sur les touches n'insertera pas de texte dans votre fichier, mais exécutez les commandes, comme supprimer une ligne – au lieu. En appuyant sur I, je passerai en mode insérer, puis tout texte que vous tapez apparaîtra dans votre document, jusqu'à ce que vous appuyez sur ESC pour revenir en mode commande.
Cette double opération peut être très difficile à s'y habituer, et il est courant de finir par appuyer sur une clé que vous vouliez dans votre document, seulement pour trouver VIM faire quelque chose de complètement sans rapport, comme déplacer le curseur ou changer deux caractères.
Nano se sent beaucoup plus intuitif: vous pouvez vous déplacer avec les touches du curseur (qui ne fonctionne pas toujours dans VIM!), Tapez du texte à tout moment et appuyez sur Backpace pour le supprimer. C'est beaucoup plus comme utiliser un éditeur GUI, donc si vous ne vous sentez pas trop confiant, vous voudrez peut-être utiliser Nano comme tremplin avant de franchir le pas et de vous engager à Vim.
Vim est beaucoup plus puissant
Vous vous demandez peut-être pourquoi VI a une interface si complexe. Il est en fait essentiel de la façon dont l'éditeur est généralement utilisé et est une excellente démonstration de la flexible Linux, avec différents outils pour différents utilisateurs.
Lorsque vous appuyez sur la touche Colon (:) dans VIM, vous entrez en mode de ligne de commande. Vous pouvez désormais saisir librement les commandes spéciales pour contrôler le comportement de VIM, en quittant ou en tirant de l'aide pour activer les numéros de ligne ou rechercher du texte et le remplacer. Cela offre beaucoup de puissance et aide à prendre en charge un ensemble de commandes essentiellement ouvert.
VIM vous permet également de combiner des commandes en mode normal, ce qui le rend encore plus flexible. Par exemple, DD est une commande qui supprime la ligne actuelle, tandis que DW supprime un mot. L'ajout d'un nombre avant de répéter cette commande, donc 5DW supprime cinq mots. Bien que cela puisse sembler beaucoup à apprendre, une fois que vous l'avez fait, vous avez beaucoup de bon contrôle à portée de main.
En rapport
Ne soyez pas retenu par votre éditeur de texte Linux par défaut, essayez-les à la place
Vous n'avez pas besoin d'être coincé avec (et dans) vim.
Nano adopte une approche très différente. Il offre moins de fonctionnalités car il n'y a que peu de choses que vous pouvez réaliser avec les touches de raccourci seules. Alors que VIM vous donne le défi d'apprendre une langue complète, Nano vous donne juste assez de phrases courantes pour vous en sortir. Vous vous en sortirez facilement dans la plupart des cas, mais tout ce que Nano ne gére pas sera impossible sans solution de contournement maladroit.
C'est ce sentiment d'efficacité qui élève vraiment VIM. Si vous regardez un utilisateur VIM chevronné au travail, vous apprécierez ceci: ils feront défiler les allers-retours via le fichier à volonté, échangeant des sections, remplaçant le texte et indent des blocs à la presse d'une touche. Il ne fait aucun doute que si vous avez la patience de l'apprendre, VIM vous permettra d'accomplir certains types d'édition très rapidement.
Les deux sont précieux, mais vous n'en avez pas besoin
J'utilise VIM depuis environ 20 ans, et je ne pense pas qu'une alternative puisse me gagner maintenant, surtout pas pour l'édition de ligne de commande. Même si je suis très loin d'être un utilisateur expert, j'ai appris juste assez pour m'en sortir. Je peux faire les bases pour que, lorsque j'ai besoin de modifier dans le terminal, VIM sera toujours plus rapide et moins frustrant pour moi que Nano.
Mais j'ai utilisé Nano à la fois, avant de déménager à VIM. C'était toujours le choix évident quand j'avais juste besoin de faire du travail, et je n'ai pas eu le temps d'apprendre un système de commande complexe.
En fin de compte, cela revient à des préférences personnelles, mais VIM sera toujours le meilleur pour la programmation si vous prenez le temps de l'apprendre. Si vous n'avez pas besoin des gains de productivité que VIM offre, cela ne vaut probablement pas la peine de passer ce temps et ce temps. Là encore, si vous n'êtes pas à l'aise d'aller au-delà de Nano en premier lieu, vous pourriez être mieux avec un éditeur de texte GUI.