埋藏缓冲列表框架参数在Emacs中的作用是什么

时间:2008-08-29 19:27:18

标签: emacs elisp

在emacs中,我已阅读simple.el中的以下代码段:

(frame-parameter frame 'buried-buffer-list)

'buried-buffer-list参数的确切含义是什么? 它用于什么?

2 个答案:

答案 0 :(得分:1)

M-x描述函数RET frame-parameter 的结果是:

  

frame-parameter是内置的   功能

(frame-parameter FRAME PARAMETER)
     

返回参数的FRAME值   参数。如果FRAME为零,请描述   当前选择的框架。

另外,请查看名为"Frame/Frame Parameters"的节点的Elisp信息手册。没有具体的参考我可以找到的'埋藏缓冲列表。

您可以通过评估来获得它的价值:

(cdr (frame-parameter FRAME 'buffer-list))

因为“隐藏缓冲区”只是一个缓冲区,它被推送到特定帧的缓冲区列表的后面。请参阅bury-buffer的文档:

  

bury-buffer是`window.el'中的交互式编译Lisp函数。

     

(埋葬缓冲区和可选的BUFFER-OR-NAME)

     

将BUFFER-OR-NAME放在所有缓冲区列表的末尾。它就是   “其他缓冲区”最不可能返回的候选者;就这样   默认情况下,最不可能选择C-x b的缓冲区。

     

您可以将缓冲区名称指定为BUFFER-OR-NAME或实际缓冲区   宾语。如果BUFFER-OR-NAME为零或省略,则隐藏当前缓冲区。   此外,如果BUFFER-OR-NAME为nil或省略,则删除当前缓冲区   从所选窗口中显示它。

答案 1 :(得分:1)

快速查看http://www.update.uu.se/~ams/slask/emacs/src/frame.h返回:

List of buffers that were viewed, then buried in this frame.  The
most recently buried buffer is first.  

所以从理论上讲,你可以使用cdr来获得与Ben Collins所说的相同的列表。