关闭当前时跳转到上一个window

Jump to the previous window when closing the current

在多重window 情况下关闭当前window 后,焦点跳跃几乎没有问题。例如。我在堆栈中打开了 3 windows (1, 2, 3)。我在window 2,我水平拆分当前window(有1,2,3,4 windows当前为3),我退出他window和光标跳到window 3。感觉挺不直观的。在这种情况下,我怎样才能使焦点达到 window 2?

尝试以下功能:

(defun delete-window-select-sibling (&optional WINDOW)
  (interactive)
  (let ((sibling (or (window-prev-sibling WINDOW)
                     (window-next-sibling WINDOW))))
    (delete-window WINDOW)
    (when sibling
      (select-window sibling))))

您可以将它绑定到 C-x 0,方法是将它与以下行一起放入您的 init file 中:

(global-set-key (kbd "C-x 0") 'delete-window-select-sibling)

在我看来,像上面这样的小辅助功能比advising delete-window更可取,因为某些模式可能依赖于后者的工作方式。