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
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
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.
Ile używa się pisaków składni? – alex
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