Ich benutze eine IDE (Eclipse), um Software zu entwickeln. Warum sollte ich zu vim oder emacs wechseln? [geschlossen]

31

Mein Tagesjob ist Java / Webentwickler. Ich benutze Eclipse seit ca. 5 Jahren. Ich denke, es ist ausgezeichnet und ich benutze auch Webstorm für Javascript und html / jsp.

Ich muss gelegentlich in den Server ssh und mit Konfigurationsdateien herumspielen; dafür benutze ich vi und es schmerzt mich. Ich muss eine Webseite aufrufen, auf der die Syntax / Befehle aufgeführt sind: Drücken Sie die Esc-Taste, dann das Sternchen, drehen Sie sich dreimal und der Text wird zwei Zeilen über Ihrem Cursor eingegeben . Es ist so uninteressant für mich, und ich stelle mir jeden vor, der Ende der achtziger und neunziger Jahre aufgewachsen ist.

Hier sind die Hauptgründe, aus denen ich denke, dass Eclipse brillant ist (und ich nehme andere IDEs an) und nicht zu Emacs und / oder Vim wechseln.

  • Fehler beim Hervorheben, da das Projekt nicht neu kompiliert werden muss.
  • Code-Assist.
  • Refactoring.
  • Eröffnungsansage / Eröffnungserklärung.
  • Vollständig in die Quellcodeverwaltung integriert.
  • Debugger ist enthalten.
  • Verfügbarkeit von Plugins von Drittanbietern - zB findbugs / checkstyle.

Eines der Argumente, die ich höre, ist, dass Sie mit emacs / vim Ihre eigenen Plugins erstellen können - okay, aber Sie können dies auch in Eclipse tun. Das muss man aber nicht, da schon alles da ist! Es ist wie zu sagen, kaufen Sie dieses halb gebaute Auto, Sie können den Rest selbst bauen.

Warum benutzen die Leute Emacs / Vim? Arbeiten Leute, die es verwenden, tatsächlich an komplexen objektorientierten Projekten in großen Organisationen?

Was sind die Gründe, um zu Vim / Emacs zu wechseln. Wie würde meine Produktivität steigen, wenn ich wechseln würde?

NimChimpsky
quelle
1
Können Sie bitte den Titel umformulieren? Das ergibt keinen Sinn.
Vetle
@vetler besser?
NimChimpsky 18.11.10
5
Ich benutze normalerweise nanoeher als vimnur, weil ich eine CLI nicht oft genug benutze, um alle vimBefehle gelernt zu haben . Wenn Sie es nur gelegentlich verwenden, würde ich denken, dass etwas Einfaches nanoIhnen besser dienen würde ...
Dean Harding
Viel besser! :)
Vetle
Vor langer Zeit, als ich in Unix eingeführt wurde, habe ich sowohl vi als auch emacs ausprobiert. Am Ende habe ich emacs verwendet, weil vi so seltsam und nicht offensichtlich schien (ich meine, wenn es umständlich ist, Text an das Ende einer Zeile anzuhängen, da stimmt doch was nicht). Und die Kommando- / Bearbeitungsmodi von vi haben für mich persönlich nicht funktioniert.
Skizz 18.11.10

Antworten:

36

Verwenden Sie ein beliebiges Werkzeug, das Ihren Anforderungen entspricht. Die Kenntnis von VIM oder Emacs ist eine gute Sache, wenn Sie sich jemals bei einem Remote-Server anmelden und eine Konfigurationsdatei oder ähnliches bearbeiten müssen. Ich kenne VIM einigermaßen gut, aber ich würde es nicht verwenden, um in Java zu entwickeln. Dafür sind Eclipse, Netbeans usw. gemacht.

user281377
quelle
5
@NimChimpsky Ich benutze Emacs für einige Sprachen wie C, Ruby, Python, Haskell. Aber für Java oder C # halte ich es für besser, eine IDE zu verwenden. In meinem Job benutze ich C # mit VS. Verwenden Sie einfach das Werkzeug, das Sie für produktiver halten.
hiena
8
Es ist lustig, dass, wenn Sie jemanden fragen, warum Sie vi lernen, die Antwort IMMER lautet, dass Sie sich eines Tages bei einem Remote-Server anmelden und eine Konfigurationsdatei bearbeiten müssen. Ich frage mich, wie viele Entwickler dies tatsächlich tun mussten.
Oliver Weiler
2
PS: Ich persönlich liebe vi, aber nicht, weil ich denke, dass es der beste Editor der Welt ist, sondern weil ich mich dadurch überlegen fühle :-).
Oliver Weiler
2
@Helper-Methode: Das muss ich doch ab und zu machen! Wenn Sie nicht ausschließlich in einer MS-Umgebung arbeiten, muss dies geschehen.
user281377
1
Um kleine Änderungen in Konfigurationsdateien vorzunehmen, benötigen Sie sicherlich weder Emacs noch Vim, obwohl diese in Ordnung sind, aber es lohnt sich nicht zu lernen, wo Nano genauso gut verwendet werden kann.
Anto
39

Emacs und Vi haben noch einen Platz.

  • Sie sind in Unix- und Unix-ähnlichen Umgebungen allgegenwärtig und können auf den meisten anderen gängigen Plattformen installiert werden.

  • Sie sind beliebt und stabil, sodass es sich langfristig auszahlt, sie einmal zu lernen.

  • Sie laufen über ein Textterminal, sodass Sie sie in Telnet- und SSH-Sitzungen verwenden können.

  • Sie bieten Bearbeitungsmodi und Syntaxhervorhebungen für eine Vielzahl von Sprachen, einschließlich sehr neuer und sehr seltener Sprachen. (Dies ist einer meiner Lieblingsvorteile.)

Der Schlüssel zum Verständnis dieser Programme ist jedoch zu wissen, welche Probleme sie ursprünglich lösen sollten. Bei Vi wurden Textdateien über Terminalverbindungen bearbeitet, die nur 300 Baud lang waren. In dieser Umgebung möchten Sie keine Menüs anzeigen oder den Bildschirminhalt radikal ändern, wenn Sie dies vermeiden können.

Emacs sollte in einer schnelleren Umgebung eingesetzt werden. Die Stärke war, dass es einmal geladen und nie verlassen werden konnte. Der Benutzer konnte jede andere Aufgabe, die er von Emacs benötigte, ausführen, ohne das Unternehmen zu verlassen, und dies häufig auf freundlichere Weise, als wenn er dies von der Befehlszeile aus tun müsste. Die Benutzer hatten keine grafische Desktop-Umgebung mit einem geöffneten Emacs-Fenster. Mit Emacs kann der Benutzer fast jede normale Aufgabe (und viele seltsame) mit nur wenigen Tastendrücken ausführen. Alles, was nicht eingebaut ist, kann mit Skripten versehen werden.

Offensichtlich haben sich die Bedürfnisse der Menschen seit Einführung dieser Programme stark verändert, aber sie haben immer noch einige echte Stärken. Ich habe die Grundlagen von beiden gelernt und benutze sie wöchentlich. Dennoch denke ich, dass ihre Stärken oft überbewertet sind. Sie haben einen so legendären Status erreicht, dass die Leute ihre Schwächen nicht eingestehen und eher denken, dass sie etwas falsch machen, wenn Emacs / Vi sie nicht produktiver macht als Eclipse oder Visual Studio.

Nun zum Punkt.

Java ist eine beliebte Sprache mit hervorragender Unterstützung für Eclipse. Sie entwickeln wahrscheinlich Code auf einem modernen Betriebssystem, mit dem Sie häufig auftretende Aufgaben schnell erledigen und andere Skripte erstellen können, ohne dies über Ihre IDE tun zu müssen. Ich glaube nicht, dass es Sinn macht, wenn Sie wechseln.

PeterAllenWebb
quelle
+1 für seltene sprachen, ich würde hinzufügen, dass dynamische sprachen und sehr schwer zu analysierende sprachen auf emacs nicht so sehr von vorteil sind, aber eine IDE kann ihnen nicht viel vorteil gegenüber emacs
jk
16

Ich benutze Emacs seit mehr als 5 Jahren. Ich kann Ihnen nicht mehr sagen, welche Tastenkombinationen ich verwende, meine Finger erinnern sich nur noch daran und müssen auf die Tastatur schauen, um zu sehen, was meine Hände tippen.

Vor ein paar Jahren habe ich angefangen, Eclipse zu verwenden, und es gibt keine Chance, dass ich frei zu Emacs zurückkehre. Tut C-x r SPC 1mir leid, Muskelgedächtnis, auch wenn du alt bist , macht Eclipse mich viel produktiver und das ist es, was zählt.

Nein, ich glaube nicht, dass Sie wechseln sollten , aber Sie sollten ein paar Stunden investieren, um die Grundlagen von Vim zu lernen, damit Sie nicht mehr nachschlagen müssen.

Martin Wickman
quelle
Können Sie erläutern, was Sie in Eclipse schneller als in Emacs tun können?
Gordon Gustafson
1
Heutzutage denke ich nicht mehr, dass Eclipse so gut ist. Beim Refactoring und der Tatsache, dass es die Semantik einer Programmiersprache versteht, die das Suchen usw. erleichtert, schlägt es Emacs bei weitem.
Martin Wickman
7

Warum sollte ich zu vim oder emacs wechseln?

Höchstwahrscheinlich sollten Sie nicht wechseln . Vim ist ein ausgezeichneter, leistungsfähiger Texteditor, aber er ist kein Ersatz für eine IDE und sollte es auch nicht sein! Eclipse ist sehr gut in der Untermenge von IDE-spezifischen Dingen, und vim ist sehr gut in der Untermenge von Textbearbeitungs-spezifischen Dingen. Jeder hat seinen eigenen Fokus.

Ich weiß, dass es Plugins gibt, die die Funktionalität von vim erweitern, so dass es viele der gleichen IDE-spezifischen Dinge ausführen kann, die eine IDE kann. Aber es ist immer noch nicht die Hauptstärke von vim, und eine IDE wird es fast immer besser können. Denn darauf konzentrieren sie sich.

Was ich in meiner täglichen Arbeit mache, ist , Visual Studio und vim zum Bearbeiten von C # zu verwenden. Es funktioniert sehr gut für mich und ich würde nie einen von ihnen herausschneiden, um mich ausschließlich auf den anderen zu verlassen.

Was Emacs angeht, bin ich kein Experte, aber ich glaube nicht, dass es mit den IDE-Funktionen von Eclipse in Bezug auf Java mithalten kann (bitte korrigieren Sie mich, wenn ich mich irre). Wenn Sie in Lisp entwickeln, dann kann es sicherlich als eine ausgezeichnete IDE angesehen werden, aber ich denke nicht, dass es die gleiche Unterstützung für Java hat.

Wenn Sie also einen leistungsstärkeren Texteditor neben Eclipse verwenden möchten, würde ich Ihnen definitiv empfehlen, entweder vim oder emacs zu lernen. Aber als Ergänzung, nicht als Ersatz . Auf lange Sicht kann es sich wirklich auszahlen, obwohl keiner von beiden eine besonders einfache Lernkurve hat:)

Hier ist eine schöne Lektüre über die Stärken von Vim. Und hier ist eine Liste einiger netter Tricks, die du machen kannst.

Nick Knowlson
quelle
6

Lesen Sie dieses Dokument (PDF), um zu sehen, warum Emacs leistungsstark ist. Sobald Sie Lisp kennen, ist es fast trivial einfach, Erweiterungen dafür zu schreiben (ich habe mehrere Versionsverwaltungs-Workflows und -Bereitstellungen, die über ein Add-On, das ich selbst geschrieben habe, geschrieben wurden employer-mode). Was Sie oben aufgeführt haben;

  • Fehler beim Hervorheben, ohne dass das Projekt neu kompiliert werden muss. Nicht für alle Sprachen sinnvoll. Sie können problemlos REPLsviele Sprachen einbinden . Gerade jetzt, ich habe ruby, python, haskell, common lisp, schemeund erlangalle hooked in Emacs. Übrigens hat das JavaScript-Addon js2-modeeine vollständige inkrementelle "Kompilierung", so dass es Dinge wie Syntaxfehler für Sie hervorhebt, also ist es sicherlich möglich, aber nicht die Norm
  • Code-Assist. Ich glaube, es gibt ein Addon dafür namens " Emacs Wiki"autocomplete.el
  • Refactoring. Ich nehme an, Sie meinen "automatisiertes Refactoring", was nicht in allen Sprachen Sinn macht. Wahrscheinlich gibt es für einige, aber ich weiß es nicht.
  • Eröffnungsansage / Eröffnungserklärung.
  • Vollständig in die Quellcodeverwaltung integriert. Es hat ein git-modeeingebautes Emacs ab 22.3, nicht sicher über andere Quellcodeverwaltung
  • Debugger ist enthalten. Sprache für Sprache hier. Wenn es eine REPL-Integration gibt, gibt es im Allgemeinen auch einen Emacs-Debugger, aber er ist nicht universell
  • Verfügbarkeit von Plugins von Drittanbietern - zB findbugs / checkstyle. Ich weiß nichts über diese speziellen, aber es gibt viele Addons dafür, vom Warum-ist-das-nicht-in-der-Basis-Paket-nützlich bis zum absolut leichtfertigen

Das heißt, wenn Sie Lisp nicht mögen und nicht vorhaben, es zu lernen, kann ich Emacs nicht wirklich empfehlen. Der Gewinn, den Sie daraus ziehen, ist das Erlernen des Werkzeugbaus und das Anwenden dieser Prinzipien, um Ihre eigene Produktivität zu steigern, ohne eine Reihe von Mods von der Stange zu bekommen und sie aneinander zu reihen.

Inaimathi
quelle
Die Notwendigkeit eines bequemeren Haskell-Editors ist mein Haupttreiber, der versucht, Emacs oder Vim zu lernen (ich mag Emacs besser;)) VS ist großartig für C #, F # usw., aber der Mangel an guten Editoren für die meisten kleineren Sprachen macht Emacs sehr ansprechend als Allzweckwerkzeug.
CodexArcanum 18.11.10
Zumindest in Emacs-land verwischt CEDET cedet.sourceforge.net (Sammlung von Emacs-Entwicklungsumgebungstools) die Grenze zwischen Texteditor und IDE. Dies richtet sich in erster Linie an C / C ++ (und andere) und bietet Dinge wie einen Projektbrowser (und automatische Makefile-Generierung), Code-Vervollständigung, Code-Unterstützung (Prototyp der Funktion am Cursor anzeigen), Sprung zu anderen Verwendungen von var / function, auto gen Konstruktoren / Destruktoren usw. Es ist die massive Erweiterbarkeit von Emacs, die diese Art von Werkzeug ermöglicht.
Chris
3

Ich sehe hier zwei Möglichkeiten:

  • Verwenden Sie stattdessen Nano - Dies ist genau wie Notepad in Windows für Linux. Wenn Sie keine Tastenkombinationen benötigen, tippen Sie einfach nano somefile.confund Sie haben einen netten Editor. Sie können sogar Syntaxhervorhebungen hinzufügen
  • Behalten Sie das Programm lokal bei und synchronisieren Sie es über SCP mit dem Server. Das mache ich, wenn ich an einer kleinen Website arbeiten muss, aber nicht genügend Ressourcen habe, um Apache lokal auszuführen. Ich rufe einfach WinSCP auf, rufe die gewünschten Verzeichnisse auf und verwende "Remote-Dateien auf dem neuesten Stand halten". Änderungen werden normalerweise in Sekunden angezeigt
  • Verwenden Sie ein Plugin in Ihrem Editor / Ihrer IDE, um "direkt" mit der Remote-Datei zu arbeiten - Bevor ich mich um die Versionskontrolle gekümmert habe, habe ich einfach Notepad ++ (meinen bevorzugten Editor) gestartet und die Dateien mit NppFTP bearbeitet. NppFTP ist schneller als die WinSCP-Option, da Npp es sofort mitteilt, wenn eine Datei gespeichert wird, die sofort hochgeladen wird. Aber wie gesagt du verlierst die Revisionskontrolle. Ich bin mir sicher, dass es ein Plugin für Eclipse gibt, das Sie verwenden können

Hoffe das hilft

TheLQ
quelle
+1 für Nano, ich muss es lieben.
Dashogun
+1 Nano ist großartig. Wenn ich es nur vor endlosen Jahren mit vi gewusst hätte.
Oliver Weiler
2

Persönlich mag ich Vim, weil es sich hervorragend zum Bearbeiten von Texten eignet, dh sehr ergonomisch (die Tastenkombinationen belasten meine Hände nicht so sehr und ich muss die Maus nicht so oft benutzen) und effizient, wenn Sie erst einmal den Dreh raus haben es (was natürlich Zeit und Geduld erfordert, da es nicht der intuitivste Editor für Anfänger ist).

Ich würde jedoch Eclipse für die umfangreiche Java-Entwicklung aufgrund der vielen verfügbaren Funktionen vorziehen. Natürlich gibt es einige Plugins , die Eclipse etwas erträglicher machen können.

user7908
quelle
1

Wenn Sie mit Eclipse zufrieden sind, wechseln Sie nicht.

Wenn Sie Eclipse überall einsetzen können, wechseln Sie nicht.

Wenn Ihr Projekt / Unternehmen so gut wie ausschließlich Eclipse verwendet, wechseln Sie nicht.

Wenn Sie nur selten etwas anderes benötigen, drucken Sie einen Spickzettel für einen der Editoren aus und ziehen Sie ihn bei Bedarf aus der Schublade. Kehren Sie dann zu Eclipse zurück.

Siehe die (gleiche) Frage bei SO: https://stackoverflow.com/questions/1346820/what-are-the-efficiencies-afforded-by-emacs-or-vim-vs-eclipse

Zur Beantwortung: "Arbeiten Leute, die es verwenden, tatsächlich an komplexen objektorientierten Projekten in großen Organisationen?" - Halte deinen Hut fest, aber die Antwort lautet "Ja". Ich habe an Projekten mit zig Millionen Codezeilen gearbeitet, die im kritischen Pfad für das Entwerfen der CPU verwendet wurden, auf der der Computer läuft, auf dem Sie diese Frage stellen. Und die Leute versuchten es mit Eclipse, fanden es aber zu langsam und klobig (obwohl wir zugegebenermaßen kein Java verwendeten).

Trey Jackson
quelle
1

Sowohl emacs als auch vim sind sehr konfigurierbare und leistungsstarke Editoren, und beide bieten große Produktivitätsgewinne, sobald die grundlegenden Konzepte erfasst sind.

Vi gewinnt mit im Wesentlichen satzbasierten Operationen. Das Ändern aller Instanzen von "foo" in "bar" in einer Klassendefinition ist beispielsweise ein Einzeiler.

Emacs ist ebenso mächtig, aber Sie müssen Emacs Lisp lernen, um es voll auszunutzen.

In beiden Fällen lohnt es sich nur zu wechseln, wenn Sie Emacs oder Vi für alles verwenden möchten .

Larry Coleman
quelle
1

Das beste Werkzeug (kurzfristig) ist eines, mit dem Sie sich bestens auskennen.

Die Leute benutzen über 30 Jahre alte Technologie, weil sie damit sehr gut umgehen können. Sie haben ihre Arbeitsabläufe und Gewohnheiten um diese Werkzeuge herum aufgebaut. Wenn Sie mit einer modernen IDE wie Eclipse besser vertraut sind, gibt es nicht viele Gründe für einen Wechsel. Das Erlernen einer effizienteren Nutzung von Eclipse ist eine bessere Investition in Ihre Zeit (z . B. Verwendung von Mylyn ).

dbkk
quelle
1

Ich versuche gerade, von NetBeans zu vim zu wechseln. Das Erlernen von vim erfordert Zeit und Übung, aber ich sehe seine Vorteile gegenüber, nennen wir sie in bestimmten Fällen "GUI-Editoren".

Aber im Gegensatz zu Ihnen codiere ich hauptsächlich Ruby, und ich brauche nicht die ganze Code-generierende, automatische Vervollständigung, Refactor-my-Code-Black Magic, die NetBeans und Eclipse bieten. Wenn ich Java oder C # codieren würde, würde ich mit Sicherheit nicht versuchen, überhaupt zu wechseln.

Mladen Jablanović
quelle
Ich habe Vim jahrelang benutzt. Es funktioniert sehr gut mit Ruby und sobald Sie die Lernkurve erreicht haben, werden Sie die Effizienz mögen.
Larry Coleman
1

Als langjähriger Benutzer von Emacs finde ich Emacs als Bearbeitungs- und Entwicklungsumgebung recht komfortabel (und in gewissem Umfang integriert es sich auch in den Erstellungsprozess, die Versionskontrolle, die schnelle kontextsensitive Suche und dergleichen, was ich als geeignet erachte es als "IDE").

Ich fühle mich auch recht wohl mit vi und vi-ähnlichen Editoren (ich habe mit ed angefangen, weil ich dachte, dass Emacs zu komplex ist; im Nachhinein ist das rückwärts, aber es hat mir eine solide Grundlage für das zukünftige Lernen von vi gegeben). Ich benutze vi hauptsächlich für "kleine schnelle Änderungen", hauptsächlich auf entfernten Rechnern, auf denen Emacs nicht installiert ist.

Für Ihr Szenario "Ich muss gelegentlich in den Server sshen und mit Konfigurationsdateien herumspielen. Für dieses Szenario verwende ich vi" empfehle ich eine kleine Reihe von Befehlen und einige allgemeine Überlegungen zu vi:

  • Vi ist nicht modal, sondern hat die Befehle "a" (Anhängen), "A" (Anhängen am Zeilenende), "i" (Einfügen) und "I" (Einfügen am Zeilenanfang), wobei der einzufügende Text verwendet wird als Argument und Signalisierung von "Befehlsende" mit Esc
  • h, j, k und l sind Bewegungstasten. Es KANN mit den Pfeiltasten funktionieren, aber da die typische Sequenz "Ich bin eine Pfeiltaste" im VT-Stil mit Esc beginnt, unterbricht dies den Befehl zum Einfügen von Text, an den Sie nicht denken
  • : linenum bewegt Sie zur Zeile linenum , Zeile 1 ist die oberste und Zeile $ die unterste
  • . ist der Befehl "Letzten Befehl wiederholen" (siehe erster Aufzählungspunkt)

Es sollte nicht länger als ein oder zwei Stunden dauern, um mit vi herumzuspielen, bis ich weiß, dass ich eine Textdatei souverän bearbeiten kann, aber möglicherweise nicht effizient genug bin, und das ist so gut, wie Sie es wahrscheinlich müssen . Andernfalls sollte jeder Editor, der sich nicht mit der automatischen Konvertierung zwischen Tabulatoren und Leerzeichen befasst, für Ihre Zwecke "gut genug" sein. Wenn Eclipse auf all Ihren Remote-Servern installiert ist , sehe ich das nicht als großes Problem an.

Vatine
quelle
Warum runter stimmen?
Vatine
1

Ich bin sehr ein Emacs-Typ. Ich benutze es für alle meine Programme und ermutige meine Mitarbeiter aktiv, es auch zu verwenden (und sie ignorieren mich aktiv). Ich finde es viel produktiver als jede andere IDE, und ich würde es niemals ändern.

Es sei denn, ich schreibe Java oder C # (und ich stelle mir vor, es gibt andere Sprachen in dieser Kategorie). Sie haben so große Bibliotheken von Sachen mit langen Namen, dass die Gewinne ich verwenden Emacs bekommen vollständig bei dem Versuch , alles zu erinnern , verloren gehen.

Ich empfehle Ihnen auf jeden Fall, Vim und / oder Emacs zu probieren . Aber Sie werden wahrscheinlich wieder in Eclipse für Java landen.

MattBelanger
quelle
0

Ich habe kein Problem mit den verschiedenen verfügbaren UNIX-Editoren, aber ich benutze sie immer nur aus Protest. Nicht, wie gesagt, weil ich ein Problem mit ihnen habe, sondern weil, wenn ich sie verwenden muss, dies bedeutet, dass unser Bereitstellungsprozess in irgendeiner Weise mangelhaft ist.

Dies verdient wahrscheinlich etwas mehr Kontext: Ich arbeite an umfangreichen E-Commerce-Lösungen. Alles, was den Betrieb unserer Systeme regelt, wird durch einen Ein-Klick-Build / Deployment-Prozess generiert. Wir haben eine Reihe von Testumgebungen, sodass ich jederzeit über Eclipse Änderungen vornehmen, diese in cvs einchecken und einen Build / Deploy auslösen kann, um zu beweisen, dass mein Fix funktioniert hat. Wenn ich also in 'vi' herumhacke, können wir die einstündige Umstellung einer Bereitstellung nicht abwarten, oder die Bereitstellung deckt nicht die Dateien ab, die ich bearbeite, und muss erweitert werden, um dies zu tun also (ansonsten werde ich mich das nächste mal in vi hacken, wenn die fragliche Datei geändert werden muss).

DanW
quelle
0

Persönlich treiben mich beide Programme an die Wand. Das Problem mit Eclipse ist, dass es so langsam ist, wenn Sie an einem großen Projekt arbeiten, und dass es dann keine 'DGLP-Indizierung' oder was auch immer ausführt. Möchten Sie Ihr Repository aktualisieren? Noch 15 Minuten? Ach ja, und wie wäre es mit diesem tollen Trick, bei dem Sie einen Text mit gedrückter Strg-C-Taste und dann mit gedrückter Strg-P-Taste an einen anderen Ort verschieben, um eine völlig andere Datei zu öffnen und etwas anderes zu überlagern an erster Stelle. Oh, und habe ich schon erwähnt, dass ich mit Eclipse an einem großen Projekt über einen VPN gearbeitet habe? praktisch unmöglich.

Was Vim angeht, ist es nett und schnell, vorausgesetzt, Sie kennen die Vielzahl von völlig sinnlosen Tastenkombinationen, mit denen Sie etwas tun und viel Glück haben, wenn Sie sich versehentlich in einem unbekannten Modus befinden. Auch bei vim muss man so ziemlich die gesamte Projektverzeichnisstruktur im Kopf haben, um die richtigen Dateien zu öffnen. Der Hauptvorteil von Vim besteht darin, dass Sie theoretisch Code schneller erstellen können, weil alle Schlüssel vorhanden sind. In Wirklichkeit ist es mir egal, wie viel Text ich schreibe, nicht die Textmenge, auf die es ankommt, sondern die Qualität des Codes und häufig die Qualität Code erfordert, stundenlang auf Dutzende von Dateien zu starren, bis Sie genau das Richtige für die Eingabe herausgefunden haben (was normalerweise sehr kurz ist).

Was ich mir wünsche, ist, dass jemand ein Befehlszeilenprogramm wie vim schreibt, das tatsächlich eine Verzeichnisstruktur wie Eclipse auf der Seite hat oder etwas, von dem aus Sie Dateien erweitern / reduzieren und öffnen können. Weiß jemand so etwas?

Dallas Caley
quelle
3
Sie können einfach ein Verzeichnis in einem Puffer öffnen und es listet die Dateien in dem Verzeichnis auf. Bewegen Sie den Cursor über die Datei, die Sie bearbeiten möchten, und drücken Sie die Eingabetaste. Die Datei wird geöffnet. Eine Vielzahl von vim-Plugins (wie NerdTree) bieten komplexere Funktionen wie das automatische Aufteilen des Fensters, das Öffnen der Datei in einem Bereich und das Beibehalten des Verzeichnisbaums im anderen. Die allgemeine Schwierigkeit bei vim und emacs besteht nicht darin, dass ihnen Funktionen fehlen, sondern darin, dass die Funktionen durch das Durchsuchen von Menüs nicht ohne weiteres erkennbar sind. Lesen Sie hierzu die Hilfedokumentation.
Charles E. Grant
Der letzte Teil Ihrer Antwort sollte eine andere Frage sein.
Matthieu
Wenn man die Arbeit "sinnlos" benutzt, um die Tastenkombinationen zu beschreiben, kommt man als Amateur davon. Auch Nerd Tree macht das, was Sie beschreiben, wenn er in vim eingesteckt ist.
Arunav Sanyal
-1

Wenn Sie mit VIM oder EMACS nicht zufrieden sind, können Sie auf diesem Computer nach anderen Texteditoren suchen. Möglicherweise gibt es eine Variante von nedit oder gedit oder etwas Ähnliches, das Sie verwenden können und das bekanntere Befehle enthält (Strg x, c, v und s tun zum Beispiel das, was Sie erwarten).

Sie haben wahrscheinlich mehr als zwei Möglichkeiten für Ihre Distribution. Es lohnt sich, einen Blick darauf zu werfen.

anon
quelle