2

display-buffer-reuse-framesを使用して特定のフレームに のような動作を強制するにはどうすればよいdisplay-buffer-alistですか?

私はやってみました

(setq display-buffer-alist
      '(("\\*compilation\\*" .
         (display-buffer-reuse-window '((inhibit-same-window . t))))
        ))

、しかし役に立たない。ドキュメンテーションは、Emacs の標準から見ても長くて難解であり、例もありません。

これは廃止されたため、質問 3311577(setq-default display-buffer-reuse-frames t)とは異なります。

4

1 に答える 1

3

reusable-framesALIST 引数のエントリを?display-buffer-reuse-windowではなくに使用したいようです。inhabit-same-window(または、おそらく両方が必要でしたか?)

add-to-listまた、リスト全体を で破壊するのではなく、を使用したいと考えていsetqます。

編集:ドキュメントのドットペア表記を使用していたため、元の回答はリスト構造を台無しにしましたが、ドットの1つを省略していました!

したがって、正しい値は次のとおりです。

(add-to-list
 'display-buffer-alist
 '("\\*compilation\\*" . (display-buffer-reuse-window
                          . ((reusable-frames . t)))))

または同等:

(add-to-list
 'display-buffer-alist
 '("\\*compilation\\*" display-buffer-reuse-window
                         (reusable-frames . t)))

customizeまた、これを構成するための優れたインターフェイスがあることにも気付きました。

于 2013-05-21T02:07:12.343 に答える