Texteditor, der mehr als 10 GB benötigt

Ich habe Emeditor und es macht, was ich will, aber wenn es eine Datei mit einem oder mehr GB hat, wird es ein wenig langsamer oder macht nicht viel. Ich wollte wissen, ob es einen Texteditor gibt, der das hat oder tut, was Emeditor tut, mehr als 10 GB benötigt und viel in weniger Bewegung/Zeit erledigt. Was ich tue oder möchte, ist, dass Emeditor doppelte Zeilen löscht, Zeilen sortiert und Regex verwendet.

Ich bezweifle, dass es Texteditoren geben wird, die 10 GB Datei aufnehmen und Ihren Text bearbeiten/verarbeiten lassen. Der Grund dafür ist, dass der Texteditor, wenn er ganze 10 GB liest, einen RAM von 10 GB benötigt, dh Ihr System-RAM sollte etwa 12-13 GB+ betragen.
Sie sollten in Ihrer Frage angeben, welche Funktionen Sie benötigen. Gehen Sie davon aus, dass die Antwortenden Emeditor nicht kennen.

Antworten (2)

Es besteht die Möglichkeit, dass Sublime für Ihre Aufgabe geeignet ist, jedoch mit mehreren Voraussetzungen:

  1. Sie sollten Plugins wie Syntax-Highlighting , Bracket Matcher oder git gutter deaktivieren , dh alle Plugins, die reguläre Ausdrücke auf den bearbeiteten Text anwenden. Andernfalls sind die Speicher-/CPU-Anforderungen unerwartet hoch.
  2. Die Datei muss eine Aufteilung in Zeilen akzeptieren . Gutes Beispiel: eine Protokolldatei. Schlechtes Beispiel: eine Binärdatei oder eine Datei mit base64-codiertem Inhalt.

Warum es mit riesigen Dateien funktioniert : Sublime verwendet Memory Mapping unter der Haube. Für uns bedeutet dies, dass wir keine 10 GB RAM benötigen, um eine 10-GB-Datei mit Sublime zu bearbeiten.

Ich habe Dateien mit etwa 500 MB bearbeitet – hat gut funktioniert, mit angemessenem Speicherverbrauch (ich meine, es verbraucht nicht mehr als 300 MB).

Darüber hinaus hat Sublime eine unbegrenzte Testversion, aber Sie können jederzeit eine Lizenz kaufen.

PS Sublime ist gut genug für viele andere textbezogene Aufgaben.

Können Sie bitte den Absatz bereinigen, in dem die Verwendung der Speicherzuordnung erklärt wird? Wie geschrieben, es ist unklar, was Sie sagen.
Hm, danke! Ich habe angefangen, diesen Absatz zu bearbeiten, aber es scheint, als hätte ich die Bearbeitung nicht beendet und auf Speichern geklickt ...
Ich habe sublime, aber ich denke, wenn ich große Dateien öffne, funktioniert es nicht mehr und verschwindet oder wird geschlossen. Was mache ich, bevor ich große Dateien öffne? Deaktiviere ich Plugins einfach? Ändert die Verwendung von regulären Ausdrücken etwas oder bewirkt sie etwas?
@ user6779864, wenn Sie große Dateien öffnen, wendet Sublime alle Aktionen an, die vom Plugin benötigt werden. Die meisten Färbe-, Hervorhebungs- und Klammerabgleiche basieren auf regulären Ausdrücken. Sie funktionieren großartig, aber wenn die Datei eine vernünftige Größe für eine Textdatei hat . Wenn die Datei riesig ist, benötigen Regexe und andere Analyse-Engines viel zusätzlichen Speicher und wahrscheinlich CPU, um ihre Arbeit zu erledigen, da die Datei extrem groß ist. Versuchen Sie beispielsweise, diff auf Github für eine massive Datei mit vielen Änderungen zu öffnen – es wird eine Warnung angezeigt. Hier ist der ähnliche Fall (nicht genau gleich, aber ähnlich).
@ user6779864, versuchen Sie, die Datei in Pure Sublime zu öffnen. Ich bin mir bei den neuesten Versionen nicht sicher, aber vor 3-4 Monaten hatte ich keine Probleme;)

Aus meiner Erfahrung wären Emacs (für Windows) und Sublime ( beide kostenlos, obwohl es eine kostenpflichtige Version für Sublime gibt, aber Sie brauchen das nicht ) Ihre beste Wahl. Ich habe 6-GB-Dateien mit Sublime ohne Probleme und ohne Änderungen an der Sublime-Editorumgebung geöffnet. Bei Emacs benötigen Sie wahrscheinlich das Paket vilf , um sehr große Dateien zu öffnen.

Emacs 25.1 (für Windows)

Erhaben 3

Ich glaube, ich hatte vorher Emacs. Zeigt Emacs andere Zeichen/Sprachen/Buchstaben an? Löscht es doppelte Zeilen und verwendet Regex?
Emacs unterstützt eine Vielzahl internationaler Zeichensätze.
Emacs kann doppelte Zeilen auf viele Arten löschen – versuchen Sie es mit Mx delete-duplicate-lines. Wenn das nicht funktioniert, können Sie ein Makro erstellen, das doppelte Zeilen löscht. In Emacs stehen Ihnen auch Regexp (reguläre Ausdrücke) zur Verfügung – siehe Emacs-Wiki für weitere Informationen unter emacswiki.org/emacs/RegularExpression .