2012-08-30 10 views
6

Die verkleinerte Ace-Editor-Js-Datei aus dem Github-Ass-Build-Repository (https://github.com/ajaxorg/ace-builds) ist eine satte 275KB. Dies ist eine riesige Dateigröße. Codemirror, ein js-Editor des gleichen Kalibers ist deutlich unter der Marke von 100KB.Ace Editor ace.js Dateigröße

Es scheint, als gäbe es eine Möglichkeit, ace.js zu bauen. Gibt es eine Möglichkeit, dies zu tun, während die Dateigröße drastisch reduziert wird?

+0

Wie viele Syntax-Textmarker verwenden Sie? – alex

+0

Nur CSS und HTML. Jede der Dateien für diese Sprachen sind nur etwa 20 KB. Wenn Sie fragen, wie viele verschiedene js Syntax-Highlighter, dann nur einer: Ace Editor. – ambiguousmouse

Antwort

-1

Warum nicht einfach CodeMirror verwenden? Es ist exzellent IMHO.

10

ace.js das ist 294kb ist bereits gebaut und verkleinerte Version, so gibt es keine Möglichkeit, dies drastisch zu reduzieren.

Es gibt zwei Gründe für diesen Unterschied in der Größe

  1. ace mehr Funktionen in gebaut So Vergleich fair machen wir diese Funktionen

    not minified ace.js is . . . . 530kb 
    - multiselect . . . . . . . . . 484kb 
    - folding . . . . . . . . . . . 451kb 
    - bracketmatch, highlight selected 
        word, search, worker . . . . 429kb 
    - built in theme, unicode 
        support for selectWord . . . 401kb 
    

    andere entfernen müssen. Dinge wie, jank frei scrollen beim Auswählen von Text mit der Maus, Animation auf der Seite auf/ab, Auswahl von Zeilen aus der Gosse, besser toggleComment, smart gotoLineEnd, indentGuides usw. sind härter zu r emove, da sie keine eigenständigen Module sind.

    aber Codemirror unterstützt bidirektionale und variable Schriftarten , die für einige der verbleibenden kompensiert, also lasst uns damit aufhören. Die endgültige Größe von ace abgeholzt (nennen wir es ace -. Js) ist 401kb

    file   |size kb| zip |uglify|uglify+zip|uglify-m-c|+zip  
    -------------|-------|------|------|----------|----------|----  
    ace.js  | 530 | 106 | 374 | 91.8  |292  |81.1 
    ace--.js  | 401 | 77.1 | 279 | 65.2  |216  |56.5 
    codemirror.js| 212 | 55.6 | 144 | 40.1  |100  |33.1 
    

    die Größe, die die meisten zählt, ist + zip verunstalten, die nicht so viel anders

  2. zweite Grund ist, Codierung Stil, ist Codemirrors Stil sehr kompakt

    • es viele Verschlüsse (ace fast nie verwendet Verschlüsse)
    • es enthält nur sehr wenige Anwendungen von this verwendet (493 vs 4373 in ace--)
    • nicht-Module verwendet, ist alles in einer Datei, im Gegensatz zu ace die
59 Module
  • und es hat viele kürzeren Variablennamen haben

    Also, wenn Sie einen sehr kleinen Editor brauchen, oder nicht mögen, wie ace funktioniert und das meiste davon neu implementieren möchten, ist Codemirror der bessere Weg zu gehen.

    Aber wenn Sie einen Editor, der auf Augenhöhe mit Desktop-Editoren, ohne Hinzufügen von 300 kB eigenen Code ist Ass ist eine bessere Wahl IMHO.

  • +0

    Awesome Umfrage dieser leistungsstarken HTML5-Code-Editoren. Ace ist beeindruckend ... Danke dafür –