利用Quicker自身的模块编写文件重命名能做到这样非常牛了,赞!(虽然我还是习惯简单的用TC,复杂的用菲菲更名)
用了一下,好的就不夸了^_^,提几个建议吧:
一个是关于选择文件,现在是在资源管理器选中文件才可以操作,虽然动作右键有遍历模式,但是还是建议:可以通过文本窗口菜单的形式,使用选择文件或文件夹模块来获取文件,甚至可以支持嵌套子文件夹。因为毕竟使用了文本窗口模块,应该尽量少用动作右键(包括右键的预设功能都可以整合到文本窗口的菜单)。当然还需要考虑是添加还是覆盖现有,是否执行已经选择的更名规则等情况
二是使用动作右键遍历模式,当文件夹有嵌套或者文件较多时,需要比较长的时间,现在没有提示会以为动作没有执行,建议:增加一个等待窗口,更好一点可以增加进度条。
三是预览好像采用的是等待窗口,一是不够直观,二是如果文件特别多的时候,不知道等待窗口显示内容是否会有限制,建议:是不是采用表格的方式更好一些。
四是建议:文件夹与文件应该分开管理,比如分开显示、排序。(这个改起来可能复杂一点,可能会动你的数据结构,不知道你现在是不是文件夹和文件在一个列表中,如果不是改起来比较方便些;如果在一个列表,难度大些...)
五是建议:在执行更名前,最好能够显示使用的更名规则,并确定(保障安全系数)
PS:本来我也想利用文本窗口模块,参照菲菲更名做一个动作,后来发现文本窗口不能定义让用户无法更改内容后,就放弃了。因为如果想设计更加完善的更名功能,这个是关键,我也曾向CL提过建议。因为只有文本窗口的内容用户无法修改,才不用担心用户把文件信息弄乱了,可以设计更多的东西,比如可以标注文件夹以区分文件夹和文件名;可以标注文件路径,分开管理不同路径下的文件;可以标注当前排序方式等等。
最后希望这个动作更加完善,祝好!
感谢详细建议,回复如下:
1. 文件(夹)的载入方式问题。添加(载入)文件或文件夹,的确是放在主界面的菜单比较合适。
2. 遍历模式耗时问题。遍历文件夹本身速度不慢的,你说的应该属于极端情况了,一般重命名需求不会有过于复杂的嵌套层级的。「获取选中的文件」数量一多倒是挺慢的,不过这个属于模块的问题了。另外,遍历文件夹就是单个步骤,没法做进度条,也没办法在它遍历过程中加入提示。其他的,比如执行重命名过程、获取元数据过程倒是有增加进度条的想法。
3. 关于预览窗口。编辑器的文本内容本身就是实时预览了,当前的「预览」菜单主要是为了展示文件名前后对比。采用表格的话,可以展示更多的字段信息,信息对比更直观,数据大的情况下性能也更好。
4. 文件与文件夹。其实对我个人而言,就不应该把两者混在一起进行重命名。但是我不确定别人会不会存在这样的需求,所以是允许混合载入的。初步打算是,单个批次添加的文件/文件夹,排序上分为两部分,文件夹位于上部。多个批次之间,简单的拼接列表。
5. 关于用户手动编辑的问题。可能你对动作的实现方式的理解有些偏差。编辑器的行号是严格对应着原文件的,所见即所得,你把第二行内容改成什么样子,第二个文件就会重命名成什么样子。手动去编辑内容和通过菜单功能操作没有本质区别,只不过菜单功能更便捷更强大、以及不容易误操作文本。没太明白你说的“显示使用的更名规则”的作用是什么。
遍历的时候无法做进度条可以理解,但是可以在开始的时候显示一个等待窗口,提示正在读取文件名称,读取结束后关闭等待窗口,这个是可以实现的。
文件和文件夹分上下两部分管理,我觉得是目前比较好的方式,因为我原来也想这样设计的。
对于手动编辑的问题,其实我并不是特别赞成使用文本编辑器直接修改文件的名字,因为有时可能是不小心修改了文件名,而自己并不知道。我还是比较推荐记录每一步更新规则,比如第一步添加当前日期,第二步在文件名前添加序号,第三...,更名时,其实是执行每个步骤,形成最后更改的名字之后,再进行更名,在这个过程中是不允许用户自己直接修改文件名字的。问题是现在的文本窗口无法控制不让用户修改数据,所以我说的方法目前是实现不了的。所以我才建议在最后更名的时候再确认一次。
一开始没想到用等待窗口(想着用消息提示的话有点烦人),等待窗口不错可以加上。
禁止手动编辑现有条件是无法实现的,其实是用户也不会去手动编辑,误操作概率很低的,而且还可以任意回撤,这个就不用纠结了。