ema*_*ike 25 emacs autocomplete dot-emacs find
当I:Cx Cf TAB时,如何防止Emacs向我显示我不感兴趣的所有文件(例如〜备份文件,.pyc文件或.orig文件)?
它在一个方面起作用:如果我知道我要打开的文件以foo开头,我键入foo TAB,那么迷你缓冲区正确地自动填充到foo.py. 它正确地忽略了foo~和foo.pyc,因为〜和.pyc都在completion-ignored-extensions中.如果我真的想通过输入我自己的所有字母,它也正确地让我打开被忽略的文件.
但是,如果我只是点击TAB以显示完成列表缓冲区,那么该列表包含在completion-ignored-extensions中具有扩展名的文件,这使得很难找到我正在寻找的内容.
很明显,忽略不感兴趣的文件的代码是有效的.如何获得完成列表缓冲区以尊重completion-ignored-extensions?
(顺便说一下,我可以让dired表现得类似吗?)
Tre*_*son 22
这条建议过滤掉了以下列出的扩展名的文件'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)))))
Run Code Online (Sandbox Code Playgroud)
注意:这不会影响dired
.
对于此dired
问题,请将此添加到.emacs
(eval-after-load "dired"
'(require 'dired-x))
(add-hook 'dired-mode-hook
(lambda ()
(dired-omit-mode 1)))
Run Code Online (Sandbox Code Playgroud)
我建议使用ido-mode忽略文件; 它默认带有Emacs,并添加了许多其他有用的增强功能,您很快就会爱上它们.这篇Mastering Emacs博客文章中的Ignorance is Bliss部分介绍了如何忽略文件,目录和缓冲区:
ido-ignore-buffers
获取要忽略的缓冲区列表 C-x bido-ignore-directories
获取要在C-x d和中忽略的目录列表C-x C-fido-ignore-files
获取要忽略的文件列表 C-x C-f 归档时间: |
|
查看次数: |
3069 次 |
最近记录: |