VIM oder nicht VIM

njester

Cadet 2nd Year
Registriert
Aug. 2012
Beiträge
25
Hi,

ich bin zur Zeit am überlegen mich in VIM einzuarbeiten und darauf umzusteigen. Allerdings ist der Umstieg schon nicht ganz ohne.

Daher meine Fragen:
- lohnt sich der Umstieg?
- Ist man danach wirklich schneller/produktiver?
- Welche Erfahrungen habt Ihr mit VIM gerade im Vergleich zu konventiollen Texteditoren?
- Gibt es gute Bücher die den Einstieg erleichtern? (Config, tipps, etc. )

Danke und Grüße

njester
 
Für mich kommt es ein bißchen drauf an wofür du es nutzen möchtest. Zum editeren von Config-Dateien oder ähnlichem in der Shell finde ich es super. Wenn man dann in ner IDE die Möglichkeit das VIM Eingabe Schema zu nutzen ist das echt praktisch.

Aber fürs reine Programmieren würde ich mich nicht extra einarbeiten.
 
Oh das habe ich doch ganz vergessen zu erwähnen.
Anwendungszweck: Frontend Webentwicklung.
 
Vim hat ein eigenes Tutorial. Mit dem würde ich dir empfehlen zu arbeiten.

Zum reinen coden würde ich andere Sachen bevorzugen.
 
Kommt mMn. ein wenig drauf an, wie häufig man damit arbeiten will. Wenn man nur alle paar Tage hier und da etwas damit macht, ist mMn. die Lernkurve zu hoch, bzw. man vergisst auch zuviel wieder. Wenn man täglich damit arbeitet kann es imho ein bedeutender Produktivitätsgewinn sein. Man kann auch erst mal mit einer Grundkonf. und ein paar -nefehlen anfangen und sich dann nach und nach neue Kommandos aneignen.
 
ist nicht verkehrt wenn man vim kann.. nutze ich auch wenn ich gerade im terminal bin.. die meisten editoren und ides bieten einen vim modus und etwas mehr kompfort..

aber vim läßt sich schon sehr anpassen
 
vim ist mein Favorit auf dem Terminal und ein paar Kniffe hab ich auch drauf, aber zum Entwickeln würde ich mir das nicht ans Bein binden wollen. Ich weiß, man kann vim weit aufbohren, aber das wäre mir die Mühe nicht wert. Sich in Sublime oder Atom richtig einzuarbeiten wird dich genau so produktiv machen, wie du es mit vim werden könntest. Das dürfte aber wesentlich intuitiver ablaufen, funktioniert zudem cross-plattform und man kann auch mal einem Kollegen helfen/was beibringen. vim ist ja jetzt nicht so verbreitet bei Entwicklern, zumindest im Web-Bereich.

Es würde mich vermutlich auch etwas verwirren, wenn ich lokal auf einem aufgebohrten vim arbeite und dann zwischendurch auf Servern unterwegs bin, wo natürlich keinerlei Plugins usw. installiert sind.

kling1 schrieb:
ist nicht verkehrt wenn man vim kann..
schließe ich mich aber an, wobei kann natürlich vieles heißen kann. Grundlagen sollte man schon haben.
 
Würd mir die Zeit sparen... auf jedem halbwegs Linux (>= Raspberry) hat man den einfach zu benutzenden Midnight_Commander/, welchen man auch ohne komplizierte Shortcuts bedienen kann.
Spätestens wenn man 'richtige' Projekte umsetzt die aus deutlich mehr als einer Datei bestehen würde ich immer eine vernünftige IDE wie QTCreator bevorzugen.
Klar - wenn du oft auf terminal-ebene Headless-Linux-Systeme administrierst und nicht jedesmal mc nachinstallieren darfst wirst du um einen der reinen Konsolen-Editoren nicht herumkommen aber zum Entwickeln ist das sicher nix richtiges.

Versuch zB mal: Dateiübergreifende umbenennen von Methoden aber nur dort wo wirklich diese Funktion verwendet wird und nicht dummes search&replace an allen Stellen wo gleichnamige Funktionen existieren.
Oder: Versuch mal alle realen Verwendungen einer Funktion zu finden ohne auch andere Stellen angezeigt zu bekommen, wo eine gleichnamige Funktion existiert. (Sowas passiert zB bei MyClass::toString()).
Oder probier mal in der Entwicklungsumgebung zu Debuggen wenn mehrere Bibliotheken verwendet werden... ich glaube kaum das sowas mit nem reinem Texteditor Spaß macht.
 
Ja, es lohnt sich. Vorallem die Grundlagen der Navigation helfen dir die Maus zu vermeiden und sind dank Plugins auch in den meisten IDEs anwendbar.
 
Ich würde VIM, Emacs und wie sie alle heißen niemals für professionelle Entwicklungen nutzen, weder für Backend und schon gar nicht für Frontendentwicklung.

Es gibt so gute Entwicklungsumgebungen mittlerweile, mit so vielen hilfreichen Tools und Designern - wer das nicht nutzt ist wirklich selbst schuld. Selbst Visual Studio ist mittlerweile ganz brauchbar geworden - C++ Refaktor, besserer Debugger etc. und für Android oder Webentwicklung gibt's eigentlich nichts besseres als die IDE´s von Jetbrains, egal ob Java, HTML5, Javascript, Android was auch immer.

Und für Leute die kein Geld ausgeben wollen ist das kostenlose Eclipse auch nicht so schlecht, auf jedenfall besser als nur nen Texteditor. Zu QT Creator kann ich nichts sagen, das kenn ich nicht.

Klar man muss für manche Aufgaben mal ein/zweimal mehr klicken, aber ganz Ehrlich das ist es mir Wert.
Dafür habe ich z.b. automatische Codevalidierung und Formatierung sowie die ganzen Refaktoringwerkzeuge - Klasse umbennen in 7 Projekten - 5 Sekunden.

Ein Nachteil gibt's aber, die meisten sind nicht wirklich Performant aber das wird auch immer besser.

Meine Meinung mit über 25 Jahren Programmiererfahrung tätig in vielen Bereichen (Lowlevel, Backend, Frontend, Testing, Visualisierung, Multimedia -und Spieleentwicklung).
 
Zuletzt bearbeitet:
Man kann auch mit VIM code refactoren, code formatieren und code validierung....das geht alles über plugins. Und genau das ist der Punkt....man kann mit VIM so ziemlich alles machen, aber man muss sich erst die Plugins raussuchen, konfigurieren, einarbeiten etc. Am Ende hat man ein VIM, dass aussieht wie eine IDE....warum also nicht gleiche eine IDE. Besser noch, für viele IDE gibt es VIM Plugins..mit jenen welchen man dann ein bisschen besser mit der Tastatur arbeiten kann.

Ich würde also auch sagen, such dir eine IDE, lerne deren Tastenkombies und du bist genauso produktiv wie mit VIM.
 
Miuwa schrieb:
Von was willst du denn überhaupt umsteigen?

Von sublime und atom.

Aber so wie ich das verstehe kann es kein schaden sein sich in VIM einzuarbeiten. Jedoch sollte ich VIM dann auch fest nutzen da sonst alles für die Katz war. Aber wenn ich mir schon die Mühen mache, werde ich danach auch bei VIM bleiben.
 
Ich hab im Wesentlichen gefragt, weil VIM hier ständig mit IDEs verglichen wird, aber auf die Frage ob es sich lohnt von einem Texteditor auf VIM umsteigen hätte ich ne andere Antwort als auf die Frage ob du von Qt-Creator auf VIM umsteigen solltest.
 
Ja der umstieg erfolgt vom Texteditor zu VIM.
Hier interessiert mich natürlich deine Meinung ;)
 
Finalspace schrieb:
Ich würde VIM, Emacs und wie sie alle heißen niemals für professionelle Entwicklungen nutzen, weder für Backend und schon gar nicht für Frontendentwicklung.
Sag niemals nie. Alles andere ist eher unprofessionell.

Du hast recht, moderne IDEs sind recht praktisch und nehmen einen viel Arbeit ab. Relativ dünn wird es aber dann in dem Bereich, für die die IDEs keine Funktionalitäten bieten.
Hier macht sich sowas wie emacs gut, weils eben kein normaler Editor ist. Eigentlich ist emacs eher ein Lisp-Interpreter auf dem ein Editor implementiert ist (Richard Stallman kommt ja auch aus der Ecke Lisp-Maschine und für sein emacs war die Lisp-Maschine sowas wie ein Vorbild).
Das macht es auch einfach den Editor dynamisch zu programmieren ohne erst den Umweg über Plugins und Restarts zu gehen. Die Änderungen sind quasi sofort wirksam.


Es gibt so gute Entwicklungsumgebungen mittlerweile, mit so vielen hilfreichen Tools und Designern - wer das nicht nutzt ist wirklich selbst schuld.


Finalspace schrieb:
Selbst Visual Studio ist mittlerweile ganz brauchbar geworden
"ganz brauchbar geworden". So recht überzeugt klingt das ja nicht.


Finalspace schrieb:
- C++ Refaktor, besserer Debugger etc.
C++ will man eigentlich nicht mal außerhalb des Webs benutzen. ;-)
Und mal ehrlich, der Kram unterstützt ja nicht mal C anständig.


Finalspace schrieb:
und für Android oder Webentwicklung gibt's eigentlich nichts besseres als die IDE´s von Jetbrains, egal ob Java, HTML5, Javascript, Android was auch immer.
Ja. So hört man. Der große Aha-Effekt blieb aber bei mir aus. Wobei das sicher nicht repräsentativ ist. Die Sprachen, die die Jetbrains IDEs so unterstützen sind für mich weitestgehend uninteressant und beim Webkram ist ein etwaiger Vorteil jetzt nicht so groß, als das es eine Umgewöhnung rechtfertigen würde.


Und für Leute die kein Geld ausgeben wollen ist das kostenlose Eclipse auch nicht so schlecht, auf jedenfall besser als nur nen Texteditor. Zu QT Creator kann ich nichts sagen, das kenn ich nicht.


Finalspace schrieb:
Ein Nachteil gibt's aber, die meisten sind nicht wirklich Performant aber das wird auch immer besser.
... im Zuge der hardwaretechnischen Aufrüstung. :-)
Aber im Grunde hast Du recht. Ich mein, wer entwickeln will, macht das ja nicht auf irgendeiner Atom-CPU und 1GB RAM, sondern der stellt sich auch halbwegs vernünftige Hardware hin.
 
Ich bin in die VI(M) Sparte gekommen, nachdem ich von der "Qualitaet"der Plugins fuer Atom/SublimeText usw entaeuscht wurde.

Syntax-Highlighting funktioniert in machen Sprachen in Atom nicht, du hast da spuerbare Laggs wenn du Tabs wechseln willst und brauchst fuer einen Editor eine eigene Engine (Electron) damit es laeuft. Ausserdem verbraet es mir fuer einen Editor zu viel RAM (wahrscheinlich wegen Electron). Sehr viele Plugins gibt es, keine Frage, doch sind einige davon die ich gerne nutze unter SublimeText developed worden und einige unter Atom. Es gibt aber da einpaar Plugins (u.A. RainbowParantheses) die bedingt bis scheisse Funktioneren unter den besagten Editoren.

Ich werde aber SublimeText einen guten Ruck geben und schauen ob es die Plugins doch in "besser" gibt.

VIM ist ein richtig geiler Editor, der so schnell ist wie du es bist, analog gilt das fuer Emacs. Probier bei mal aus, die Tutorials von denen sind nicht schlecht!
Im Grunde willst du VIM/Emacs nutzen wenn du einen "schnellen" und bis auf die Knochen konfigurierbaren Editor haben willst dem du sagen kannst was du wie willst. Ganz nach deinem Gusto.

Ich würde VIM, Emacs und wie sie alle heißen niemals für professionelle Entwicklungen nutzen, weder für Backend und schon gar nicht für Frontendentwicklung.

Es gibt so gute Entwicklungsumgebungen mittlerweile, mit so vielen hilfreichen Tools und Designern - wer das nicht nutzt ist wirklich selbst schuld. Selbst Visual Studio ist mittlerweile ganz brauchbar geworden - C++ Refaktor, besserer Debugger etc. und für Android oder Webentwicklung gibt's eigentlich nichts besseres als die IDE´s von Jetbrains, egal ob Java, HTML5, Javascript, Android was auch immer.
Wenn man nicht mal Plugins fuer seine IDEs nutzt frage ich mich was professionell(er) ist. Es gibt zahlreiche VI(M)/Emacs Plugins fuer die IDEs. Vor allem die von JetBrains und fuer Eclipse. Das ist vollkommen unsinnig was du erzaehlst.

//EDIT
Wenn du in er IT arbeitest und auch mal per SSH an einem Server connected bist und keine GUI zur Hand hast ist ein Terminal-Multiplexer (TMUX u.A.) und ein guter Editor ((N)VI(M), Emacs, (vll. auch Nano)) dein bester Freund.
Es schadet nicht, sich die Grundlagen beider Editoren anzuschauen (Durch den Text navigieren, Speichern, Schliessen, Datei oeffenen usw.) damit wenn man mal damit Arbeiten "muss" es einfacher hat.
 
Zuletzt bearbeitet:
SparkMonkay schrieb:
Syntax-Highlighting funktioniert in machen Sprachen in Atom nicht
Ich kenn' jetzt Atom nicht so gut, aber wegen Syntaxhighlighting:
Was im VIM relativ gut funktioniert ist, wenn Du in einer Datei mehrere Sprache hast (klassisches Beispiel: HTML-Datei mit CSS und Javascript Sections).


SparkMonkay schrieb:
Wenn du in er IT arbeitest und auch mal per SSH an einem Server connected bist und keine GUI zur Hand hast ist ein Terminal-Multiplexer (TMUX u.A.) und ein guter Editor ((N)VI(M), Emacs, (vll. auch Nano)) dein bester Freund.
Wie Du so schön sagst. Wenn man "mal" .... ist also ne Ausnahme. Umfangreiche Änderungen macht man also ohnehin nicht oder macht gleich so was wie sshfs. nano ist weitestgehend selbsterklärend und vi ... ja da hast Du recht. Rudimentäre Dinge sollte man kennen, um überhaupt mit vi (der ja irgendwie immer und überall da ist) etwas veranstalten zu können.
Mehr aber lohnt nicht, weil man es vergisst, wenn man es nicht regelmäßig anwendet.



Ein noch nicht genannter Editor bzw. IDE ist Lighttable. Interessant deshalb wegen bestimmter Ansätze (Watches, Instant-Evaluation etc.). Macht aber zugegebenermaßen am meisten mit Clojure Spaß.
 
Zurück
Oben