我想编写一个emacs lisp函数,它将输出写入当前窗口以外的窗口.如果只存在当前窗口,它应该创建一个新窗口,否则应该使用现有窗口.这类似于运行Chf(描述函数)时发生的情况,并在另一个窗口中弹出描述.做这个的最好方式是什么?
display-buffer是`window.el'中的交互式编译Lisp函数.
它必然是Cx 4 Co.
(display-buffer buffer-or-name&optional not-this-window frame)
在某些窗口中显示缓冲区缓冲区或名称但不选择它.buffer-or-name必须是缓冲区或现有缓冲区的名称.如果没有找到这样的窗口,则返回选择显示buffer-or-name的窗口或nil.
可选参数not-this-window non-nil表示将缓冲区显示在所选窗口以外的窗口中,即使它已经显示在所选窗口中.
可选参数框指定在已显示指定缓冲区时要调查的帧.如果缓冲区已经显示在其中一个框架的某个窗口中,则只返回该窗口.框架的可能值是:
`visible' - 考虑所有可见帧上的窗口.
0 - 考虑所有可见或图标化帧上的窗口.
t - 考虑所有帧的窗口.
特定帧 - 仅考虑该帧上的窗口.
nil - 仅考虑所选帧上的窗口(实际上是最后一个非迷你缓冲帧).但是,如果
display-buffer-reuse-frames' or弹出框架'非零(非零并且仅在纯文本终端上不是图形),请考虑所有可见或图标化的帧.
或者你可以使用,pop-to-buffer如果你想要选择缓冲区(它听起来你没有),或者with-output-to-temp-buffer绑定standard-output要发送到临时缓冲区 - 阅读文档了解更多细节(为此提示迈克尔).
| 归档时间: |
|
| 查看次数: |
1529 次 |
| 最近记录: |