我在Emacs 24下使用ido-mode
并使用以下设置:
(ido-mode 1)
(setq ido-enable-flex-matching t)
(setq ido-everywhere t)
(setq ido-use-filename-at-point 'guess)
(setq ido-use-url-at-point t)
(setq ffap-require-prefix t)
假设您在当前目录中有多个具有相同名称但结尾不同的文件。如果您通过C-x b
更改缓冲区,则会收到一些建议。这些建议的顺序能否以某种方式受到影响?
例如,假设您在当前目录中有多个Sweave(.Rnw)文件。它们总是比从它们创建的相应(.tex)文件更重要。因此,在大多数情况下,您希望将缓冲区更改为.Rnw文件,而不是.tex文件。因此,如果首先建议.Rnw文件(在存在具有相同基本名称的.Rnw和.tex文件的所有目录中)将是很好的。
答案 0 :(得分:7)
“如果您想调整默认文件排序,比如首先显示Sweave文件,请告诉ido哪些文件具有更高的排序优先级:”
(setq ido-file-extensions-order '(".Rnw" ".tex"))
但它仅适用于ido-find-file
,不适用于ido-switch-buffer
。缓冲区按most recent
属性排序。我不知道功能,它在most recent
上添加了另一个排序属性。函数ido-file-extension-lessp
可用于以这种方式对缓冲区列表进行排序。但是两种排序可能会相互冲突。