Emacs相当于vim';s垂直分裂(vs)?

Emacs相当于vim';s垂直分裂(vs)?,vim,emacs,Vim,Emacs,当我打开一个文件时,我想打开另一个,窗口垂直拆分。在vim中,这是:vs filename。在emacs中,我认为这是C-x3,C-xo,C-xc-F,filename。我们可以把它缩短吗?C-h f find file other window RET 默认情况下,它绑定到C-x 4 f,但您可以使用全局设置键将其重新映射到C-x f,,我认为仅使用查找文件其他窗口并不是您想要的。它使用显示缓冲区,这不仅仅是垂直拆分,而是试图找到一个显示新缓冲区的位置。你可以这样做 (defun find-f

当我打开一个文件时,我想打开另一个,窗口垂直拆分。在vim中,这是
:vs filename
。在emacs中,我认为这是
C-x3
C-xo
C-xc-F
filename
。我们可以把它缩短吗?

C-h f find file other window RET


默认情况下,它绑定到
C-x 4 f
,但您可以使用
全局设置键将其重新映射到
C-x f
,我认为仅使用
查找文件其他窗口
并不是您想要的。它使用
显示缓冲区
,这不仅仅是垂直拆分,而是试图找到一个显示新缓冲区的位置。你可以这样做

(defun find-file-split-horizontally()
  (interactive)
  (flet                                 ; temporary change
                                        ; display-buffer function to
                                        ; our needs
    ((display-buffer (buffer-or-name &optional not-this-window frame)
       (select-window (split-window-horizontally)) ; select newly created window
       (switch-to-buffer buffer-or-name)))
(call-interactively 'find-file-other-window)))

(defun switch-to-buffer-split-horizontally()
  (interactive)
  (flet
    ((display-buffer (buffer-or-name &optional not-this-window frame)
       (select-window (split-window-horizontally))
       (switch-to-buffer buffer-or-name)))
(call-interactively
  ;; use only one of these
  'ido-switch-buffer-other-window
  ;;'switch-to-buffer-other-window
  )))

这将始终尝试水平分割当前缓冲区。

查找文件的帮助页面可能会提到相关功能。否则,请记住
C-h f find--file选项卡将自动完成所有可能的匹配,并使查找与这些单词相关的内容变得容易。