Помимо разделения кадра вручную с помощью Cx 2 или Cx 3 , буферы также автоматически «всплывают» несколько раз.Они также не выбраны / активны по умолчанию.
Это можно исправить, изменив функцию, используемую для разделения окна.По умолчанию он установлен на split-window-sensibly
, но вы можете установить его в свою собственную функцию, которая вызывает split-window-sensibly
, а затем выбирает буфер.
К сожалению, однако, это имеет побочный эффект при выборе *Completions*
буфер, когда вы нажимаете TAB в минибуфере.Таким образом, стоит проверить, активен ли минибуфер, и в этом случае не .Держу пари, есть и другие подобные нежелательные сценарии.Я постараюсь обновить этот пост, как и когда я найду их.
;; after splitting a frame automatically, switch to the new window (unless we
;; were in the minibuffer)
(setq split-window-preferred-function 'my/split-window-func)
(defun my/split-window-func (&optional window)
(let ((new-window (split-window-sensibly window)))
(if (not (active-minibuffer-window))
(select-window new-window))))
(Работает с Emacs 24.5.1.)