File 在wdired模式下重命名多个文件时出现名称冲突

File 在wdired模式下重命名多个文件时出现名称冲突,file,emacs,rename,dired,File,Emacs,Rename,Dired,在wdired模式下,如果我尝试一步将文件A重命名为B,并将文件B重命名为C,则将A更改为B的部分可能会被拒绝,因为它与现有文件B冲突,并且只有B更改为C。但这实际上取决于顺序;如果B到C更早完成,则不会导致问题。有没有一种简单的方法可以让wdired查找这样的智能操作顺序,并让它一步完成A到B和B到C?对wdired的一些补充,wdired的替代方案,或者一些黑客?编辑:起初我认为“改进的重命名顺序”看起来像是一个解决方案,但下面的评论表明,这已经在标准代码中得到了处理,所以我想它不包括您的情

在wdired模式下,如果我尝试一步将文件
A
重命名为
B
,并将文件
B
重命名为
C
,则将
A
更改为
B
的部分可能会被拒绝,因为它与现有文件
B
冲突,并且只有
B
更改为
C
。但这实际上取决于顺序;如果
B
C
更早完成,则不会导致问题。有没有一种简单的方法可以让wdired查找这样的智能操作顺序,并让它一步完成
A
B
B
C
?对wdired的一些补充,wdired的替代方案,或者一些黑客?

编辑:起初我认为“改进的重命名顺序”看起来像是一个解决方案,但下面的评论表明,这已经在标准代码中得到了处理,所以我想它不包括您的情况

编辑2:您使用的是哪个版本的Emacs


在再次查看该过时补丁的描述,然后在Emacs 23.2.1中进行一些测试之后,这类事情似乎非常明智,我得到了消息“循环重命名:使用临时文件名”当将生成副本时,最终结果是正确的。

我使用的是gnu Emacs 23.3.1,但问题出现了。有可能我的wdired很旧吗?如果你没有使用Emacs附带的wdired(根据Wiki,它从22.1开始就是Emacs的一部分),那么是的,这绝对是可能的
M-x find library RET wdired RET
将带您访问该文件。如果它位于site lisp或其他本地目录中,您无疑会希望将其删除。FWIW,我的在顶部附近有一条“Version:2.0”的评论(emacs23.2)。谢谢,原来我已经在我的本地目录中找到了,而且已经存在很长时间了。我把它取下来了,现在可以用了。