Respuestas:
El siguiente código escrito por Dawid Eckert y publicado en su github emacs.config mueve el cursor al búfer recién creado:
(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-x4bejecuta lo switch-to-buffer-other-windowque cambia al búfer especificado (pero lo crea solo solo se muestra un búfer).
Para un comportamiento más sofisticado, tendría que implementar la función usted mismo. Puede buscar la implementación de la función mencionada anteriormente en busca de inspiración:
(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))