ウィンドウを一意に識別しようとしているので、キーをもう一度押すとウィンドウを選択して削除できますが、これには問題があります。
(setq split-window-right-toggle-var nil)
(defun split-window-right-toggle ()
(interactive)
(if split-window-right-toggle-var
(progn
(right-split-undo)
(setq split-window-right-toggle-var nil))
(progn
(right-split-do)
(setq split-window-right-toggle-var t))))
(defun right-split-do ()
(interactive)
(split-window-right)
(other-window 1))
(defun right-split-undo ()
(interactive)
(other-window -1)
(delete-window))
このコードの問題は、アクティブなウィンドウに大きく依存することです。ウィンドウの状態を変更して間違ったウィンドウを削除する可能性があります。ウィンドウに一意に名前を付けて、そのウィンドウ名を削除対象にすることはできますか? 私は Emacs Lisp が初めてなので、助けていただければ幸いです。