Wie würden Sie diese Editoren vergleichen? Was sind die Vor- und Nachteile von jedem?
[ Anmerkung ] Dies ist nicht dazu gedacht, von denen beantwortet zu werden, die "einen hassen und einen anderen lieben", oder von denen, die nicht beide benutzt haben.
M-! emacs RET
Es ist wie Google nach "Google" suchenAntworten:
Ich benutze beide, obwohl ich weiß, welche ich wählen würde, wenn ich eine auswählen müsste. Trotzdem werde ich versuchen, einen objektiven Vergleich zu einigen Themen anzustellen.
Überall verfügbar? Wenn Sie ein professioneller Systemadministrator sind, der mit Unix-Systemen arbeitet, oder ein Hauptbenutzer von eingebetteten Geräten (Router, Smartphones mit Busybox usw.), müssen Sie vi (nicht Vim) kennen, da es auf allen Unix-Systemen und den meisten anderen Systemen verfügbar ist Unix-ähnliche Systeme, ob Desktop, Server oder Embedded. Für einen normalen Benutzer ist dieses Argument irrelevant: Emacs ist für jedes Desktop- / Server-Betriebssystem leicht verfügbar, und da es Remote-Bearbeitung unterstützt, ist es ausreichend, es auf Ihrem Desktop-Computer zu haben.
Aufgebläht? Emacs stand einst humorvoll für "Acht Megabyte und ständiges Tauschen". Derzeit benötigt Google Chrome auf meinem Computer ungefähr so viel RAM pro Tab wie Emacs für 100 geöffnete Dateien, und ich werde Firefox nicht einmal erwähnen. Im 21. Jahrhundert ist das Aufblähen des Emacs nur ein Mythos.
Feature Bloat ist auch kein Problem. Wenn Sie es nicht benutzen, müssen Sie nicht wissen, dass es da ist. Emacs-Funktionen stehen Ihnen nicht zur Verfügung, wenn Sie sie nicht verwenden, und die Dokumentation ist sehr gut organisiert.
Startzeit : Vi (m) Befürworter beschweren sich über die Startzeit von Emacs. Ja, der Start von Emacs ist langsam, aber das ist keine große Sache: Sie starten Emacs einmal pro Sitzung und stellen dann mit eine Verbindung zum laufenden Prozess her
emacsclient
. Daher ist Emacs langsamer Start meistens ein Mythos.Es gibt eine Ausnahme: Sie melden sich bei einem Remote-Computer an und möchten dort eine Datei bearbeiten. Das Starten eines Remote-Emacs ist (normalerweise) langsamer als das Starten eines Remote-Vim. In einigen Situationen können Sie einen Emacs auf dem Bildschirm laufen lassen. Sie können Remotedateien auch in Emacs bearbeiten, dies unterbricht jedoch den Ablauf, wenn Sie sich in einer SSH-Sitzung in einem Terminal befinden. (Seit XEmacs 21 oder GNU Emacs 23 können Sie ein Emacs-Fenster von einer laufenden X-Instanz in einem Terminal aus öffnen.)
Beim Umdrehen habe ich beobachtet, dass Vim merklich länger zum Laden braucht als Emacs (
vim -u /dev/null
vs.emacs -q
). Zugegeben, das war auf einer seltsamen Plattform (Cygwin).Anfängliche Lernkurve: Diese variiert von Person zu Person. Michael Mrozeks Grafik brachte mich zum Lachen. Im Ernst, ich stimme zu, dass Vims Lernkurve steiler und steiler beginnt als bei jedem anderen Editor, obwohl dies durch die Verwendung von gvim verringert werden kann.
Da ich einige Emacs-Mythen aufgelöst habe, möchte ich einen vi-Mythos auflösen: Es ist nicht schwer oder schmerzhaft, einen Modal-Editor zu verwenden. Es braucht ein wenig Gewohnheit, aber nach einer Weile fühlt es sich sehr natürlich an. Wenn ich vi (m) umgestalten würde, würde ich die Modi definitiv beibehalten.
Asymptotische Lernkurve: Sowohl Vim als auch Emacs verfügen über eine Vielzahl von Funktionen, und Sie werden nach Jahren des Gebrauchs immer wieder neue entdecken.
Produktivität : Dies ist ein äußerst schwieriges Thema. Befürworter von vi (m) argumentieren, dass Sie so ziemlich alles tun können, ohne die Startreihe zu verlassen, und das macht Sie effizienter, wenn Sie es am meisten brauchen. Befürworter von Emacs erwidern, dass Emacs viele Befehle hat, die nicht häufig verwendet werden. Gewähren Sie daher keine Schlüsselbindung, sind Sie aber verdammt praktisch, wenn Sie sie benötigen ( obligatorische xkcd-Referenz ).
Meine persönliche Meinung ist, dass Emacs letztendlich gewinnt, es sei denn, Sie haben eine Tippbehinderung (und selbst dann können Sie Emacs so konfigurieren, dass nur Tastenkombinationen und keine Kombinationen wie Ctrl+ Buchstaben erforderlich sind ). Home-Row-Keys sind nett, aber sie sind oft nicht so ein Gewinn, weil man den Modus wechseln muss. Ich glaube nicht, dass es irgendetwas gibt, was Vim wesentlich machen kann effizienter als Emacs, während das Gegenteil der Fall ist.
Anpassbarkeit : Beide Editoren sind programmierbar, und für beide gibt es eine Vielzahl verfügbarer Pakete. Vim ist jedoch ein Editor mit einer Makrosprache. Emacs ist ein in Lisp geschriebener Editor mit einigen Ad-hoc-Primitiven. Emacs gewinnt spektakulär, wenn Sie versuchen, etwas zu tun, an das die Autoren einfach nicht gedacht haben. Dies passiert nicht jeden Tag, aber es sammelt sich im Laufe der Jahre.
Mehr als ein Editor : Vim ist ein Editor. Emacs ist nicht nur ein Editor, sondern auch eine IDE, ein Dateimanager, ein Terminalemulator, ein Webbrowser, ein Mail-Client, ein News-Client, ... Ob das gut oder schlecht ist, ist umstritten. Sie können Emacs jedoch auch als Editor verwenden (siehe oben unter „Funktionsüberfluss“).
Als IDE : Sowohl Vim als auch Emacs unterstützen viele Programmiersprachen und andere Textformate. Über die Grundlagen wie syntaktisches Färben und automatisches Einrücken hinaus verfügen beide über erweiterte IDE-Funktionen wie Querverweissuchen für Code und Dokumentation, unterstütztes Einfügen und Refactoring, integrierte Versionskontrolle und die Möglichkeit, eine Kompilierung zu initiieren und zum ersten Fehler zu springen.
Eine Domäne, in der Emacs besser ist als Vim, ist die Interaktion mit asynchronen Unterprozessen. In diesem Fall starten Sie eine lange Kompilierung und möchten in derselben Editorinstanz etwas anderes ausführen, während der Compiler aktiv ist. Oder wenn Sie mit einer Read-Eval-Print-Schleife interagieren möchten - Emacs ist wirklich der Hammer, Vim hat nur ungeschickte Hacks zu bieten. Trotzdem hat Neovim , eine neue Version von Vim, bewiesen, dass dies behoben wurde, und andere verschiedene Fehlerbehebungen implementiert, die nicht in Stock Vim implementiert wurden.
quelle
Ich werde veröffentlichen, was meiner Meinung nach die Hauptvorteile von jedem sind:
Emacs bietet erheblich mehr Erweiterungen, mit denen Sie Aufgaben erledigen können, die sich nur auf einen vagen Texteditor beziehen, wie das Durchsuchen des Dateisystems oder das Durchsuchen der Versionskontrolle, und Erweiterungen, die in keiner Weise auf einen Texteditor zurückzuführen sind, wie das Lesen von RSS-Feeds. Wenn Sie eine Umgebung anstelle eines Texteditors wünschen, ist Emacs besser als Vim. Ich denke auch, dass Emacs viel einfacher zu erlernen ist, auch wenn einige glauben, dass Sie:
Insbesondere denke ich, dass ein Emacs-Anfänger schneller ist als ein Vim-Anfänger
Andererseits ist Vim zweifellos schneller. Es scheint, dass dies ein zentraler Teil des Arguments ist, aber meiner Meinung nach gibt es überhaupt keinen Wettbewerb. Ich betrachte mich als fließenden Emacs-Benutzer und kann mich nicht mit den Leuten messen, die ich kenne und die Vim genauso gut kennen. Das Problem ist, dass die Anzahl der Leute, die Vim beherrschen, um so schnell zu sein, unglaublich gering ist (von den ~ 30 Leuten, mit denen ich regelmäßig spreche und die Vim benutzen, denke ich, dass nur einer außergewöhnlich gut darin ist). Zwischen dem möglichen Geschwindigkeitszuwachs und dem tatsächlich erreichten Geschwindigkeitszuwachs besteht eine große Lücke . Emacs-Benutzer werden fast so schnell sein wie 99% der Vim-Benutzer, und (wie ich im Abschnitt über Emacs sagte) Emacs-Anfänger werden wahrscheinlich schneller sein als Anfänger von Vim-Benutzern
quelle
Auf
vi
jedem (oder fast) Unix-System ist ein verfügbar, aber Sie können dies nicht über einen anderen Editor sagen. Dies ist der Hauptgrund, sich mit dem Thema vertraut zu machenvi
(bitte beachten Sie "vi", nicht "vim"). Ich habe noch nie gesehen, dass Emacs in einer Standardinstallation verfügbar ist.Ich sage nicht, dass Sie Emacs nicht verwenden oder dies der einzige Grund ist, Vim zu verwenden, aber wenn Sie in der Lage sein möchten, Unix-Systeme zu verwenden, die nicht Ihre sind,
vi
ist dies Teil der universellen Sprache.quelle
vim
Benutzer, aber ich finde es oft schwierig zu benutzenvi
, höchstwahrscheinlich wegen der END-Taste (vim unterstützt es, aber vi nicht oder zumindest nicht standardmäßig)nano
ich eine ganze Reihe von ijkloOahs in meiner Datei ... bis mir klar wird, dass ich diese nicht für die Navigation verwenden kann. Ich benutze die Pfeiltasten nicht zum Navigieren.vim
:)Ich finde sie beide großartig. Ich denke, einer von beiden kann fast alles tun, was man sich vorstellen kann, und beide sind so anpassbar, dass beide genau das sind, was man möchte, nicht mehr und nicht weniger, wenn man sie fertig anpasst.
Emacs sticht für mich insofern heraus, als es den ISO / IEC-Standards für Benutzerfreundlichkeit und Konsistenz von Benutzeroberflächen ein wenig näher kommt (obwohl dies immer noch nicht der Fall ist), und spielt daher nicht so viele Tricks mit Ihren „Instinkten“ in Bezug auf dieses Vim aus. Die Lebensdauer der Instinkte, die Sie bei der Arbeit mit anderen Programmen entwickelt haben, wirkt sich nicht auf Sie aus.
Vim ist ein völlig anderes Modell und in vielerlei Hinsicht von sich aus überlegen, da es sich weniger auf Cntrl / Alt-Sequenzen als auf die Modi stützt, sodass Sie Ihre Arbeit in der Startreihe behalten und tippen können schneller. Aber vim ist praktisch einzigartig, und wenn Sie keine sehr ungewöhnliche Begleitsoftware (z. B. Vimperator, Jumanji / Zathura usw.) installieren, werden die Instinkte, die Sie bei der Arbeit mit vim entwickeln, nicht auf andere Programme übergehen und umgekehrt. Das heißt, ich habe mich auf vim selbst entschieden. Man muss sich früher oder später darauf einigen, egal ob gut oder schlecht, da es schwierig ist, beides zu meistern.
quelle
Ich benutze beide regelmäßig. Ich betrachte Emacs als "live in" -Editor, während ich Vim für schnelle, einmalige Aufgaben verwende. Oberflächlich gesehen ist Emacs viel aufgeblähter als Vim, und es ist wirklich nicht ganz so bequem, "hochzufahren" wie Vim, aber ich finde auch, dass die Philosophie der Benutzerschnittstelle von einer zur anderen dieses Paradigma unterstützt. Emacs ist viel mehr darauf ausgelegt, Sie im Haus zu halten und die Dinge schön und bequem zu machen, damit Sie nicht gehen müssen.
Viele Menschen fliehen vor Emacs, weil sie stark auf Bucky Bits angewiesen sind , aber das ist für mich ein ziemlich dummer Grund. Die wahre Stärke von Emacs gegenüber Vim ist die Anpassbarkeit, und mit der Kraft von Viper usw. ist dies wirklich kein Problem. Natürlich bietet Vim-Script eine eigene Anpassungsstufe, und wenn beispielsweise Ihre Lieblingsprogrammiersprache nicht mit einem geeigneten Syntax-Textmarker ausgestattet wäre, könnten Sie sich sicherlich einen ausdenken, aber Emacs ist letztendlich eine selbsthostende Lisp-Maschine Am Ende kann man viel, viel mehr damit herumspielen. Es gibt in Vim einfach keine Tools wie Gnus oder Org-Modus , um nur einige zu nennen. Kurz gesagt, Emacs ist nicht nur ein Editor, sondern praktisch ein verdammtes Betriebssystem.
Für die Bearbeitung von Text würde ich sagen, dass sie genau gleich sind.
quelle
Ich werde meinen Wert von $ 0,02 einsetzen, da ich einige Jahre mit Emacs und XEmacs verbracht habe und dann zu Vim übergegangen bin. Um fair zu sein, ich hatte vi zwischen 1990 und 1992 ziemlich oft benutzt, daher war ich mit der Benutzeroberfläche vertraut.
Emacs
Emacs wurde als ein Lisp-System beschrieben, mit dem zufällig ein Editor geschrieben wurde, und darin steckt ein Körnchen Wahrheit. Sie können so ziemlich alles, was Sie wollen, in elisp implementieren, wenn Sie sich Zeit nehmen möchten, um die Umgebung zu verstehen. Ich kann nicht sagen, dass ich es jemals so gut kennengelernt habe, aber ich habe gelegentlich Frig Zeug gemacht. Da Emacs und Xemacs auf dieser Ebene nicht vollständig kompatibel sind, können Skripts von Drittanbietern auf einem, jedoch nicht auf dem anderen ausgeführt werden.
Es wurde beobachtet, dass sich RMS und einige andere bekannte Emacs-Hacker aufgrund von Problemen mit OOS aus der Programmierung zurückziehen mussten, wo Bill Joy, Bram Moolenaar und verschiedene andere vi-Leuchten immer noch dabei sind. Emacs ist hart an deinen kleinen Fingern.
Emacs ist ein viel katholischeres System als vi und wird als kanonisches Beispiel für Software-Envelopment angesehen . Zusammen mit Netscape ist dies einer der Beiträge von jwz , um dieses Gesetz zu beweisen.
Eine einzigartige Sache, die ich einmal mit xemacs gemacht habe, war, es auf einem Computer laufen zu lassen und eine x-Sitzung auf einem x-Terminal (eigentlich eine alte, umfunktionierte Sun 3/60) in einem anderen Raum gegen denselben Puffer auf derselben laufenden Instanz zu öffnen.
Vorteile: Erweiterbar, leistungsstärker als jeder andere bekannte Editor, ausgereifte Integration mit so ziemlich jedem wichtigen Programmierwerkzeug für freie Software.
Nachteile: Bedenkliche Ergonomie, elisp ist nicht leicht zu erlernen.
Vim
Disclamer - Ich bin vor ungefähr 10 Jahren von Emacs zu Vim gewechselt und benutze Vim gewöhnlich auf Windows- und Unix / Linux-basierten Systemen.
Vi und seine Nachkommen verfügen über eine sehr gute Tastaturmakrofunktion zur Automatisierung von Bearbeitungsaufgaben. Die Skriptfunktion in vim ist nicht so ausgefeilt wie in elisp, aber Sie können sie mit Unterstützung für Python, Tcl, Perl und möglicherweise einige andere Systeme erstellen. Ich habe nur gelegentlich Skripte (außerhalb von .vimrc-Dateien) für vim geschrieben.
Vim ist kleiner als Emacs, aber das ist heutzutage keine große Sache.
Die Dokumentation und die Online-Hilfe von Vim sind ziemlich gut. Emacs hat eine recht gute Online-Dokumentation, aber ich denke nicht, dass sie so umfassend ist wie die von vim.
Vim erbt die skurrile modale Benutzeroberfläche von VI, kann sich aber jetzt wie ein modloser Editor verhalten, da Sie im Einfügemodus navigieren können. Unter Windows kann es sich sehr ähnlich zu einer Windows-Anwendung verhalten.
Vorteile : Gute Tastaturmakrofunktion, passabel gute Erweiterbarkeit und Skripterstellung, aber nicht so gut wie Emacs. Vim- oder vi-abgeleitete Editoren sind auf den meisten, wenn nicht allen Unix- oder Allzweck-Linux-Distributionen Standard. Wohl bessere Ergonomie.
Nachteile: Die modale Benutzeroberfläche fühlt sich für Benutzer, die an Windows-Benutzeroberflächen gewöhnt sind, seltsam an. Heutzutage ist das mit vim weniger ein Problem.
quelle
Normalerweise benutze ich Vim, aber beide sind großartige Editoren.
Das Erlernen von vi war fies, aber ich habe es gemeistert und gelernt, es zu mögen. Meine frustrierendsten Momente waren, als die Feststelltaste aktiviert war. Sie könnten es mit gVim versuchen, aber einer der größten Vorteile von vi und Emacs ist die Fähigkeit, ordentliche Dinge zu tun, während Sie die Hände auf der Tastatur halten, und gVim wird Sie wahrscheinlich weiterhin mit der Maus bedienen. (Das Erlernen des gleichzeitigen Spielens von Roguelike-Spielen gab mir Übung mit den Cursorbewegungstasten, veranlasste mich jedoch manchmal, mich in Dokumenten diagonal zu bewegen.)
Emacs ist wahrscheinlich zugänglicher. Es ist eine Modeless, und Sie werden sich nicht durch Drücken der Feststelltaste in die Irre führen. Die Idee, den Editor durch Eingabe von Buchstaben mit gedrückter Steuertaste zu steuern, sollte modernen Power-Benutzern nicht zu fremd sein, obwohl die eigentlichen Tasten für den typischen Windows / Mac OS X-Benutzer wild und willkürlich erscheinen. Auch hier sind Versionen, mit denen Sie die Maus verwenden können, auf lange Sicht weniger vorteilhaft.
Beide erfordern ein gewisses Maß an Fachwissen, um sie effektiv zu nutzen. Im Gegensatz zu beispielsweise Notepad können Sie sich nicht einfach hinsetzen und bearbeiten.
Beide sind konfigurierbar, obwohl für mein Geld das Schreiben von Erweiterungen in demselben Lisp, in dem der Editor geschrieben ist, eine flüssigere Erfahrung macht. (Emacs ist wie üblich kein Editor. Es ist eine Lisp-Umgebung, die auf die Textverarbeitung zugeschnitten ist und eine Menge vorab geschriebener Software enthält, einschließlich eines Editors. Daher ist der Witz "Emacs macht eine anständige Shell, könnte aber verwendet werden ein besserer Editor. ")
Normalerweise benutze ich Vim, weil es sich nach einem ausgiebigen Training einfacher anfühlt. Dies kann an den Vorteilen des Modus-Systems liegen, bei dem eine enorme Anzahl von Befehlen mit einem Finger in der Nähe der Startreihen verfügbar ist, oder am "Baby-Enten-Syndrom", das für Redakteure sehr wichtig ist dazu.
Sie werden auch mit nichts falsch machen.
quelle
Der Hauptgrund, warum ich vi / vim nicht benutze, ist, dass es modal ist. Der Hauptgrund, warum ich vi benutze, ist, dass es fast überall verfügbar ist.
quelle
Ich denke zufällig, dass der obige Kommentar "vim is modal" falsch ist. Vim hat Befehle. Sie können "11aNow ist die Zeit für alle guten Männer ..." ausführen und erhalten am Ende 11 identische neue Textzeilen in Ihrer Datei. Das ist ein Befehl, kein Modus. Tatsächlich gibt es jedoch einen grundlegenden Unterschied zwischen Vim-Befehlen und Emacs-Befehlen. Ich bin mir nicht ganz sicher, ob ich es beschreiben kann, aber Eric Fischer hat vor über 10 Jahren die Emacs-artige Zeilenbearbeitung in einen TTY-Treiber integriert und einen Artikel darüber veröffentlicht:
http://www.usenix.org/event/usenix99/full_papers/fischer/fischer.pdf
Er stellte fest, dass sich Emacs Style Line Editing grundlegend von vi-style unterschied.
Daher hat Emacs den Vorteil, dass viele andere Dinge (Bash, Gnuplot, Zsh, Ksh, einige andere, die ich mir nicht vorstellen kann) letztendlich Emacs-artige Zeilenbearbeitung implementieren.
Ich sollte beachten, dass ich Vim die ganze Zeit persönlich benutze. Ich bin nur ein sehr gelegentlicher Emacs-Benutzer.
quelle
set -o vi
inbash
oderzsh
istrc
meiner Meinung nach nicht zu schwer zu laufen (oder in eine Datei zu legen ).gnuplot
Postgresqlspsql
, MySQLsmysql
und eine Menge anderer Schnittstellen den Emacs-Modus standardmäßig mehr oder weniger ausführen. Wenn nur Oraclesqlplus
befehlen könnte, die Befehlszeile zu bearbeiten ... nein, nein. Das wäre zu viel verlangt von einer Major Corporation. Sie haben Trends zu folgen!inputrc
wird das für Shell-Tools gemacht, aber dann wundere ich mich eine halbe Sekunde lang, warumj
nicht in Mendeley Desktop gescrollt wird, nachdem vom Terminal darauf gewechselt wurde, und sie wurden zu oft nach vim-Bindungen gefragt. Kann leider nicht alles abdecken und hat ein konsistentes Umfeld.mysql(1)
,psql(1)
,gnuplot(1)
, auchpython(1)
,perlconsole(1)
,lftp(1)
,smbclient(1)
und in der Tat viele interaktive Programme über keybindings für Line-Bearbeitung betroffen waren. Alle diese Programme verwenden nur GNU Readline , und der Standardmodus für GNU Readline ist (nicht überraschend) GNU Emacs-ähnlich.set editing-mode vi
in your~/.inputrc
und voila - alle diese tools haben vi-ähnliche tastenkombinationen.Da dies nicht ausdrücklich angegeben wurde, möchte ich hinzufügen, dass es keine bessere Programmierumgebung (Lisp in a Box, SLIME usw.) gibt als eine leicht modifizierte Emacs-Distribution. Alle meine Programmieranforderungen (99%) werden von Vim aus erledigt, aber für all die Lisp-Bibliotheken und -Routinen, die ich schreibe, muss ich Emacs starten, um alles produktiv zu machen.
quelle
Ich benutze Vim / gVim.
Früher habe ich Emacs verwendet, aber ich fand, dass gVim auf langsameren Computern im Allgemeinen schneller arbeitet. Aufgrund der POSIX-Anforderungen ist vi fast überall verfügbar.
Wenn ich Vim oder gVim benutze, benutze ich oft die Maus, die Unterstützung ist großartig, denke ich.
Ich habe mit Emacs angefangen, weil es für Anfänger einfacher war, Emacs zu verwenden. Ich fand die Verwendung von Nano aus irgendeinem Grund recht fehleranfällig, und irgendwann wurde mir klar, dass ich mich mit vi viel wohler fühle.
Im Moment ist es eine Mischung. Ich benutze auch ziemlich oft Eclipse und gedit. Vim ist jedoch immer noch mein bevorzugter und meistgenutzter Editor.
quelle
Ich benutze sowohl gVim als auch Emacs gut genug, um produktiv zu sein, obwohl ich in keinem von beiden Experte bin. Eine Sache, die ich mit Sicherheit sagen kann, ist, dass Vim und gVim auf meinem Windows 7-Laptop (den ich bei der Arbeit verwenden muss) schneller laufen. Emacs unter Windows hat die ungewöhnliche Angewohnheit, bis zu einer Minute anzuhalten und nicht mehr zu reagieren, selbst wenn weiterhin Tastatureingaben akzeptiert werden, bevor alles, was sich im Tastaturpuffer angesammelt hat, in Eile ausgespuckt wird. Dies ist unter Mac OS oder Linux nicht der Fall. Trotzdem benutze ich Vim oder gVim die meiste Zeit auf allen Plattformen, damit ich nicht anhalten und überlegen muss, welchen Editor ich verwende und anpasse. Das heißt, in einer reinen * nix-Umgebung würde ich wahrscheinlich bei Emacs bleiben, weil ich die Bearbeitung ohne Model etwas natürlicher finde.
Fazit: Meiner Meinung nach sind beide Editoren leistungsstark genug, um alle Textbearbeitungsanforderungen zu erfüllen. Die Auswahl sollte auf praktischen Erwägungen (wie den Besonderheiten der Plattformimplementierung) und dem Arbeitsstil basieren.
quelle
Der Hauptunterschied zwischen Emacs und Vim ist ergonomisch. Wie Sie wissen, gibt es das Karpaltunnelsyndrom CTS. Emacs ist sehr "gefährlich", wenn Sie CTS haben und CTS provozieren. Vim - nicht, man kann an vielen Stellen über diesen Unterschied lesen. In Vim können Sie beispielsweise Text nur mit einem Finger bearbeiten. In Emacs - kann man nicht :)
quelle
Ich benutze
vi
/nvi
(NICHTvim
), weil es einfach und unauffällig ist.vim
Liebt Pieptöne so sehr, dass es schwieriger und etwas unauffälliger ist, abgeschaltet zu werden. Ich musste den internen PC-Lautsprecher physisch entfernen, bevor ich irgendwann herausfand, dass der vergrabene Ref darüber, wie es geht :)Auch ich benutze keine Syntaxfärbung, Grau über Schwarz ist für mich die schönste.
Und vielleicht bin ich zu dumm, um herauszufinden, dass
emacs
die einzigen drei Tastenkombinationen, an die ich mich erinnere, STRG-ALT-ENTF sind.quelle
"Was sind die Vor- und Nachteile von Vim und Emacs?" - ha!
Ich überlasse die Profis meistens anderen.
Die Nachteile von beiden sind, dass sie beide alte Schule sind. Ich habe im Laufe der Jahre wahrscheinlich 50 verschiedene Editoren verwendet, von Basic-Editoren über superschnelle Assembler-Editoren (zum Beispiel VEDIT) bis hin zu schicken GUI-Editoren, von denen einige besser sind als andere. Ich habe sogar meinen eigenen speziellen Editor namens ForthStar geschrieben und ihn angepasst, um einen Baum aus Btrieve-Blättern mit mehreren Indizes für eine leistungsstarke Suche zu bearbeiten, um die zuletzt bearbeiteten Blätter sofort zu finden oder um Codekomponenten oder Blatteltern schnell zu finden oder Kinder.
Ich denke, sowohl vi als auch emacs sind mehr Religion als Muskeln. Die kreativen Köpfe, die sie aufgebaut haben, sind größtenteils weitergegangen, und der neuen Unterstützung fehlt der Mut und die Fähigkeit, sie neu zu erfinden.
Ja, Emacs kann viel, aber es wird durch lisp, eine schöne und mittlerweile weitgehend veraltete Sprache, verlangsamt.
Beide stecken in schwierigen Tastaturlayouts fest. Emacs könnte sich ein wenig an den Benutzer anpassen, zumindest, indem er erkennt, dass es eine Alt-Taste anstelle der antiken Meta-Taste gibt. Und wie WordStar erkennt, ist es die Unterscheidung nicht wert, CA CB direkt von CA B zu halten, wenn die Geschwindigkeit eingegeben wird. Es ist besser, einfach eine zu haben, die von einer der beiden Tastenkombinationen ausgelöst wird. Ja, Sie können die Tastenkombinationen ändern, aber was für ein Durcheinander haben Sie später.
Vi ist clever, aber es fehlt an leistungsfähigem Suchen und Ersetzen wie in Notepad ++, das Ihnen zeigt, was es gefunden hat, Sie können es erweitern und selektiv in Farbe anwenden, um nur eine Innovation zu erwähnen.
Heutzutage erlaubt fast jede andere GUI das Zoomen mit dem Mausrad. Emacs GUI scheint das nicht zum Laufen zu bringen. Und wo ist das schöne Griechenland, wie es Kate hat?
Mein Lieblings-Tastaturlayout im Laufe der Jahre war Wordstar Cursordiamant. Zumindest war es leicht zu lernen und machte sofort Sinn. Das, das ich am meisten hasste, war WordPerfect, das die Komplexität erhöhte und anscheinend etwas auf Emacs basierte.
Seien wir ehrlich, der größte Teil der Welt hat heutzutage eine grafische Benutzeroberfläche. Und wie es oder nicht Texteditoren sind in ihrem Alter etwas stecken.
Ich denke, es wäre besser, einen universellen Editor zu haben, der leicht zwischen Emacs, Vi, Wordstar oder anderen wichtigen Layouts wechseln kann, ohne die leistungsfähigeren Befehle zu verlieren, die er bietet. Echte Programmierer müssen eine Vielzahl von Bearbeitungswerkzeugen verwenden. Warum nicht einen Redakteur haben, der unsere Bedürfnisse erfüllt, um Arbeit zu erledigen, anstatt uns dazu zu zwingen, Dinge zu tun?
quelle