gpt4 book ai didi

emacs - 不要在 Emacs 完成窗口中显示无趣的文件

转载 作者:行者123 更新时间:2023-12-01 22:29:40 25 4
gpt4 key购买 nike

当我执行以下操作时,如何防止 Emacs 显示所有我不感兴趣的文件(例如 ~ 备份文件、.pyc 文件或 .orig 文件): C-x C-f TAB

它在一方面起作用:如果我知道我要打开的文件以 foo 开头,并且我输入 foo TAB 那么迷你缓冲区会正确地自动完成所有到 foo.py 的方式。它正确地忽略了 foo~ 和 foo.pyc,因为 ~ 和 .pyc 都在 completion-ignored-extensions 中。 。如果我真的想通过输入自己的所有字母,它也可以正确地让我打开任一被忽略的文件。

但是,如果我只是按 TAB 来调出完成列表缓冲区,则该列表包含带有 completion-ignored-extensions 中扩展名的文件,这使得它非常很难找到我要找的东西。

显然,忽略无趣文件的代码已经存在并且可以工作。如何让完成列表缓冲区遵守completion-ignored-extensions

(顺便说一句,我可以让 dired 表现出类似的行为吗?)

最佳答案

这条建议过滤掉'completion-ignored-extensions中列出的扩展名的文件:

(defadvice completion--file-name-table (after 
ignoring-backups-f-n-completion
activate)
"Filter out results when they match `completion-ignored-extensions'."
(let ((res ad-return-value))
(if (and (listp res)
(stringp (car res))
(cdr res)) ; length > 1, don't ignore sole match
(setq ad-return-value
(completion-pcm--filename-try-filter res)))))

注意:这不会影响dired

对于 dired 问题,请将其添加到您的 .emacs

(eval-after-load "dired"
'(require 'dired-x))

(add-hook 'dired-mode-hook
(lambda ()
(dired-omit-mode 1)))

阅读documentation for dired-x了解那里有什么可用的。

关于emacs - 不要在 Emacs 完成窗口中显示无趣的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1731634/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com