Cách tốt nhất để phát hiện tổ hợp phím (ví dụ: thông qua một cái móc) không chỉnh sửa bộ đệm là gì? Ý tôi là những thứ như phím mũi tên cho chuyển động điểm, gọi đến beginning-of-buffer
, v.v.
Lý do cho điều này là vì tôi đang làm việc với một số ycmd
ràng buộc cho emacs và tôi muốn có thể phát hiện (ít nhất là theo kinh nghiệm) khi người dùng đã ngừng chỉnh sửa và đang di chuyển xung quanh bộ đệm. Đây là thời điểm tốt để chuyển nội dung bộ đệm ra để phân tích cú pháp. Máy khách vim thực hiện việc này khi người dùng thoát khỏi chế độ chèn và tôi đang cố gắng mô phỏng hành vi đó.
self-insert-command
hủy và sắp xếp lại bộ hẹn giờ thay vì sử dụng bộ hẹn giờ nhàn rỗi. Bằng cách này, ngay cả khi người dùng làm gì đó, bộ hẹn giờ sẽ không được đặt lại trừ khi "cái gì đó" là chèn văn bản.
after-change-functions
là một cơ chế chung để phản ứng với các thay đổi văn bản.
post-command-hook
. Điều đó sẽ kích hoạt mọi thứ, vì vậy bạn có thể cần thực hiện một số bộ lọc về những gì đã kích hoạt nó trước khi thực hiện bất kỳ hành động nào bạn muốn.
buffer-chars-modified-tick
chức năng có thể hữu ích.