GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Vim vs. Nano vs. Emacs:Drei Systemadministratoren äußern sich

Texteditoren. Sie sind etwas, worüber die meisten Benutzer nicht viel nachdenken. Allerdings sind nicht alle Texteditoren gleich und mit mehr Zeit am Terminal stellen Sie möglicherweise fest, dass ein bestimmter Editor für Sie am besten geeignet ist. Ich habe mehrere unserer Mitwirkenden gebeten, eine "Pro"-Position für Vim, Nano und Emacs zu verfassen. Jeder Texteditor wird durch einen Mitarbeiter mit viel Erfahrung mit dem jeweiligen Editor vertreten. Wir sprechen über Funktionen, Vergleiche und persönliche Erfahrungen. Lassen Sie uns in die Editoren springen, mit Vim zuerst.

[Das könnte Ihnen auch gefallen: Sysadmin-Tools:Anzeigen von Text in Linux mit Schwanz und Kopf]

Vim - Ricardo Gerardi

Vim ist ein leichter, aber leistungsstarker Allzweck-Texteditor, der alle Ihre Anforderungen an die Textbearbeitung erfüllt, von der grundlegenden Bearbeitung von Konfigurationsdateien bis hin zur Emulation vollständiger integrierter Entwicklungsumgebungen (IDE) für die Softwareentwicklung.

Ich benutze Vim seit über 20 Jahren auf die eine oder andere Weise, aber vor ungefähr fünf Jahren habe ich mich entschieden, Vim für alle meine Textanforderungen zu verwenden. Ich verwende Vim, um Dokumentationen und Code in verschiedenen Programmiersprachen zu schreiben, und ich habe ein ganzes Buch (400+ Seiten) ausschließlich mit Vim geschrieben.

Der Name Vim ist eine Abkürzung für Vi Improved, da er den ursprünglichen vi-Texteditor erweitert, der in den 1970er/80er Jahren für das Unix-Betriebssystem entwickelt wurde. Vim hat alle Funktionen, die Sie von einem modernen Texteditor erwarten, wie zum Beispiel:

  • Rückgängig/Wiederherstellen
  • Automatische Vervollständigung
  • GUI-Modus
  • Suchen und ersetzen
  • Eingebautes Terminal
  • Integrierter Dateimanager
  • Rechtschreibprüfung
  • Farbschemata
  • Syntax-Highlight

Ich könnte noch viele andere Features aufzählen, aber das ist es nicht, was Vim anders macht. Meiner Meinung nach ist Vim aufgrund einer Kombination anderer Faktoren der beste Texteditor da draußen. Werfen wir einen Blick auf die unten.

1. Vim ist allgegenwärtig

Vim ist überall. Es ist standardmäßig in den meisten Linux-Distributionen installiert. Wenn nicht, können Sie es mit dem Paketmanager Ihrer Distribution installieren. Darüber hinaus enthalten viele Distributionen Vim-Goodies wie Plugins, Erweiterungen und Wörterbücher mit ihrem Standard-Paketmanager. Vim ist auch für mehrere andere Betriebssysteme verfügbar, darunter Unix, macOS und Windows. Die Vim-Konfiguration ist portabel, und Sie können die gleiche Vim-Erfahrung haben, indem Sie Ihre Konfigurationsdateien von einer Maschine auf eine andere kopieren.

2. Vim ist schnell

Vim ist leicht und schnell. Vim läuft hauptsächlich auf dem Terminal mit geringem Platzbedarf. In Kombination mit einer superschnellen Startzeit und null Latenz können Sie Vim jederzeit und überall verwenden, einschließlich über Remote-Verbindungen über SSH und Hardware mit geringem Stromverbrauch. Sie können sogar mehrere Vim-Sitzungen gleichzeitig geöffnet haben, ohne die Leistung Ihres Rechners zu beeinträchtigen.

3. Vim ist tastaturgesteuert

Vim bietet ein Nur-Tastatur-Erlebnis. Sie können alles in Vim tun, ohne die Hände von der Tastatur zu nehmen. Kein Kontextwechsel mit der Maus verbessert Ihren Komfort und Ihre Effizienz. Es ermöglicht auch eine gute Erfahrung beim Tippen in beengten Bereichen, z. B. beim Pendeln in einem Zug oder Bus.

4. Vim ist intuitiv

Vim bietet einfache und schnelle Navigationsbefehle. Sie können Ihren Cursor wie andere Texteditoren mit den Pfeiltasten (oder "h", "j", "k", "l", um Ihre Hand auf der Startzeile zu halten) bewegen, aber wenn Sie anfangen, Textobjekte zu verwenden, erhöhen Sie Ihre Effizienz sehr. Wenn Sie beispielsweise "w" drücken, gelangen Sie zum Anfang des nächsten Wortes, "b" zurück zum vorherigen Wort und "$" zum Ende der Zeile. Sie können diese auch mit Zahlen kombinieren, um sich schneller zu bewegen. „3w“ bewegt sich beispielsweise an den Anfang des dritten Wortes. Vim bietet viele dieser Navigationsbefehle.

Zusätzlich zu den Navigationsbefehlen bietet Vim intuitive Mnemonik-Aktionen. Drücken Sie zum Beispiel "i" zum Einfügen Text, "c" zum ändern , "d" zum Löschen , und so weiter.

Das Beste daran ist, dass Sie diese beiden Ideen kombinieren können, um leistungsstarke Befehlsketten zu erstellen. Beispielsweise löscht "dw" den gesamten Text bis zum nächsten Wort, "d$" löscht bis zum Ende der Zeile und "c3w" ändert den gesamten Text bis zum dritten Wort.

Vim strukturiert diese Befehlsketten semantisch, spiegeln unseren Denkprozess wider, ähnlich wie Sätze im Englischen mit Verben und Objekten. Sie können sie logisch kombinieren, um Ihre eigenen Aktionen zu erstellen, ohne dass bestimmte Befehle oder Funktionen erforderlich sind; oder sich einige seltsame Tastenkombinationen wie Strg+Umschalt+F4 merken um Aktionen auszuführen.

Wenn Sie zum ersten Mal mit Vim beginnen, fühlen sich diese Befehle unbeholfen an, aber mit ein wenig Übung machen sie die Textbearbeitung sehr effizient. Tatsächlich sind Vim-Tastenbelegungen so beliebt, dass andere Editoren wie Emacs und sogar viele IDEs eine Möglichkeit bieten, sie zu aktivieren/emulieren.

5. Vim ist flexibel und erweiterbar

Vim ist extrem flexibel und leistungsstark. Sie können einfach anfangen und damit schnell Konfigurationsdateien bearbeiten. Sie können auch Programme in Ihrer bevorzugten Programmiersprache schreiben, mit Funktionen wie Codevervollständigung, Syntaxhervorhebung und Syntaxprüfung, ähnlich wie bei beliebten IDEs. Vim bietet eine sofort einsatzbereite Syntaxhervorhebung für viele Sprachen und Dateitypen.

Vim ist vollständig anpassbar. Sie können Optionen spontan oder über eine Konfigurationsdatei bereitstellen. Sie können auch bedingte Konfigurationen erstellen, die nur wirksam sind, wenn Sie einen bestimmten Dateityp bearbeiten. Zusätzlich zur Anpassung unterstützt Vim standardmäßig Plugins. Die Open-Source-Community hat mehrere Plugins entwickelt, um die Funktionalität von Vim noch weiter zu erweitern. Sie können Code-Syntax für andere Sprachen hinzufügen, in Git integrieren, eine ausgefallene Statusleiste, Fuzzy-Suche, intelligente Code-Kommentierung, Code-Snippets und viele andere Funktionen hinzufügen.

Vim ist mehr als nur ein Texteditor, es ist eine Plattform, mit der Sie Ihre eigene Textbearbeitungserfahrung gemäß Ihren Anforderungen und Vorlieben aufbauen können.

Möchten Sie mehr erfahren?

Wenn Sie mehr über Vim erfahren möchten, werfen Sie einen Blick auf einige dieser Links:

  • Linux-Grundlagen:Eine Anleitung für Anfänger zur Textbearbeitung mit vim
  • Eine Einführung in den vi-Editor
  • 5 nützliche Vim-Plugins für Entwickler
  • Vim:Grundlegende und fortgeschrittene Befehle
  • Die fünf besten Vim-Plugins für Systemadministratoren
  • Verwenden Sie Vim-Makros, um häufige Aufgaben zu automatisieren

Abschließende Worte zu Vim

Vim ist ein fantastischer Texteditor. Es ist schnell, flexibel und leistungsstark, aber vor allem macht es Spaß benutzen. Ich sehe ehrlich gesagt nicht, dass ich einige der Dinge tun kann, die ich in Vim mit irgendeinem anderen Editor machen kann, zumindest nicht so effizient.

Ich gestehe, dass Nano mir bei einigen Gelegenheiten das Leben gerettet hat, zuletzt, als ich einen Zertifizierungstest schrieb und die Tastenkombinationen von Vim aufgrund von Einschränkungen mit der Webschnittstelle der Prüfung nicht funktionierten. Dank der einfachen Art von Nano konnte ich den Test erfolgreich abschließen.

Ich habe Emacs nie verwendet, hauptsächlich weil ich nie das Gefühl hatte, dass es etwas bieten würde, was ich mit Vim nicht mit einem kleineren Platzbedarf machen könnte. Vielleicht probiere ich es eines Tages aus, aber bis dahin bleibt Vim der Haupttreiber für alle meine Anforderungen an die Textbearbeitung.

Unnötig zu erwähnen, dass ich diesen Blogbeitrag mit Vim geschrieben habe;-)

Nano - Amy Marrich

Nano ist ein einfacher Texteditor, schlicht und einfach. Sein einziger Zweck besteht darin, Ihnen die Bearbeitung von Text zu ermöglichen. Tatsächlich ist es so leicht, dass viele *nix-Betriebssysteme es im Wiederherstellungsmodus als Editor verwenden.

Obwohl es leicht ist, hat es einige komplexere Fähigkeiten, wenn auch nicht in dem Maße wie einige der anderen Editoren. Andererseits müssen Sie auch nichts anderes installieren, um es zu verwenden.

Suchen

Wie bereits erwähnt, sind andere Texteditoren viel robuster, aber ein Feature, das ich bei Nano mit Abstand bevorzuge, ist die Suchfunktion. Im Gegensatz zu den meisten Aspekten von Linux unterscheidet die Suchfunktion in Nano standardmäßig nicht zwischen Groß- und Kleinschreibung, obwohl Sie dies leicht feststellen können. Dies ist praktisch, wenn Sie nach allen Vorkommen eines Wortes suchen oder nicht sicher sind, in welcher Groß- und Kleinschreibung das Wort vorkommt.

Einige weitere Vorteile der Suchfunktion sind:

  • Zu bestimmten Stellen innerhalb des Dokuments wechseln
  • Suchen/Ersetzen eines oder mehrerer Wörter
  • Die Fähigkeit, rückwärts zu suchen
  • Die sehr praktische Tatsache, dass es wieder nach oben springt, sobald es das Ende des Dokuments erreicht hat, um die Suche fortzusetzen

Andere Ressourcen

Da Nano leicht und einfach zu verwenden ist, gibt es keine große Lernkurve, um loszulegen, aber hier sind einige Tutorials, um tiefer einzutauchen:

  • Der Anfängerleitfaden für Nano, den Linux-Befehlszeilen-Texteditor
  • Verwendung des Nano-Texteditors
  • Linux Nano Editor für Anfänger erklärt (10 Beispiele)

Emacs - Seth Kenlon

GNU Emacs hat alle üblichen Funktionen:Einfache Paketinstallation (package-list-packages ), einfaches Design (customize-themes ), eine GUI-Oberfläche sowie eine Nur-Terminal-Oberfläche, einen eingebauten Dateimanager (dired ), geteilte Bildschirme, Fernbearbeitung, automatisches Speichern und vieles mehr.

Die Tastenkombinationen sind etwas umständlich, aber nicht mehr als beim Klavierspielen, und es ist oft genauso flüssig, besonders auf einer Dvorak-Tastatur.

Aber ich denke, es ist ein einzigartiger Luxus, eine Anwendung zu haben, die auch selbst eine Live-Codierungsumgebung ist. Die Art und Weise, wie GNU Emacs sich selbst neu definieren und vom Benutzer neu definiert werden kann, ist seine mächtigste Funktion.

Lispeln

Ich habe nicht angefangen, Emacs zu benutzen, um mich um Lisp zu kümmern, geschweige denn, um irgendetwas davon zu lernen. Noch heute meine .emacs Konfigurationsdatei ist kaum mehr als eine Patchwork-Sammlung genialer Hacks anderer Leute. Aber die Leistungsfähigkeit von GNU Emacs ist verlockend, und ein kleiner Hack in einer Konfigurationsdatei kann zu einem komplexen Skript werden, das Ihnen während Ihres Arbeitstages Stunden spart.

Mit nur rudimentären Lisp-Kenntnissen in Kombination mit bereits in Emacs integrierten Funktionen war ich in der Lage, automatische Speicherungen in ein verstecktes Verzeichnis zu verschieben, was mir den Komfort verschaffte, keine Sicherungsdateien einsehen zu müssen, aber gleichzeitig zu wissen, dass die Sicherungsdateien existieren .

Ich habe seit Jahren keine Daten in Emacs aufgrund eines Absturzes oder einer Verbindungsunterbrechung verloren.

Leichter Emacs

Emacs hat jedoch mehr zu bieten als GNU und Lisp.

Die Tradition von "emacsen" (das ist die akzeptierte Pluralform von mehr als einem Emacs) geht auf die GNU Emacs-Implementierung zurück und setzt sich darüber hinaus fort.

Es gibt viele Optionen für Editoren, die auf einer Sammlung von Makros und einem bestimmten Stil der Benutzererfahrung basieren, die meisten davon leichter als der GNU-Editor.

Einige meiner Favoriten:

  • Micro Emacs - Erste Schritte mit leichtgewichtigen Alternativen zu GNU Emacs
  • Bei Jupiter! Es ist eine leichtgewichtige Alternative zu Vim
  • Lernen Sie, den JOE-Texteditor unter Linux zu verwenden
  • Probieren Sie den e3-Linux-Texteditor aus
  • Probieren Sie Jed als Ihren Linux-Terminal-Texteditor aus

Ich verwende diese Emacsen- und Emacs-Äquivalente fast so oft wie GNU Emacs, weil sie einfach zu kompilieren und von /home aus auszuführen sind auf Servern, auf denen ich keine Sudo-Berechtigungen habe. Sie bieten ähnliche (oder dieselben) Tastenkombinationen, an die ich gewöhnt bin, Zugriff auf Makros und Funktionen und eine vertraute allgemeine Benutzererfahrung. Und weil Emacs ein so großes Konzept ist, ist es sehr oft auch in der Lage, eine vertraute Benutzererfahrung für Benutzer anderer Editoren bereitzustellen.

Sie können Vim-Tastenbelegungen in GNU Emacs mit evil-mode verwenden , und Sie können GNU Nano mit Joes jpico nachahmen .

Die Emacs-Welt

Die Welt von Emacs ist reich, und so oft ich andere Editoren ausprobiere, habe ich noch nichts gefunden, was GNU Emacs fehlt.

Sicher, ich genieße Vim für schnelle Bearbeitungen und seine einfache Navigation, und ich schätze zu Recht die intuitive Benutzeroberfläche von Nano, aber Emacs ist der Ort, an dem ich zu Hause anrufe.

[ Erste Schritte mit Containern? Schauen Sie sich diesen kostenlosen Kurs an. Containerisierte Anwendungen bereitstellen:Eine technische Übersicht. ]

Entscheidungszeit

Ok, jetzt musst du dich entscheiden. Welcher dieser Texteditoren wird für Sie am besten geeignet sein? Wenn Sie wie ich sind, verwende ich am häufigsten (Vim), was auch immer installiert und einfach zu erreichen ist. Allerdings kann ich nicht für dich wählen. Der beste Rat, den ich geben kann, ist, jeden Editor selbst auszuprobieren und zu sehen, welche Geschmacksrichtung Ihnen am besten gefällt. Denken Sie daran, dass das Ziel darin besteht, mit dem von Ihnen gewählten Editor effizient und komfortabel zu arbeiten.


Linux
  1. ViM Texteditor 101 Handbuch

  2. So installieren Sie Vim (vi) unter Windows 10

  3. Eingabe vom Editor abrufen (vim/nano/emacs/textmate?)?

  4. Vim:Schwarzer Text auf schwarzem Hintergrund?

  5. vim Tutorial mit Befehlsbeispielen

Die fünf besten Vim-Plugins für Systemadministratoren

Erste Schritte mit dem Nano-Texteditor [Leitfaden für Anfänger]

So finden und ersetzen Sie Text in Vim

Top 5 der besten Linux-Texteditoren

Arbeiten mit dem Vim-Editor (Text-Editor)

Grundlegende Nano-Befehle (Spickzettel)