8

キーを押すと、emacs のウィンドウで開くことを「トグル」したいバッファーがあります。

例えば:

 ________________        ________________        ________________ 
|                |      |    |           |      |                |
|                |      |    |           |      |                |
|                |      |    |           |      |                |
|       W        |  ->  | S  |     W     |  ->  |        W       |
|                | <f3> |    |           | <f3> |                |
|                |      |    |           |      |                |
 ----------------        ----------------        ---------------- 

S左側のウィンドウのどこに特定のバッファがあります。

のウィンドウ構造に関係なく、これが発生するという問題が発生しますW。そのW中にいくつかの異なるウィンドウがある場合、 を押す<F3>と画面の端に新しいウィンドウが作成され、特定のバッファがそこに置かれ、それが削除されます。

ただし、これを行う方法がemacsであるかどうかはよくわかりません。

4

1 に答える 1

7

これを出発点として試してください。パッケージが必要popwinです。

(require 'popwin)
(popwin-mode 1)

(generate-new-buffer "special-buffer")

(setq eab/special-buffer-displaedp nil)
(setq eab/special-buffer "special-buffer")

(add-to-list 'popwin:special-display-config
         `(,eab/special-buffer :width 20 :position left :stick t))    

(defun eab/special-buffer-toggle ()
  (interactive)
  (if eab/special-buffer-displaedp
      (progn
      (popwin:close-popup-window)
      (setq eab/special-buffer-displaedp nil))
    (progn
      (ignore-errors (popwin:display-buffer eab/special-buffer))
      (setq eab/special-buffer-displaedp 't))))

(global-set-key (kbd "<f3>") 'eab/special-buffer-toggle)
于 2013-10-19T05:12:08.140 に答える