2012-08-30 23 views
6

Tệp js biên tập ace được rút gọn từ kho lưu trữ github ace-builds (https://github.com/ajaxorg/ace-builds) là 275KB khổng lồ. Đây là một kích thước tệp lớn. Codemirror, trình soạn thảo js có cùng tầm cỡ cũng nằm dưới mốc 100KB.Kích thước tệp tin Ace Editor ace.js

Dường như có cách để xây dựng ace.js. Có cách nào để làm điều này trong khi giảm đáng kể kích thước tập tin?

+0

Bạn đang sử dụng bao nhiêu trình đánh dấu cú pháp? – alex

+0

Chỉ CSS và HTML. Mỗi tệp cho những ngôn ngữ đó chỉ có khoảng 20KB. Nếu bạn đang hỏi có bao nhiêu cú pháp cú pháp js khác nhau, thì chỉ có một: Ace Editor. – ambiguousmouse

Trả lời

-1

Tại sao không chỉ sử dụng CodeMirror? Nó là IMHO tuyệt vời.

10

ace.js là 294kb đã được tạo và phiên bản được rút gọn, vì vậy không có cách nào để giảm đáng kể điều này.

Có hai lý do cho sự khác biệt này có kích thước

  1. ace đã thêm nhiều tính năng được xây dựng trong Vì vậy, để thực hiện công bằng so sánh chúng tôi sẽ cần phải loại bỏ các tính năng này

    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 
    

    khác:. Mọi thứ giống như, hãy cuộn tự do trong khi chọn văn bản bằng chuột, hoạt ảnh trên trangUp/Down, chọn đường từ máng xối, chuyển đổi tốt hơn, gotoLineEnd thông minh, indentGuides, v.v. khó hơn emove, vì chúng không phải là các module độc ​​lập.

    nhưng Codemirror hỗ trợ phông chữ hai chiều và biến có kích thước sẽ bù cho một số phông còn lại vì vậy hãy dừng việc này. kích thước cuối cùng của cắt giảm ace (chúng ta hãy gọi nó ace -. js) là 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 
    

    kích thước mà quan trọng nhất là làm xấu đi + zip mà không phải là nhiều khác nhau

  2. Lý do thứ hai là mã hóa phong cách, Codemirrors phong cách là rất nhỏ gọn

    • nó sử dụng nhiều đóng (ace gần như không bao giờ sử dụng đóng cửa)
    • nó chứa rất ít sử dụng của this(493 vs 4373 trong ace--)
    • không sử dụng mô-đun, mọi thứ đều trong một tập tin, không giống như ace có 59 module
    • và nó có tên biến ngắn hơn nhiều

Vì vậy, nếu bạn cần một trình soạn thảo rất nhỏ, hoặc không thích cách thức hoạt động của ace và muốn thực hiện lại hầu hết, Codemirror là cách tốt hơn để đi.

Nhưng nếu bạn cần một trình soạn thảo ngang bằng với trình chỉnh sửa màn hình nền mà không cần thêm 300kb mã ace của riêng bạn là IMHO lựa chọn tốt hơn.

+0

Điều tra tuyệt vời về các trình chỉnh sửa mã html5 mạnh mẽ này. Ace thật ấn tượng ... Cảm ơn vì điều này –

Các vấn đề liên quan