Cách hiển thị khác biệt giữa hai bộ đệm với khác biệt ở cấp độ khác


20

Khi hai bộ đệm được so sánh về sự khác biệt, M-x ediff-bufferskhông chỉ ra các ký tự cụ thể đã thay đổi trong một từ (nghĩa là "mức độ ký tự" khác nhau). Hầu hết các công cụ diff hiện đại sẽ hiển thị các khác biệt trong một từ.

Emacs dường như thiếu tính năng quan trọng này (hoặc rõ ràng là hữu ích?) Theo mặc định. Làm thế nào tôi có thể làm cho Emacs hiển thị các khác biệt theo nhân vật?

Cập nhật Dưới đây M-x ediff-buffers diff1 diff2, sử dụng emacs -Qđể đảm bảo chủ đề của tôi không bị can thiệp: nhập mô tả hình ảnh ở đây

Đây là cùng một văn bản dán vào Meld: nhập mô tả hình ảnh ở đây


Có vẻ như vấn đề này liên quan đến chủ đề bạn đang sử dụng. Trong vanilla Emacs (24.4), sự khác biệt giữa các dòng riêng lẻ được tô sáng. Bạn có thể xác minh điều này bằng cách bắt đầu Emacs qua emacs -Qvà kêu gọi ediff-bufferstrên diff1diff2như bình thường.
itjeyd

Tôi đã thử chạy với emacs -Q, thêm ở trên. Ngoài ra, tôi đã sửa đổi câu hỏi của mình để giải quyết các khác biệt ở cấp độ ký tự thay vì các khác biệt nội dòng .
modulitos

Câu trả lời:



6

Tính năng này được gọi là "tinh chỉnh" trong Ediff. Bạn có thể nhấn *để tinh chỉnh hunk hiện tại hoặc @bật tinh chỉnh tự động bất cứ khi nào bạn chuyển sang một hunk khác.


1
Tôi đã sửa đổi câu hỏi của mình để giải quyết các khác biệt ở cấp độ nhân vật thay vì các khác biệt nội tuyến . Có thể làm cho Emacs hiển thị các khác biệt trong một từ?
modulitos
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.