Vim oder Emacs



  • mal ne Frage an die GUI-fans:

    wer von euch hat denn schon mal Emacs intensiv
    (damit meine ich: fuer Texte und Quellcodes im Megabyte-Bereich
    ueber Monate hinweg)
    benutzt und beherrscht Zehnfingersystem *mit* Sonderzeichen und minimum 120 Anschlaege pro Minute, um Emacs adaequat benutzen zu koennen?

    Ohne diese Voraussetzungen ist eine Diskussion ueber die Vorteile von Emacs
    als Editor naemlich recht theoretisch, da sich die Gesamtheit der
    Effizienzvorteile des Emacs Benutzerinterface vermutlich nicht mit 2-Finger-Suchsystem plus 120 gpm
    (Griffe zur Maus pro Minute) erzielen lassen.



  • vim_fan schrieb:

    Wenn man zuvor search highlight und incremental search gesetzt hat, dann kann man mit einem einfachen
    /meinesuche<ENTER>
    sich alle Vorkommen des Wortes im Dokument farbig hervorheben lassen
    und mit
    /meinMuster/meineErsetzung/g<ENTER>

    Das ist praktisch und haette auch gern in meinem Lieblingseditor (Kate). Aber der Rest ist einfach nur *****.

    X Zeilen Uberpringen: Du merkst dir etwa immer in welcher Zeile du bist?

    mit STRG+U kann man sämtliche Änderungen auf einer Zeile rückgängig machen
    Alt+Z

    mit dd löscht man eine ganze Zeile
    Shift+Pfeiltaste und Entf

    mit J (großes J) kann man das Newline entfernen und zwei Zeilen verbinden
    Endline + Entf

    nach einem dd kann man mit einem einfachen p die eben gelöscht Zeile unterhalb der aktuellen Zeile einfügen und mit P oberhalb
    Markieren, Str+C, mit Pfeiltasten zu Position, Str+V

    mit o wird eine Zeile unterhalb der aktuellen eingefügt, mit O oberhalb
    Wozu, kann man einfach duch Pfeiltaste, dann Enter

    mit A wird an das Ende der aktuellen Zeile angehängt
    Endline + Str+V

    mit a nach dem Cursor
    mit i vor dem Cursor
    Oh super man spart sich ein Tastenschlag

    mit R ersetzt man beim Schreiben
    Alt+R oder Alt+H

    mit G kommt man ans Dateiende
    Alt+Ende

    mit gg an den Dateianfang
    Alt+Pos1

    Sorry, aber bis auf die Markierung des Suchwortes habe ich keinen Vorteil von vim enddeckt. Wozu diese Modes sind ist mir auch ein Raetsel. Wieso kann man nicht im Insert-Modus bleiben und solche Sachen wie Speichern oder Suchen auch benutzen? Wieso muss man staendig die Modes wechseln? Wurde VI entwieckelt, als es keine Alt oder Ctrl Tasten gab?

    Aber eigentlich ist es mir egal. Ich bauche VI nur, wenn ich die sudoers veraendern muss. Da ist bei visudo der Standardeditor der VI. Ansonsten benutze ich Nano.

    Uebrigens hier ist ein Tut. fuer vi:
    http://www.eng.hawaii.edu/Tutor/vi.html



  • Also viele der genannten "Vorteile" habe ich auch in Notepad++. Und dabei ist Notepad++ einfach nur ein Editor den ich mir mal damal so ausgesucht habe, weil ich nur was besseres wollte als Notepad. Und komischerweise bietet es trotzdem sehr viel.

    Syntax-Highlightning führst du als Feature an. Hat notepad++ auch und zwar per Scripts konfigurierbar. Enthalten sind schon alle möglichen Konfigs für viele Sprachen. Also hat Vim bzgl. dieses Features nichts weltbewegendes zu bieten. Vielleicht im Detail, das kann ich nicht beurteilen.

    mit G kommt man ans Dateiende
    mit gg an den Dateianfang

    Ich komme mir ehrlich gesagt verarscht vor. 😃 Im ernst. Das sind doch Dinge, die bringt das Win32-Textfield-Control von Haus aus mit. Das muß man unter Windows nicht mal Programmieren. Strg+Pos1 und Strg+Ende. Warum führst du das als Feature auf? 😕

    Die anderen Features kenne ich nicht. Kenne ehrlich gesagt Notepad++ nicht bis ins Detail, weil ich den nur für Nicht-Programmier-Dateien brauche bzw. hauptsächlich als Viewer, weil Notepad nicht mal Unix-Dateien anzeigen kann. 😉

    Im Prinzip sind das doch nur andere Tastenkombinationen oder Tastenkürzel.



  • Modes sind die beste Erfindung seit flüssig Wasser.



  • "Modi", es heißt Modi! Danke übrigens für den Überblick in die Befehle, auch wenn ich die auch nicht unbedingt als Vorteil sehe.



  • Badestrand schrieb:

    "Modi", es heißt Modi!

    Whatever 😃

    Unter Windows habe ich mit http://www.context.cx/ sehr gute Erfahrungen.



  • Ich arbeite mit vim über SSH und der gleichen und bin froh diesen Editor für diese Aufgaben zu haben. Da ich jedoch nicht täglich damit arbeite ist manchmal überlegen angesagt.

    mit STRG+U kann man sämtliche Änderungen auf einer Zeile rückgängig machen
    Ginge in einem Textfeld mit STRG+Z (allerdings bezieht sich das auf alles.)

    mit dd löscht man eine ganze Zeile
    Pos1 Shift End Entf

    mit J (großes J) kann man das Newline entfernen und zwei Zeilen verbinden
    End Entf

    nach einem dd kann man mit einem einfachen p die eben gelöscht Zeile unterhalb >der aktuellen Zeile einfügen und mit P oberhalb
    Pos1 Shift End Shift+Entf , dann STRG+V für oberhalb oder Down STRG+V für unten

    mit o wird eine Zeile unterhalb der aktuellen eingefügt, mit O oberhalb
    Up Enter , Down Enter

    mit A wird an das Ende der aktuellen Zeile angehängt
    End

    mit a nach dem Cursor
    mit i vor dem Cursor
    Einfach drauf los schreiben. Ggf. ist halt einmal rechts fällig

    mit R ersetzt man beim Schreiben
    Einfg (ebenfalls Einfg um den Modus zu wechseln)

    mit G kommt man ans Dateiende
    strg + end

    mit gg an den Dateianfang
    strg+Pos1

    Was Vim sicherlich auch kann (ich aber jetzt nicht von den Tasten weiß:)

    Wortspringen strg + rechts oder links
    Wortspringen und Wort dabei markieren: strg + shift + rechts oder links
    Anfang von Zeile Pos1
    Ende von Zeile End

    etc.

    Und die Kombinationen sind jetzt in jedem Textfeld möglich. Hinzu kommen dann noch die speziellen Kommandos die Editoren innerhalb einer Entwicklungsumgebung bieten und danach noch Produktabhängige Befehle.

    vim ist ein sehr guter Editor, was sicherlich auch niemand bestreitet.

    Aussagen wie

    man braucht nur einmal 15 min zu investioeren und schon kann man ab dem zeitpunkt um einen gewissen faktor (_FAKTOR_) schneller arbeiten als mit herkömlichen klickibuti-ides. Und es kommt nunmal net drauf an, ob du es nach 5 min bedienen kannst. Es kommt auf produktivität an udn die ist mit emacs&vim nunmal höher, sofern man sich die EINMALIGEN 15 min nimmt.

    kann man so pauschal nicht stehen lassen. Abgesehen davon, das es vermutlich für die meisten Befehle im Vim die passenden Tastenkombinationen für ein einfaches Textfeld (oder IDE Editor) gibt, hängt die Produktivität ja nicht alleine vom Editor ab. Fehlersuche und Profiling gehören ebenfalls zur Produktivität wie ein Designer für Benutzeroberflächen.

    Jeder Editor wird darüber hinaus noch spezielle Fähigkeiten haben, die ein anderer Editor nicht liefert. So wüsste ich jetzt nicht, wie ich exakt 200 Zeilen in einem Textfeld lösche ohne diese abzuzählen.

    Dafür weiß ich in Vim nicht, wie man ein Rechteck ausschneidet (was in den meisten Editoren in einer IDE mit ALT und Mausmarkierung geht.)



  • Das waren keine Features sondern grundlegende Befehle zur Navigation.
    Ist euch nicht aufgefallen, dass ihr ständig alt/strg+Taste benötigt, während man unter vim ganz normale Tasten benutzen kann?
    Wenn ich z.B. eine Zeile löschen will muss ich nicht einmal quer über die Tastatur "hechten", sondern kann das ganz komfortabel mit dd machen.

    Und damit das geht benötigt man die Modi, sonst könnt der Editor ja nicht entscheiden ob du mit "dd" die Zeile löschen willst, oder ob du es als Text einfügen möchtest, oder das Unix-Kommando "dd" aufrufen möchtest (im command mode).

    Dass ihr enttäuscht seid liegt einfach daran, dass ihr erwartet habt ich Zauber jetzt ein Kaninchen aus dem Hut, aber nein vim ist auch nur ein Programm wie jedes anderes.
    Und man muss damit arbeiten um sich von dem Vorteil zu überzeugen und natürlich sollte man auch einigermaßen treffsicher sein beim Schreiben mit der Tastatur.



  • Knuddlbaer schrieb:

    Jeder Editor wird darüber hinaus noch spezielle Fähigkeiten haben, die ein anderer Editor nicht liefert. So wüsste ich jetzt nicht, wie ich exakt 200 Zeilen in einem Textfeld lösche ohne diese abzuzählen.

    Wann braucht man den sowas? In meiner 18 Jahrigen Computererfahrung habe ich sowas noch nie gebraucht.



  • vim_fan schrieb:

    Das waren keine Features sondern grundlegende Befehle zur Navigation.
    Ist euch nicht aufgefallen, dass ihr ständig alt/strg+Taste benötigt, während man unter vim ganz normale Tasten benutzen kann?
    Wenn ich z.B. eine Zeile löschen will muss ich nicht einmal quer über die Tastatur "hechten", sondern kann das ganz komfortabel mit dd machen.

    Du hast mich ueberzeugt. Fuer Leute mit nur einem Arm ist VI der Editor. 🤡

    vim_fan schrieb:

    Und damit das geht benötigt man die Modi, sonst könnt der Editor ja nicht entscheiden ob du mit "dd" die Zeile löschen willst, oder ob du es als Text einfügen möchtest, oder das Unix-Kommando "dd" aufrufen möchtest (im command mode).

    Wusste ichs doch. VI wurde entwickelt, als es keine Alt/Strg Tasten gab.



  • quote="Knuddlbaer"
    Was Vim sicherlich auch kann (ich aber jetzt nicht von den Tasten weiß:)

    Wortspringen strg + rechts oder links
    ----------------------------------------
    <anzahl der Wörter>e springt an das Ende des Wortes
    <anzahl der Wörter>w springt an den Anfang des nächsten Wortes
    Und <anzahl der Wörter> macht das entsprechend oft

    Wortspringen und Wort dabei markieren: strg + shift + rechts oder links
    Anfang von Zeile Pos1
    Ende von Zeile End
    ----------------------------------------
    drückst du v um in den visuellen Modus zu kommen und springst mit dem Cursor nach belieben wie oben

    etc.

    [...]

    Dafür weiß ich in Vim nicht, wie man ein Rechteck ausschneidet (was in den meisten Editoren in einer IDE mit ALT und Mausmarkierung geht.)
    ---------------------------------------------------------------
    da muss ich spontan auch passen, dass es geht steht aber außer Frage, aber sowas hab ich bisher noch nie gebraucht, zumindest kann ich mich nicht daran erinnern



  • Hab die Antwort von DEvent leider erst nach meinem letzten Posting gesehen, sonst hätte ich das gar nicht mehr abgeschickt.
    Für mich ist die Diskussion damit beendet.



  • Hem, also in einem Modi wechseln ist keines Falls schneller als den kleinen Finger auf STRG zu legen. Ich weiß ja nicht was du für Finger hast, aber wenn mein linker Zeigefinger auf F liegt, kann ich ohne Probleme mit dem linken kleinen Finger auf STRG drücken. Da muß ich nicht meterweit meine Hand bewegen. Und ob ich in einen Modi wechseln muß, mag zwar auch seine Logik haben, aber die STRG-Taste ist dann halt temporär symbolisch als Modi anzusehen. Woebi die Modis wohl aus Konsolenzeiten herrühren. Für eine GUI nicht der Sinn.

    Und das du erkannt hast, das Vim auch nur ein Editor ist, ist der beste Weg zur Besserung. 👍 🙂



  • rofl.

    die aufzählung der vim-befehle ist eher ein armutszeugnis als ein vorteil gegenüber GUI. ich hab noch nie so unstandartisierte und uninuitive befehler gesehen, wie die von vim.



  • Könnt euch ja mal die Webcasts auf dieser Seite anschauen http://www.rubyonrails.org/screencasts



  • Arbeiten mit UNIX-Tools schrieb:

    Könnt euch ja mal die Webcasts auf dieser Seite anschauen http://www.rubyonrails.org/screencasts

    Da sind ja alles Mov-Dateien. Soll das alles zeigen wie toll man mit vi arbeiten kann? Auf youtube gibts es Videos wie man die Mona Lisa in MS-Paint nachmalen kann. 🙄



  • Natürlich arbeitet man mit Tastenkombis am schnellsten, aber wenn man eine Tastenkombi gerade nicht im Kopf hat, nimmt man einfach die Maus und machts über das Menü wenn man in einer grafischen Umgebung arbeitet, in der Konsole geht man über die Tastenkürzel ins Menü.
    Ich meine, ich habe mit dem Emacs mindestens die gleichen Möglichkeiten wie mit großen Entwicklungsumgebungen - oft sogar mehr.



  • Eine 8 Seiten Diskussion über Vim und Emacs kanns auch nur in diesem Forum geben. 🙄



  • omg....... schrieb:

    Eine 8 Seiten Diskussion über Vim und Emacs kanns auch nur in diesem Forum geben. 🙄

    😃

    http://de.wikipedia.org/wiki/Vi schrieb:

    „„Why are we hiding from the police, daddy?“ – „Because we use vi son, they use emacs.““
    – Unbekannter Autor (spielt auf die Flamewars zwischen vi- und Emacs-Benutzern an): [1]



  • Das sieht man mal wieder, dass hier mehr Meinung als Ahnung vertreten ist. Den Emacs hat eine Klickibunti-GUI und man kann ihn wunderbar mit der Maus bedienen. Die Tastaturkürzel und Tricks kommen einfach mit der Zeit. Learning-by-doing. Auch für vim gibt es wohl mittlerweile Klickibunti-GUIs.

    Aber die ganze Diskussion ist sowieso lächerlich. Viel wichtiger ist wohl das was rauskommt, als die Tools... 🙄


Anmelden zum Antworten