在GNU emacs中,每当我点击Ctrl-x Ctrl-b查看所有缓冲区时,窗口将被拆分以显示缓冲区列表,或者如果我的窗口已经拆分为2(例如,我将在下部窗口中运行一个shell) ,缓冲区列表出现在另一个窗口中.
我想要的行为是缓冲区列表出现在我的活动窗口中,这样我就可以选择我想要的缓冲区并继续在同一个窗口中工作,而不必去Ctrl-x Ctrl-o另一个缓冲区,选择缓冲区(带enter)并编辑在另一个窗口缓冲...我用Google搜索但它似乎不是一个普遍的愿望?我想知道是否有人有elispy(或其他)解决方案?
zim*_*668 59
您可能希望重新绑定C-x C-b以调用buffer-menu而不是list-buffers:
(global-set-key "\C-x\C-b" 'buffer-menu)
Run Code Online (Sandbox Code Playgroud)
jro*_*way 13
只需自定义变量same-window-regexps. display-buffer将显示当前所选窗口中名称与正则表达式匹配的任何缓冲区.
(你需要添加" [*]Buffer List".)
奇怪的是,这里没有关于ibuffer.
对于大多数 Emacs 用户,我建议将此作为标准更改:
(global-set-key (kbd "C-x C-b") 'ibuffer)
Run Code Online (Sandbox Code Playgroud)
ibuffer 是默认缓冲区列表的非常先进的替代品,不仅具有所要求的确切行为,而且还提供了丰富的其他功能。
我在Emacs 中列出了一些 ibuffer 过滤和分组基础 :帮助我理解文件/缓冲区管理,但请务必阅读文档以获取详细信息。