Emacs ido:如何首先显示特定的文件结尾?

Mar*_*ert 4 emacs ido

ido-mode在Emacs 24下使用以下设置:

(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)
Run Code Online (Sandbox Code Playgroud)

假设您在当前目录中有多个具有相同名称但结尾不同的文件.如果您通过更改缓冲区C-x b,则会收到一些建议.这些建议的顺序能否以某种方式受到影响?

例如,假设您在当前目录中有多个Sweave(.Rnw)文件.它们总是比从它们创建的相应(.tex)文件更重要.因此,在大多数情况下,您希望将缓冲区更改为.Rnw文件,而不是.tex文件.因此,如果首先建议.Rnw文件(在存在具有相同基本名称的.Rnw和.tex文件的所有目录中)将是很好的.

art*_*can 7

"如果您想调整默认文件排序,比如首先显示Sweave文件,请告诉ido哪些文件具有更高的排序优先级:"

(setq ido-file-extensions-order '(".Rnw" ".tex"))
Run Code Online (Sandbox Code Playgroud)

但它只适用于ido-find-file不适用ido-switch-buffer.缓冲区按most recent属性排序.我不知道功能,它增加了另一个排序属性most recent.函数ido-file-extension-lessp可用于以这种方式对缓冲区列表进行排序.但是两种排序可能会相互冲突.