100 votes

Quelle productivité spécifique gagne Vim/Emacs fournissent-ils sur les éditeurs de texte GUI ?

Ce n'est pas conçue comme un troll ou flamebait ou quelque chose comme ça. J'ai été en utilisant Vim comme ma console de l'éditeur de votre choix pour un couple de mois maintenant (pour l'édition de fichiers de configuration alors que dans mon terminal), mais je ne pense pas que je pourrais supporter mes normale, chaque jour, le travail de l'écriture d'applications web, ce que je fais avec une interface graphique de l'éditeur de texte (qui n'est pas important).

Je sens que mon interface graphique de l'éditeur de texte peut faire tout ce dont j'ai besoin pour mon travail. Il a une bonne recherche et remplacement de l'auto-complétion des histoires pour les deux. Il a la coloration syntaxique, la numérotation des lignes, une interface à onglets, facile de copier et de coller, etc. La seule chose que mon actuelle de l'éditeur manque de correspondance d'expressions régulières, mais il y a beaucoup de GUI, les éditeurs de texte qui ne regex rechercher/remplacer.

Compte tenu de ce que je viens de dire, quels avantages en termes de productivité ne Vim (ou même Emacs) disposent de plus d'une interface graphique de l'éditeur de texte à part le fait qu'il est installé sur chaque ordinateur. J'aimerais des tâches spécifiques qui sont mieux/plus vite sur Vim/Emacs ou qui sont tout simplement pas possible avec les GUI des éditeurs de texte.

110voto

Brian Carper Points 40078

Pour Vim:

  • Vim dispose d'une meilleure intégration avec d'autres outils (commandes shell, scripts, des compilateurs, des systèmes de contrôle de version, ctags, etc.) que la plupart des éditeurs. Même quelque chose de simple comme :.!, pour tuyaux de sortie de la commande dans une mémoire tampon, c'est quelque chose que vous ne trouverez pas dans la plupart des GUI éditeurs.

  • Une interface à onglets n'est pas aussi beau que la "fenêtre" de l'interface que Vim/Emacs vous donner. Vous pouvez voir deux ou plusieurs fichiers en même temps côte à côte. Le plus vous pouvez voir sur l'écran, plus vous libérez votre esprit de penser à votre problème plutôt que de faire de la comptabilité mentale des noms de variable et de fonction de signatures.

  • Ne sous-estimez pas la puissance de Vim expressions régulières. Il y a beaucoup de Vim extensions spécifiques pour correspondre à une colonne spécifique, d'une marque, la position du curseur, certaines classes de caractères (mots-clés, les identifiants), etc.

  • Intégrée diff et grep (indépendant de la plateforme de sorte que vous n'avez pas besoin de télécharger et d'en apprendre un nouvel outil à chaque fois que vous changez d'ordinateur).

  • Visual mode bloc (pour modifier les colonnes) est quelque chose que beaucoup d'éditeurs manque, mais que je ne peux pas vivre sans. J'ai choqué et impressionné les gens au travail, à l'aide seulement de cela, certaines d'éditer en quelques pressions sur les touches que quelqu'un qui se serait autrement passé dix minutes à faire manuellement.

  • Plusieurs copier/coller des registres. Lorsque vous avez seulement un, vous vous retrouvez à travers d'étranges contorsions pour éviter de casser le presse-papiers. Vous ne devriez pas avoir à.

  • Vim est undo/redo système est imbattable. Tapez quelque chose, annuler, tapez quelque chose d'autre, et vous pouvez encore revenir en arrière, la première chose que vous avez tapé parce que Vim utilise une annulation de l'arbre plutôt que d'une pile. Dans presque tous les autres programmes, l'histoire de la première chose que vous avez tapé est perdu dans cette circonstance.

  • Se déplacer, copier, coller et supprimer du texte est incroyablement rapide dans Vim. Les commandes sont simples, touches individuelles, et composable. Ajouter toutes les fois que vous faites une attention, laborieux surbrillance souris et Ctrl-X, puis de les remplacer tous avec un da( (supprimer un jeu de correspondance des parens et tout son contenu). Il permet d'économiser plus de temps que vous ne le pensez

  • Les petites choses, comme l' * de recherche pour le mot sous le curseur, ou . pour répéter une commande, ou % de rebondir entre l'ouverture et de la fermeture de parenthèse. Beaucoup trop de ces à la liste.

  • Langage de script intégré et puissante clé de cartographie de macro et de la capacité, de sorte que l'éditeur peut être étendue à toutes les façons dont vous avez besoin. Des tonnes de scripts déjà écrit et téléchargeable.

Si vous regardez d'assez près, vous verrez que même fonctionnalités que d'autres éditeurs ont, eux aussi, Vim n'est souvent mieux. Tous les éditeurs ont de la syntaxe, mais Vim dispose d'un fichier de syntaxe pour presque tous les formats de fichier sous le soleil, souvent avec beaucoup d'options de configuration, et c'est de la saleté simple à écrire votre propre. Beaucoup d'éditeurs de gérer les différents fichiers codages OK, mais Vim vous donne très précis et infaillible des moyens de fichier de configuration de codages et de la conversion d'entre eux. La première chose qui m'a impressionné à propos de Vim est parfaitement comment il gère onglet/espace indentation options et Unix/DOS mais les sauts de ligne par rapport à d'autres éditeurs que j'ai eu des problèmes avec à la fois.

Beaucoup de ces points s'appliquent tout aussi bien à Emacs (en différentes mais généralement tout aussi puissants moyens).

36voto

Jeremy Smyth Points 11001

(vim est mon poison; je suis sûr que emacs offre des gains similaires)

Le plus gros gain: pas besoin de toucher la souris.

Pour moi, le moyen le plus commode, c'est de sauter vers l'avant (ou juste avant) une lettre ou combinaison de lettres, ou de sauter à l'arrière, avec un couple de touches. Saut en avant par le même état deux fois, dix fois, est tout simplement une question de préfixant avec un nombre.

Si vous avez à répéter une édition, vous pouvez sauter en avant à cet endroit (de 2 à 3 caractères), puis appuyez sur "." pour répéter la dernière édition. Saut en avant (ou en arrière) il est plus facile - une seule touche - si c'est la même condition de recherche.

En fait, avec un petit plomb-temps, vous pouvez apprendre à dix ou vingt raccourcis clavier qui signifie que vous n'avez pas à garder en déplaçant votre main pour attraper la souris. Qui vous donne trois ou quatre fois plus nombreux à l'édition de mouvements/commandes que vous feriez si vous aviez à garder l'accaparement de la souris.

Après quelques jours, vous allez vous retrouver obtenir grincheux chaque fois que vous devez atteindre pour la souris (ou appuyez <Down> 15 fois), lorsque vous êtes dans un éditeur de GUI.

33voto

SolutionYogi Points 16697

Je me suis toujours demandé pourquoi peu de gens étaient gaga sur Vim. Voir ces vidéos de VIM utilisateur de puissance en action:

[AVERTISSEMENT: le Lecteur Windows Media vidéo]

http://blog.eleutian.com/download/vimteaser.wmv

http://blog.eleutian.com/download/vim2.wmv

http://blog.eleutian.com/download/vim3.wmv

Si votre éditeur ne peut faire ce qu'il fait, il n'y a pas besoin de changer! :)

Aussi, lisez ceci http://www.viemu.com/a-why-vi-vim.html

Après avoir regardé la vidéo et de la lecture de cet article, je n'avais pas le choix mais pour commencer à apprendre VIM. Cela fait presque un an que je suis passé à VIM et je n'imagine pas utiliser quoi que ce soit d'autre.

23voto

Stefan Mai Points 9477

Je pense que les pouvoirs réels d’un éditeur de texte dédié macro est édition. La répétition est douloureuse pour beaucoup de programmeurs, et écrit des macros approprié peuvent être divertissant borderline. Si vous ne faites pas tout à travers le clavier, création de macros nécessitera un ensemble supplémentaire de commandes plutôt qu’en utilisant ceux que vous utilisez déjà.

15voto

Allen Points 3497

Je suis semi-compétente avec vi raccourcis clavier, mais je préfère Emacs dans l'ensemble. La raison de ces éditeurs ont ces ferventes adeptes est parce que le modèle de montage qu'ils fournissent est plus puissant que les nouveaux systèmes, c'est pourquoi la fourniture de "vi raccourcis clavier" ou "emacs raccourcis clavier" n'est pas assez, même si vous n'utilisez pas toutes les fonctionnalités d'extension ou de personnalisations pour emacs ou vi.

Je ne vais parler à propos d'Emacs le modèle de la " parce que je le comprends mieux. Le modèle commun pour l'édition de texte implique aujourd'hui un tampon de texte, dans laquelle le texte peut être inséré, supprimé, sélectionnés et couper/copier/collé dans le presse-papiers du système.

Emacs tampons, bien sûr, peuvent prendre en charge ces opérations. Avec le suivi de la position du curseur pour chaque fenêtre ils sont visibles, ils également garder la trace des "marques" made in. Le texte entre le "point" (position du curseur) et la "marque" est appelé "région", qui correspond à peu près à la sélection dans les principaux éditeurs.

La différence est que Emacs conserve la trace de la dernière plusieurs emplacements de la marque a été fixé à la marque de l'anneau, et vous pouvez revenir avec une combinaison de touches (ou deux, selon votre configuration). Je trouve cela très utile, surtout depuis un lot de commandes Emacs que le changement de votre emplacement dans le tampon de définir la marque de votre ancien emplacement. Un exemple est lorsque je suis en train de monter un module Python et avez besoin d'ajouter une instruction import pour le haut du fichier. La combinaison de touche pour aller vers le haut de la mémoire tampon (Alt-<) jeux de la marque. J'ai ajouter l'instruction import. Je presse Ctrl-u Ctrl-Espace et je suis de retour là où j'ai commencé. Je peux continuer à faire de ce cycle de revenir à la position précédente. (Peut-être que j'avais besoin de sélectionner du texte, tout en ajoutant que l'instruction import.)

L'autre (et plus bien connus) Emacs différence est le kill ring. La plupart des séquences de touches pour la retirer du texte dans le tampon d'enregistrer du texte pour le kill ring, qui peuvent être rappelés avec le "yank" de commande (Ctrl-y). La caractéristique essentielle est que, suite yank commandes de récupérer d'anciennes tué texte. De sorte que vous pouvez tuer plusieurs sections de texte dans une ligne, puis les récupérer dans l'ordre. Vous pouvez également parcourir le kill ring avec Alt-y après un coup sec, le retrait de l'extrait de texte et d'insérer l'entrée suivante dans le ring.

Emacs a ces caractéristiques en 1978. Le seul autre grand système à adopter toute mesure est NeXTStep (et maintenant hérité de Cacao). D'autres outils de fournir plus de fonctionnalités pour des tâches spécifiques, peut être prolongé dans des langues plus facile à utiliser que Emacs Lisp, et avoir de plus beaux interfaces visuelles... mais Emacs est mieux à l'édition de texte. C'est pourquoi, une fois que vous savez comment l'utiliser, il est si difficile d'arrêter de fumer.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X