Emacs在当前窗口中打开另一个shell

bph*_*bph 9 emacs shell

一个小问题一直困扰着我与emacs

在缓冲区中打开shell时,我会:

M-x shell

到现在为止还挺好

但是如果我想打开另一个shell,我会切换到另一个缓冲区并:

C-u M-x shell

但这总是在另一个窗口打开 - 而不是我目前所在的窗口

这有点烦人有谁知道如何解决它?

编辑

我应该补充一点,我在多个分割窗口中打开了多个缓冲区,例如我的框架分为3个部分 - 我想要的是在当前具有焦点的同一部分中打开的新shell,即我输入的那个和不是替代的

我想当我这样做时会发生C-u M-x shell新的shell缓冲区在下一个窗口中打开,即如果你点击就会转移到那个窗口C-x o.我希望它在同一个窗口中打开

sds*_*sds 3

Emacs在专用缓冲​​区中运行交互式 shell 。它不能在 TeX 缓冲区中运行 shell。

M-x shell如果还没有新的 shell,则创建一个新的 shell,并C-u M-x shell询问您新缓冲区的名称。您还可以重命名 shell 缓冲区以方便多个 shell,请参阅上面的链接。

pop-to-buffer-same-window编辑:新的 shell 缓冲区使用(在 Emacs24 中)显示。你最好的场所是添加*Shell*-display-buffer-alist但那里没有必要。

在 Emacs23 中,缓冲区的显示由(因为或中有匹配项)*Shell*控制。设置为(或类似的东西),你应该是金色的。special-display-function*Shell*special-display-buffer-namesspecial-display-regexpsspecial-display-functiondisplay-buffer-same-window

然而,最终的解决方案是将Emacs升级到v24;由于您使用的是 Linux 系统,因此应该很简单。