Warum eine Vi-Axt des 21. Jahrhunderts?

Ich weiß nicht mehr wann und unter welchen Umständen, aber irgendwie habe ich Git vor sehr langer Zeit entdeckt. Anfangs habe ich die Vorteile gegenüber anderen Versionskontrollsystemen natürlich nicht ganz verstanden, aber als ich TFS satt hatte, das wir damals im Unternehmen verwendeten, habe ich beschlossen, es auszuprobieren.

Git hat meine Liebe sehr schnell gewonnen und seitdem kann ich mir meine Arbeit ohne sie nicht mehr vorstellen.

Einmal habe ich beim Spielen und Ausprobieren verschiedener Teams versehentlich den Editor-Modus gestartet, und Git hat, wie sich herausstellte, standardmäßig Vim verwendet, was ich noch nie zuvor gesehen hatte. Wie findet normalerweise die erste Bekanntschaft mit diesem Editor statt? Das ist richtig - mit Verwirrung und Neustart des Terminals. Es ist banal - ich konnte den Editor nicht verlassen und ehrlich gesagt dachte ich sogar, dass der Editor dumm fehlerhaft war. Ich erinnere mich sogar, dass ich mich irgendwie gefragt habe - wie zum Teufel ist es passiert, dass so kluge Typen, die so ein mächtiges Ding wie Git erschaffen haben, einen so archaischen, dummen, unverständlichen und hässlichen (wie es mir zunächst schien) Editor wählen konnten?



Aber dann wurde ich neugierig und begann mich zu vertiefen. Ehrlich gesagt war der Weg zur Überwindung Ihrer eigenen Faulheit und erworbenen Gewohnheiten nicht einfach und sehr lang. Aber ich bereue die aufgewendete Zeit und die Nerven nicht. Jetzt benutze (und benutze) ich den Vim-Modus fast überall dort, wo es möglich ist - WebStorm / RubyMine / PyCharm, Sublime Text, Visual Studio, Atom. Der Vim-Modus ist in meinem Terminal und sogar im Browser aktiviert.

Ja, ja, wie sich herausstellte, können Sie mit den Vim-Befehlen sehr effektiv zwischen Registerkarten wechseln, Links folgen, nach unten und oben scrollen, auf einer Seite nach Text suchen und vieles mehr.

Unter Chrome gibt es bis zu drei Erweiterungen - die beliebteste Vimium , die weniger beliebte und leicht veraltete Vrome und die boomende, jungecVim. Ich habe von Anfang an angefangen und bin dann zu Vrome gewechselt. Tatsache ist, dass Vrome eine funky Funktion bietet - die Textbearbeitung in einem Drittanbieter-Editor. Das heißt, Sie gehen zum Beispiel zu StackOverflow, um eine Frage zu stellen, gehen zum Textfeldbereich und ... durch Drücken einer Tastenkombination, die Vim öffnet, können Sie Text mit seiner ganzen Kraft steuern. Beim Speichern kehrt der Text automatisch zum Browser zurück. Fiktion. Leider hat Vimium noch keine solche Unterstützung. Obwohl es ansonsten Vrome weit überlegen ist, habe ich kürzlich zu Vimium gewechselt und wie sich herausstellte, wurden viele Fehler behoben, Funktionen hinzugefügt usw. Obwohl ohne die Unterstützung eines externen Editors, müssen Sie natürlich leiden. cVim - trotz seiner Jugend, einem ziemlich mächtigen und sich schnell entwickelnden Projekt, möchte ich wirklich hoffen, dass der Autor und die Teilnehmer des Projekts nicht aufgeben werden,
Ich benutze Firefox nicht sehr oft, aber soweit ich weiß, regiert Vimperator dort .

Vim ist eine funky Sache, der einzige Nachteil von Vim ist, dass man sich ein Leben lang daran gewöhnt, wenn man sich erst einmal daran gewöhnt hat. Zum Beispiel fehlt mir jetzt der Vim-Modus in Skype, in Word, in Slack usw. Interessanterweise implementieren viele Websites die grundlegende Vim-Navigation - Google Mail, Trello, Github usw.

Wenn Sie jemals Vim ausprobiert haben und sich daran gewöhnen konnten, sollten Sie es auf jeden Fall erneut versuchen. Wenn Sie Zen Vim verstehen wollen, haben Sie etwas Geduld. Starten Sie und gehen Sie durch vimtutor , spielen Sie mit Vim Adventures . Versuchen Sie, nicht nervös zu sein, da Sie sich die ganze Zeit über die gewünschte Tastenkombination merken / suchen müssen. drucken Sie die Spickzettel. Auf den ersten Blick scheint es Ihnen, dass dieses ganze Schaffell die Mühe nicht wert ist und Vim Sie in keiner Weise produktiver macht, aber alles ist genau das Gegenteil. Nehmen Sie mein Wort dafür, es wird Monate dauern, bis Sie den Charme von Vim erfahren. Nach einiger Zeit werden Sie nicht einmal mehr darüber nachdenken - Ihre Finger werden selbst über die Tastatur laufen, und für einen nicht eingeweihten Beobachter werden Ihre Handlungen wie reine Hexerei aussehen. Jemand scherzte sogar irgendwie - sie sagen, dass jede mehr oder weniger bedeutende Vim-Eizellen-Kombination in Mortal Kombat für Fatality gelten wird.

Bist du fasziniert? Lassen Sie uns nun über den wirklichen Editor sprechen (nur ein Scherz).

Seit ich Vim zum ersten Mal für mich entdeckt habe, ist viel Zeit vergangen, aber allmählich zeigten sich mir die Mängel von Vim. Tatsache ist, dass Vim ein Redakteur ist. Ich kann nicht sagen, dass es unmöglich ist, eine vollwertige IDE zu erstellen, aber verdammt schwierig. Und dann bearbeiten wir nicht nur den Text, sondern benötigen eine umfassende Suche und Ersetzung, Intellisense, einen Dateimanager, integrierte Unterstützung für VCS, vorzugsweise ein Terminalfenster, Mehrsprachigkeit und so weiter und so fort. Ja, Vim hat eine Reihe von Plug-Ins, sie können verbunden, unendlich optimiert werden und so weiter, aber im Wesentlichen bleibt Vim im Großen und Ganzen ein Editor. In dieser Hinsicht ist Sublime nicht schlechter. Ich liebe die JetBrains IDE. Webstorm zum Beispiel ist einfach eine großartige Sache. Was ist schlecht Und die Tatsache, dass in beiden Fällen der Vim-Modus unterstützt wird, ist nicht ohne Beschwerden.

Ich möchte also eine Umgebung haben, die den Vim-Modus unterstützt, aber gleichzeitig:
  • mit einer bequemeren integrierten Konfigurationssprache;
  • mit einem praktischen Plug-In-Manager und einer ausreichenden Auswahl davon;
  • mit Unterstützung für mehrere Sprachen (Eingabe und Lokalisierung);
  • mit bequemer Befehlsnavigation (ala Sublime).

Und was haben wir am Ende? Und wir haben Emacs. Ja, ja, sei nicht überrascht.

Eine müßige Neugier veranlasste mich, Emacs zu studieren, und auch einen Kollegen, der Vim zehn Jahre vor Emacs verwendet hatte, also einen Freund von mir , von dem ich meine Konfiguration für Vim (und später für Emacs ) gezogen hatte.

Zuerst ließen mich die bösen Emacs überhaupt nicht rein. Ich habe bei der Arbeit Witze gemacht und gesagt, dass Emacs ein so großes Ego hat, dass es nicht in meinen Computer passt. Um es zu versuchen, habe ich nackte Emacs heruntergeladen und gestartet. Ich sah. Es hat mir nicht gefallen. Dann habe ich versucht, das sogenannte Starter Kit herunterzuladen - und es hat mir nicht gefallen. Nun, ich kann nicht ohne den Vim-Modus leben, auch nicht knacken. Und dann habe ich den Evil-Modus entdeckt. Und dann wurde mir klar, dass ich mich trotzdem in meiner Faulheit geirrt hatte und ich musste es früher mit Emacs versuchen.

Ich bin gerade zu Emacs gewechselt und werde vielleicht keinen Rat geben. Ich kann nur sagen, dass mir sehr schnell klar wurde, wie flexibel seine Umgebung war. Emacs ist kein Editor, sondern ein Konstruktor, aus dem Sie eine IDE, ein Textverarbeitungsprogramm und einen Organizer nach Farbe und Geschmack zusammenstellen können. Zum Beispiel: Ich dachte, warum nicht meine Evernote-Notizen direkt in Emacs fahren? Ich habe das Plugin gefunden, installiert, konfiguriert - ich benutze es. Wow. Das zweite Beispiel: Ich muss ziemlich oft auf Englisch schreiben und einen Thesaurus verwenden. Es stellte sich heraus, dass es dafür mehrere Plugins gab - ich musste mich entscheiden. Das von mir ausgewählte Fenster zeigt ein Fenster mit einer Liste von Variantenwörtern an. Aber ich brauche volle Automatisierung; Beim Öffnen eines Fensters mit Optionen muss der Cursor in dieses Fenster springen. Und dann, nachdem ich die entsprechende Option ausgewählt habe, könnte ihn leicht durch das Suchwort ersetzen und das Fenster schon als unnötig schließen. Es stellte sich heraus, dass solche Tricks sehr einfach zu programmieren sind. Und jetzt muss ich nicht mehr im Internet nach einem Thesaurus suchen, und das Finden und Auswählen von Optionen dauert buchstäblich Sekunden.

Abschließend möchte ich sagen, dass Sie natürlich endlos darüber streiten können, welcher Editor besser ist. Trotzdem denke ich - ein echter Entwickler sollte beides beherrschen. Was ich dir wünsche Und erst wenn Sie sie beherrschen, werden Sie verstehen. Warum brauchen moderne Programmierer vor fast vierzig Jahren Redakteure?

Jetzt auch beliebt: