我最近开始使用ido-mode,总的来说,它很不错。但有一点似乎特别破碎了,我想知道是否有一个设置(ha)埋在那里来解决它。
ido-switch-buffer似乎并不关心埋藏的缓冲区。也就是说,如果我使用bury-buffer,然后是ido-switch-buffer,那么第一个选择通常是我刚刚埋葬的那个。
有一个简单的方法吗?掩埋缓冲区的重点是我不想很快再看到它。
答案 0 :(得分:2)
根据文件(C-h f bury-buffer
)
Put BUFFER-OR-NAME at the end of the list of all buffers.
There it is the least likely candidate for 'other-buffer' to return;
thus, the least likely buffer for C-x b to select by
default.
因此,如果你使用bury-buffer
,缓冲区仍然可用(在列表的末尾),所以ido-switch-buffer
找到它是正常的。
如果你不想看到那个缓冲区,你应该考虑关闭它。
答案 1 :(得分:0)
使用next-buffer
或previous-buffer
答案 2 :(得分:0)
我无法重现这一点。在Emacs 23上,据我所知,ido-switch-buffer以正确的顺序列出缓冲区。
在任何情况下,您都可以尝试使用iswitchb。它有点像偶像,只是更老,更具体的缓冲切换。如果您喜欢它,可以使用iswitchb进行缓冲区切换,使用ido进行其他操作。
答案 3 :(得分:0)
无法重现这一点:当我埋葬缓冲区并随后调用ido-switch-buffer
时,隐藏缓冲区不在交换机列表的前面。
我已经完成了相当多的ido定制(为了让它与dired一起运行良好等),但我的主要ido设置是:
(setq ido-show-dot-for-dired t)
(setq ido-default-file-method 'samewindow)
(setq ido-default-buffer-method 'samewindow)
(setq ido-confirm-unique-completion t)
(setq ido-max-dir-file-cache 20)
我的ido.el
版本是“ 1.57在gnu.emacs.sources上发布,适用于emacs 22.1 ”。
第h
答案 4 :(得分:0)
FWIW,Emacs-24中switch-to-buffer
(Cx b)的默认完成行为已更改为使用子串匹配完成,因此其行为类似于IDO,同时遵循“默认缓冲区不应该”的原则不是我刚埋葬的那个人。您可以通过启用icomplete-mode
(它不会更改完成行为本身,但在迷你缓冲区末尾显示完成候选项)使其更加相似。