回答:
Dawid Eckertによって記述され、彼のgithub emacs.configで公開された次のコードは、新しく作成されたバッファーにカーソルを移動します。
(defun split-and-follow-horizontally ()
(interactive)
(split-window-below)
(balance-windows)
(other-window 1))
(global-set-key (kbd "C-x 2") 'split-and-follow-horizontally)
(defun split-and-follow-vertically ()
(interactive)
(split-window-right)
(balance-windows)
(other-window 1))
(global-set-key (kbd "C-x 3") 'split-and-follow-vertically)
C-x4bswitch-to-buffer-other-window
指定されたバッファに切り替えて実行します(ただし、作成されるのは、表示されるバッファが1つだけです)。
より高度な動作を行うには、関数を自分で実装する必要があります。前述の関数の実装を調べてインスピレーションを得ることができます。
(defun switch-to-buffer-other-frame (buffer-or-name &optional norecord)
"..."
(interactive
(list (read-buffer-to-switch "Switch to buffer in other frame: ")))
(pop-to-buffer buffer-or-name display-buffer--other-frame-action norecord))