2012-03-23 29 views
17

Tôi đang tìm thư viện hoặc triển khai thuật toán giải thích javascript khác, đã được thử nghiệm và hoạt động với các tệp văn bản utf8 tùy ý.Các nodej có một thư viện hoặc thuật toán khác hoạt động không?

Tất cả những cái tôi tìm thấy cho đến nay (nói ví dụ, http://ejohn.org/projects/javascript-diff-algorithm/) thất bại trên trường hợp góc

(Hãy thử sử dụng một tập tin có chứa chuỗi '__proto__' trong thư viện mẫu của tôi.)

+1

http://toolbox.no.de/search?q=diff – fent

+0

DeaDEnD vui lòng đăng câu trả lời đó, nó giải quyết được sự cố của tôi. – blueberryfields

+0

có các công cụ khác được viết cho unix, sử dụng chúng – Raynos

Trả lời

10

lẽ điều này sẽ giúp bạn - jsdiff

+1

Phía trên là phía trước một lần nữa, vì vậy tôi đã cập nhật liên kết. Tôi nghi ngờ tại thời điểm bạn đăng bài này rằng thượng lưu đã giảm xuống phía sau. Đây là cái mà nó đã được liên kết trước đây: https://github.com/NV/jsdiff –

3

Tôi là người hâm mộ của google diff match patch. Bạn có thể thử một ví dụ here.

Có các tùy chọn dọn dẹp khác nhau để tinh chỉnh mức độ phổ biến giữa các khác biệt. Tôi không thích tùy chọn dọn dẹp ngữ nghĩa vì tôi thấy nó quá hung hăng, nhưng việc dọn dẹp hiệu quả với giá trị 10 hoạt động tốt cho tôi.

+0

Tôi thích cái này vì nó có sẵn trong Java, JavaScript, Dart, C++, C#, Objective C, Lua và Python. Bất kể ngôn ngữ, mỗi thư viện đều có cùng API và cùng chức năng. – elwarren

1

Hãy xem thư viện JavaScript wikEd diff. Nó có hỗ trợ Unicode và đa ngôn ngữ. Nó cũng phát hiện và làm nổi bật di chuyển khối và là từ/ký tự dựa. Bạn cũng có thể sử dụng online too/demo để kiểm tra các cài đặt khác nhau và xem xét cấu trúc dữ liệu nội bộ. Mã của thư viện được nhận xét đầy đủ.

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