当我打开多个文件时,如何防止Emacs水平分割屏幕?

8

我希望能够像以下命令一样使用Emacs打开多个文件:

emacs file1 file2

当Emacs启动时,我希望Emacs屏幕不会水平分割。我期望的是在不同的缓冲区中打开文件,只有一个文件显示在整个Emacs窗口中。
那么我该怎么做呢?
4个回答

11
(add-hook 'window-setup-hook 'delete-other-windows)

我想要的效果已经实现了...在我询问这里之后才发现。


1

好的,您可以这样设置一个(tcsh)别名

alias emacs emacs -eval '"(run-with-idle-timer 0 nil (quote delete-other-windows))"'

这将使emacs隐藏所有其他窗口(因此您只有一个窗口)。因此,您的调用

emacs file1 file2

被翻译为

emacs -eval '"(run-with-idle-timer 0 nil (quote delete-other-windows))"' file1 file2

0

虽然不太优雅,但是它能用:

$ emacs -nw --eval "(mapcar 'find-file '(\"1.txt\" \"2.txt\"))"

0

或者在Emacs加载后按C-x 1。

个人认为,如果您从命令行调用它,那么您正在误用Emacs。我倾向于从Emacs内部的eshell中访问文件。


同时显示多个缓冲区非常有价值。有了一个大屏幕,我可以显示4个缓冲区,并且每个缓冲区都可以使用。虽然通常情况下我不需要这么多,但是当我需要的时候... - Cheeso
如果您能够解释如何从eshell内部访问文件,而不仅仅是提到您喜欢这样做,或者解释一下在非分屏模式下成功打开缓冲区后应该如何循环浏览缓冲区,那么这将是一个很好的答案。 - si28719e
您可以使用 find-file 命令在 eshell 中访问文件。 - jrockway

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接