Wie unterschiedlich ist Elvis von Vim?


15

Ich benutze seit einiger Zeit Slackware, die mit Elvis als Standardeditor ausgeliefert wird.

Die meisten anderen Linux-Distributionen werden mit Vim anstelle von Elvis ausgeliefert. Wenn ich mich an Elvis gewöhnt habe, stehe ich dann vor einer Lernkurve, wenn ich zu einer Distribution wechsle, die vim verwendet?

Was sind die Vor- und Nachteile von Elvis gegenüber Vim?


10
Warum installieren Sie elvisdann nicht einfach ? Nur weil eine Distribution etwas enthält, heißt das nicht, dass Sie dazu gezwungen sind! Debian hat es zum Beispiel - aptitude install elviswird es tun. Übrigens ist 'Standardeditor' eine Variable, keine Konstante. Stellen EDITOR=/usr/bin/elvisSie einfach die Fernsteuerung Ihrer bevorzugten Shell ein.
Alexios

4
O'Reilly's Learning the vi Editor hat ein kostenloses Kapitel über viKlone, das - unter anderem - vimmit elvisdem alten vergleicht vi.
Sr_

Elvis ist tot. Vim macht weiterhin Fortschritte und wird derzeit vollständig als neo vim überarbeitet, was die Codebasis und die Plugin-Architektur erheblich vereinfachen und Vimscript unter anderem durch Lua ersetzen wird.
Zaz

Antworten:


13

Elvis und Vim sind beide hochleistungsfähige viKlone, so dass Ihr Fingerspeicher Ihnen beim Wechsel zwischen ihnen gute Dienste leistet.

Sie teilen viele viErweiterungen:

  • Satzstellung markieren

  • Mehrfaches Rückgängigmachen und Wiederherstellen

  • Visueller Modus über vundV

  • Befehlsverlauf und Fertigstellung

  • Tag - Stacks (zB :tags, :tnusw.)

  • Mehrfensterbearbeitung, über :split, Ctrl-Wusw.

  • Erweiterte reguläre Ausdrücke: Alternieren, Gruppieren von Unterausdrücken usw.

  • GUI-Version, zusätzlich zu der traditionellen Vollbild-Terminal-Benutzeroberfläche

  • Remote-Dateibearbeitung: Lesen / Schreiben über FTP und schreibgeschützt über HTTP

  • Entfernung der meisten klassischen viBeschränkungen, wie z. B. der Zeilenlängen und Dateigrößen

  • Verbesserte Programmierunterstützung:, :makeautomatischer Sprung zu Compilerfehlern usw.

So beeindruckend Elvis im Vergleich zu Unix ist vi, Vim ist noch leistungsfähiger:

  • Vimscript ist viel leistungsfähiger als die von Elvis exabgeleitete Skriptsprache.

    (Elvis und Vim haben die exSprache in nicht kompatiblen Richtungen erweitert. Dies bedeutet, dass Sie Ihre elvis.iniDatei ~/.vimrcnur dann problemlos portieren können , wenn es sich nur um eine Liste einfacher exBefehle handelt.)

  • Zusätzlich zu Vimscript kann Vim über Lua, Perl, Python, Racket, Ruby und Tcl geschrieben werden.

    (Auf Ihrem lokalen Vim sind jedoch wahrscheinlich nicht alle aktiviert.)

  • Das Vim-Skriptarchiv enthält Tausende von Vim-Skripten, die nützliche Funktionen, Hilfsprogramme, Spiele und mehr hinzufügen .

    Elvis wird mit nur ein paar Dutzend Skripten ausgeliefert. Es scheint keine Archive für Elvis-Skripte von Drittanbietern zu geben. (Ich habe es mit Googeln versucht und nur Skripte für Elvis Presley-Filme gefunden . Seufz.)

  • Vim 7.4 wird mit einer Syntax-Hervorhebungsunterstützung für etwa zehnmal so viele Dateiformate und Programmiersprachen wie Elvis 2.2 ausgeliefert.

    Die Dateiformate für die Syntaxdefinition sind nicht kompatibel, so dass Sie nicht einfach zwischen ihnen portieren können.

  • Vim 7.4 wird mit 18 Standardfarben geliefert. Wenn Ihnen das nicht ausreicht, ist das Vim Color Sampler Pack eine Sammlung von 177 Top-Schemata. Daneben gibt es noch viele andere.

    Elvis 2.2 wird nur mit drei Farbschemata geliefert, und das nur, wenn Sie die GUI- und TUI- Schemata separat zählen. Das Elvis-Themenarchiv enthält insgesamt ein weiteres Dutzend Farbschemata.

  • Vim verfügt über eine integrierte Diff-Funktion mit vielen Verbesserungen gegenüber der Befehlszeile, diff(1)z. B. Syntaxfärbung und Zusammenführung.

  • Neben FTP und HTTP kann Vim auch Remote-Dateien über SCP, SFTP, WebDAV, RCP und RSYNC bearbeiten.

Der beste Grund, Elvis heute gegenüber Vim einzusetzen, ist, dass es viel kleiner ist. Der Elvis 2.2-Footprint entspricht in etwa dem von Vim 7.4 auf meinem System. Dies macht es beispielsweise zu einer guten Wahl für ressourcenbeschränkte eingebettete Systeme.

Elvis ist im Rahmen seiner Möglichkeiten ein perfekter Redakteur. Aber während Elvis seit fast einem Jahrzehnt stagniert, hat sich Vim weiter verbessert.


7

Als VI-Klon scheint es verständlicherweise nicht viele funktionale Unterschiede zwischen elvis und vim zu geben. Laut Learning the vi Editor, 6. Ausgabe , besteht der einzige Unterschied darin, dass in elvis keine inkrementelle Suche durchgeführt wird.

Es ist unwahrscheinlich, dass sich eine große Lernkurve von elvis zu vim entwickelt - schließlich basieren sie beide auf vi und haben zumindest dieselben grundlegenden Befehle wie Navigation, Modi und Suche gemeinsam.

Wenn Sie vim für einen Tag installieren und als Ihren primären Editor behandeln würden, wüssten Sie höchstwahrscheinlich bereits, welche Funktionen (falls vorhanden) elvis Ihnen vermissen würde, und welche Unannehmlichkeiten Ihnen vim möglicherweise bereiten könnte (falls vorhanden).

Ich kenne elvis nicht so gut, aber einige der Vorteile von vim sind die Fülle an Plugins und die Tatsache , dass sie beibehalten werden. Die neueste Version von vim (7.3) wurde 2010 veröffentlicht , die neueste Version von elvis (2.2.0) wurde 2003 veröffentlicht .

Hinweis: wie von alexios kommentiert - das ändern der distro bedeutet nicht, dass man elvis nicht einfach weiter verwenden kann.


3

Als langjähriger elvisBenutzer (seit wahrscheinlich 1991) elvisfehlt mir eine Funktion vim: die Anzeigemodi.

Es ist sehr praktisch mit elvis"wysiwyg" -Editierungs- htmlund troffManualseiten, und der Split-Screen- hexModus ist auch sehr nützlich.

Leider gibt elvises keine Software mehr seit 2004 und es fehlt die UTF-8-Unterstützung, weshalb ich die meiste Zeit damit arbeite vim.


1
Es gibt eine Möglichkeit, einen Hex-Editor mit Stock Vim zu basteln . Oder wie ich benutze bvi. Für HTML besteht eine editorunabhängige Option darin, eine Art Auto-Reload mit einem echten Browser einzurichten . Elvis 'Verständnis von HTML war vor einem Jahrzehnt unvollkommen, als es aufhörte, sich zu bewegen. Es muss jetzt schrecklich veraltet sein.
Warren Young

1
@WarrenYoung Keine HTML-Textwiedergabe kann perfekt sein. elvisEins ist immer noch praktisch genug für die meisten einfachen HTML-Dokumente.
Juli

Elvis ist nicht mehr aufgegeben, da das letzte Commit zum
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.