Tôi phụ thuộc vào *Messages*
bộ đệm rất nhiều, nhưng các mục không được đánh dấu thời gian.
Làm cách nào để thêm dấu thời gian vào từng mục trong bộ đệm Tin nhắn của Emacs ?
Vì vậy, một cái gì đó như thế này:
Loading /Users/gsl/lisp.d/init.el (source)...
No outline structure detected
For information about GNU Emacs and the GNU system, type C-h C-a.
Loading /Users/gsl/lisp.d/var/recentf...done
Error running timer: (wrong-number-of-arguments (lambda nil (setq gc-cons-threshold (* 64 1024 1024)) (message "WARNING: gc-cons-threshold restored to %S")) 1)
[yas] Prepared just-in-time loading of snippets successfully.
M-] is undefined
CHILDREN [2 times]
‘show-all’ is an obsolete command (as of 25.1); use ‘outline-show-all’ instead.
Invalid face reference: nil [33 times]
Auto-saving...done
Saving file /Users/gsl/lisp.d/init.el...
Wrote /Users/gsl/lisp.d/init.el
mwheel-scroll: Beginning of buffer [5 times]
Mark set
previous-line: Beginning of buffer [10 times]
Quit [4 times]
sẽ trở thành một cái gì đó như thế này:
2017-02-14-18:50:01 Loading /Users/gsl/lisp.d/init.el (source)...
2017-02-14-18:50:02 No outline structure detected
2017-02-14-18:50:03 For information about GNU Emacs and the GNU system, type C-h C-a.
2017-02-14-18:50:05 Loading /Users/gsl/lisp.d/var/recentf...done
2017-02-14-18:50:10 Error running timer: (wrong-number-of-arguments (lambda nil (setq gc-cons-threshold (* 64 1024 1024)) (message "WARNING: gc-cons-threshold restored to %S")) 1)
2017-02-14-18:50:12 [yas] Prepared just-in-time loading of snippets successfully.
2017-02-14-18:50:40 M-] is undefined
2017-02-14-18:50:41 CHILDREN [2 times]
2017-02-14-18:50:00 ‘show-all’ is an obsolete command (as of 25.1); use ‘outline-show-all’ instead.
2017-02-14-18:50:01 Invalid face reference: nil [33 times]
2017-02-14-18:51:01 Auto-saving...done
2017-02-14-18:51:03 Saving file /Users/gsl/lisp.d/init.el...
2017-02-14-18:51:06 Wrote /Users/gsl/lisp.d/init.el
2017-02-14-18:51:09 mwheel-scroll: Beginning of buffer [5 times]
2017-02-14-18:51:11 Mark set
2017-02-14-18:51:21 previous-line: Beginning of buffer [10 times]
Tôi đã tìm kiếm trên EmacsWiki, Reddit và emacs.sx, tất nhiên, không có kết quả.
Tôi biết command-log-mode
, có thể được điều chỉnh để đăng nhập bằng dấu thời gian, nhưng nó chỉ hữu ích cho các lệnh tương tác, không phải tất cả các thông báo, bao gồm cả các "hệ thống" của Emacs.
Thay vào đó, mọi tin nhắn được ghi vào bộ đệm Tin nhắn nên được đánh dấu thời gian.
Làm cách nào để thêm dấu thời gian vào từng mục trong bộ đệm Tin nhắn của Emacs , bất kể nguồn đó là gì?
after-change-functions
(trong bộ đệm thư) để thực hiện điều đó. Bất cứ khi nào một cái gì đó được chèn vào cuối bộ đệm, hãy thêm tiền tố vào dấu thời gian.
message
lệnh được thực hiện trong C và có khả năng có người gọi trực tiếp, vì vậy bạn sẽ không thể để đảm bảo mọi thông điệp Logged được một dấu thời gian mà không cần xây dựng Emacs mình. Điều đó nói rằng, bạn có thể có thể khuyênmessage
lệnh để giới thiệu một dấu thời gian khi nó được gọi từ Elisp. Một số lưu ý là bắt buộc:message
có thể được gọi mà không có đối số, chuỗi định dạng trống, v.v. Bạn cũng muốn tránh một vòng lặp đệ quy nếu lời khuyên dấu thời gian của bạn tự gọimessage
trong một số đường dẫn mã.