如何在Emacs Lisp脚本中调用“:vsp”?
假设我有一个Emacs Lisp脚本,我使用如何在Emacs Lisp脚本中调用“:vsp”?,emacs,evil-mode,Emacs,Evil Mode,假设我有一个Emacs Lisp脚本,我使用M-x eval buffer执行它。在这个脚本中,我想调用几次:vsp(垂直拆分) 如何以编程方式执行此操作? C-hk将我带到命令。但是,我找不到类似于vsp或split的内容 更新1: 我在中找到了邪恶窗口vsplit 但是,它的工作方式不同于:vsp。如果我执行脚本 (evil-window-split) (evil-window-vsplit) (evil-window-down 1) (evil-window-split) (evil-w
M-x eval buffer
执行它。在这个脚本中,我想调用几次:vsp
(垂直拆分)
如何以编程方式执行此操作?
C-hk
将我带到命令。但是,我找不到类似于vsp
或split
的内容
更新1:
我在中找到了邪恶窗口vsplit
但是,它的工作方式不同于:vsp
。如果我执行脚本
(evil-window-split)
(evil-window-vsplit)
(evil-window-down 1)
(evil-window-split)
(evil-window-vsplit)
(evil-window-vsplit)
该窗口如下图所示
如果我手动执行命令C-w s
,:vsp
,和C-w j
,结果如下:
更新2:看起来是(邪恶窗口关闭1)
导致了问题
原因如下:如果我运行脚本
(evil-window-split)
(evil-window-vsplit)
(evil-window-down 1)
(evil-window-split)
(evil-window-vsplit)
(evil-window-vsplit)
我得到了正确的结果(窗口水平分为两部分,上部分为三部分)。底部部分未拆分,因为脚本中没有拆分它的命令
然后,我添加了导航到水平分割底部的命令((邪恶窗口向下1)
,相当于C-w j
):
这个脚本产生了错误的结果:不仅上半部分被分成三部分(就像应该的那样),而且下半部分也被分成三部分(不应该被分割)
更新3:如果我使用
M-x加载文件执行脚本,则不会发生上述错误,这很有趣。如果您单独执行这三个命令,它将给出您要查找的结果。但是,如果您eval buffer
,则生成的窗口布局会发生变化。编辑:如果将三个命令包装在progn
中,则该命令有效。删除(邪恶窗口向下1)
也可以从评估缓冲区中执行此操作。奇怪的