有没有一种方法可以在Emacs中找出缓冲区已经活动了多长时间?
M-x list-buffers
会列出它们,但无法推断出缓冲区存在的时间。
没错。不过这只是因为我为你写了一些可以完成这个任务的内容。好吧,实际上是我为自己写的,但过去三四年来一直在使用它,现在已经离不开它了。
有一种更方便的列出缓冲区的模式叫做ibuffer
。它内置的标记命令之一是分配给.
(句号)键的“标记早于ibuffer-old-time
的缓冲区”,这是一个可自定义的变量,默认为72小时。 ibuffer
模式包含在标准的emacs-24发行版中。
这是我的.emacs
片段:
(when (require 'ibuffer nil 'noerror)
(define-key global-map "\C-x\C-b" 'ibuffer))
buffer-display-time
,它告诉您某个缓冲区上次显示的时间,这与其存在的时间不同。 - legosciaget-buffer-create
,通常用于创建一个缓冲区。,----
| buffer-list-update-hook is a variable defined in `buffer.c'.
| Its value is nil
|
| This variable can be risky when used as a file-local variable.
|
| Documentation:
| Hook run when the buffer list changes.
| Functions running this hook are `get-buffer-create',
| `make-indirect-buffer', `rename-buffer', `kill-buffer',
| and `bury-buffer-internal'.
`----
get-buffer-create
是一个很好的起点。