3

我想query-replace-regexp在 emacs 中运行多个文件,发现这篇文章解释了如何做到这一点。当我尝试按照说明进行操作时,输入文件通配符后出现错误。

find . \( -iname \*.vb \) -exec ls -ld \{\} \;
Unknown option "-iname"

不幸的是,find我使用的是来自 Windows 上的 MKS Toolkit,它不支持该-iname选项。我尝试在我的 emacs lisp 文件中将所有出现的“iname”替换为“name”,然后进行字节编译并重新启动 emacs。这并没有解决问题,我得到了与以前完全相同的错误。经过一番挖掘,我发现了另一个命令find-dired,可以让您自定义使用的查找命令,因此我已经完成了搜索并使用此解决方法进行替换。

我的问题是:为什么我仍然收到-iname错误,即使在编辑我的源文件、重新字节编译它们并重新启动 emacs 之后?我想为将来跨多个文件的搜索和替换找到一个更永久的解决方案(并满足我的好奇心)。

4

1 回答 1

2

改变变量find-name-arg。运行M-x customize-group find-dired,或者只是放入(setq find-name-arg "-name")你的.emacs.

在我的 emacs 版本中,初始值来自find-dired.el. 您是否更改并重新编译了该文件?

于 2011-12-14T19:09:43.550 回答