2012-08-30 10 views
6

Skompilowany plik JS edytora asa z repozytorium ith-builds github (https://github.com/ajaxorg/ace-builds) to potężne 275 KB. To jest ogromny rozmiar pliku. Codemirror, edytor js tego samego kalibru jest znacznie poniżej znaku 100 KB.Edytor asów ace.js Rozmiar pliku

Wygląda na to, że istnieje sposób na zbudowanie ace.js. Czy istnieje sposób, aby to zrobić, jednocześnie drastycznie zmniejszając rozmiar pliku?

+0

Ile używa się pisaków składni? – alex

+0

Tylko CSS i HTML. Każdy z plików dla tych języków ma tylko około 20 KB. Jeśli pytasz, ile różnych znaczników składni js, to tylko jeden: Ace Editor. – ambiguousmouse

Odpowiedz

-1

Dlaczego po prostu nie użyć CodeMirror? To jest doskonałe IMHO.

10

ace.js który jest 294kb jest już zbudowany i minified wersja, więc nie ma sposobu, aby drastycznie zmniejszyć.

Istnieją dwa powody tej różnicy w wielkości

  1. ace ma więcej funkcji zbudowany tak, aby porównania targi musimy usunąć te funkcje

    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 
    

    innych. Rzeczy jak, jank wolne przewijanie podczas zaznaczania tekstu za pomocą myszy, animacja na stronieUp/Down, wybieranie linii z rynny, lepiej toggleComment, smart gotoLineEnd, indentGuides itp. są trudniejsze do r emove, ponieważ nie są to samodzielne moduły.

    ale Codemirror obsługuje czcionki dwukierunkowe i zmienne o rozmiarze , które kompensuje niektóre z pozostałych , pozwala więc zatrzymać się na tym. Ostateczna wielkość ścięte asa (nazwijmy go asem. - js) jest 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 
    

    wielkość, że najważniejsze jest zeszpecić + zip, który nie jest dużo różni

  2. Drugim powodem jest kodowanie styl, styl Codemirrors jest bardzo kompaktowy

    • wykorzystuje wiele zamknięć (ACE prawie nigdy nie używa zamknięć)
    • zawiera bardzo niewiele zastosowań this(493 vs 4373 w ace--)
    • nie korzysta z modułów, wszystko jest w jednym pliku, odróżnieniu od asa, który posiada 59 modułów
    • i ma o wiele krótsze nazwy zmiennych

Więc jeśli potrzebujesz bardzo małego edytora lub nie lubisz sposobu, w jaki działa Ace i chcesz uzupełnić większość z nich, Codemirror jest lepszym rozwiązaniem.

Ale jeśli potrzebujesz edytora, który jest na równi z edytorami pulpitu bez dodawania 300kb twojego własnego kodu, to jest lepszym wyborem IMHO.

+0

Niesamowita ankieta dla tych potężnych edytorów kodu HTML5. Ace robi wrażenie ... Dzięki za to –

Powiązane problemy