it-swarm.com.de

Code Editor - Must-Have-Funktionen?

Ich programmiere seit fast 18 Jahren und nachdem ich im letzten Jahr auf Macs migriert war, war es unvermeidlich, darüber nachzudenken, einen Code-Editor von Grund auf neu zu schreiben - wahrscheinlich nur, um es zu versuchen dieses Ding raus oder etwas zu machen, das perfekt zu meinen Bedürfnissen passt.

Und ich habe mich gefragt:

Was sind die absoluten MUSS-HABEN eines guten Code-Editors? (nach Möglichkeit in der Reihenfolge der Priorität) Wenn es sich um eine nicht so konventionelle Funktion handelt, können Sie mir ein Beispiel für die tatsächliche Implementierung dieser bestimmten Funktion geben? ("xxxxx" wie in Notepad ++ unter Windows). Ich freue mich auf Ihre Antworten ...

* Nun, manchmal gibt es eine dünne Linie zwischen dem, was als "Editor" und "IDE" angesehen werden könnte, aber lassen Sie uns einfach nicht mehr ausschließen ... IDE-orientierte ...

4
Dr.Kameleon

Meiner ehrlichen Meinung nach verfügen die wirklich großartigen Code-Editoren über Ihre Grundfunktionen und sind fast ausschließlich für eine einzelne Sprache konzipiert. Je spezifischer (und weniger allgemein) der Editor ist, desto besser werden alle kleinen Details von Python oder Java oder C++ ...) implementiert.

  • SCHNELL (lesen ... schneller als Netbeans oder Eclipse, auch wenn dies eine Beeinträchtigung der Funktionen bedeutet)
  • Zeilennummern ständig anzeigen
  • Satzstellung markieren
  • Tabulatoreinzug oder Leerzeichen zulassen, Tabulatoren als beliebig viele Leerzeichen darstellen.
  • Dokumentübersicht (Welche Funktionen/Klassen befinden sich in dieser Datei?)
  • Unterstützt mehrere Sprachen gleichzeitig (PHP, HTML, Javascript) in derselben Datei.
  • Linien markieren/Linien markieren (Springen zu Codesegmenten/markierten Funktionen/Klassen ermöglichen)
  • Regelmäßig automatisch speichern
  • Open-Files speichern/erneut öffnen, um zuletzt geöffnete Dateien
  • Speichern Sie historische Versionen der bearbeiteten Datei (optional)
  • Versteckte/Sonderzeichen anzeigen (Eine Schaltfläche, die Symbole über Tabulatoren, Zeilenumbrüchen usw. anzeigt)
  • Wechseln Sie zwischen den Dateiformaten * Nix, Mac und Windows.
  • Mehrere hervorgehobene Linien einrücken
  • Schreiben des Code-Textmarkers als eigenständige Bibliothek, die unabhängig von Ihrer Anwendung verwaltet werden kann und für diese Sprache spezifisch ist.
  • Schreiben Sie den Code-Textmarker so, dass er schnell dumm ist (verwenden Sie Regex sparsam).
  • Automatischer Einzug (wenn ich die Eingabetaste drücke und vier Leerzeichen eingerückt bin, sollten Sie optional die nächste Zeile an derselben Einrückung beginnen)
  • Schlüsselwörter richtig hervorheben (wie True, False, None in Python)
  • Autocomplete (Klassen, Funktionen, integrierte Funktionen usw.) .. (aber halten Sie es schnell ... gesteuert von einem ternären Suchbaum, nicht von einer ausführlichen XML-Datenstruktur)
  • Nicht versuchen, bei jedem Tastendruck eine Syntaxfehlerprüfung durchzuführen (Mann, der nervt und oft sehr langsam ist!)
  • Scope Awareness (selten gesehen, aber die Möglichkeit, Namensvorschläge basierend auf dem Umfang der aktuellen Zeile zu priorisieren)
  • Integrierte Unterstützung für Remote-Dateisysteme (ftp, sftp)
4
Ben DeMott