Directory Opus是一款功能强大,可高度定制化的付费资源管理器,UI在同类竞品中也算比较好看,可以很好的代替Windows Explorer。反正我是用了之后就回不去了,最初是买了12,后面出13就立马升级成13了。
Directory Opus 12是买断制,付一次钱就可以一直用。Directory Opus 13是特殊的订阅制,订阅其实只是为了获取最新版本更新,当订阅到期后仍然可以继续随意使用,但无法获取最新的更新。
鉴于网络上相关中文资料实在太少,主要的讨论也都在官方论坛中以英文形式进行,所以记录一下一些使用的心得,同时也给自己备忘方便查阅。
有些配置是12时写的,设置路径可能不能完全对得上,不过名称基本上是一致的,可以尝试搜索。
大概会不定时更新一些东西,可以通过文章最上方/右侧的目录或Ctrl+F进行检索。
基本使用
复制列的值
当布局为详情
模式下,文件以列表展示,有时候会有复制某些列的值的需求。
比如想要复制一批文件的文件名和文件大小、创建日期...等。
这时候可以按住Ctrl
键,然后用鼠标右键点击想要选中的列,选中后会呈现高亮,这时候在列上再单击鼠标右键即可复制列的值。
即时查找(FAYT)
即时查找就是在Opus界面,按下指定的一些快捷键,可以触发在当前目录根据关键字搜索、选择、过滤等功能。
对应的快捷键和模式在设置-选项-过滤和排序-快捷键
中查看。
默认直接输入任意非快捷键字符是查找
功能,比如在一个文件夹中,依次按下按键txt
,底部栏将会唤出,文件名中包含txt
字符的将会被高亮。
比较常用的还有:
过滤,默认快捷键;
,按下快捷键后输入文字:只显示匹配到的文件和目录。
选择,默认快捷键:
,按下快捷键后输入文字:选中匹配到的文件和目录。
对于快速查找、选取需要的文件很有用。比如想要批量操作某个类型的文件。
平面显示
顾名思义,将当前文件夹中的所有嵌套文件以平面的方式展示,也是很实用的功能,搭配即时查找可以很方便的操作嵌套的文件。
自定义列
详情模式布局下,最上方会出现列
。
默认是名称、大小、类型、修改时间之类的文件数据。
在列上鼠标右键,可以新增或者移除某个列。
默认已经包含了很多文件元数据的列,也可以自定义列。一般有两种方式自定义列,脚本和求值器。脚本功能比较强大,但是编写和修改调试繁琐,求值器相对更加简单方便。
在设置-选项-文件显示列-求值器列
中可以新增自定义求值器列
。求值器列就是通过求值器代码,匹配对应的数据,然后显示出来。
举个例子,假设有一批已经整理好的文件,命名方式都是作品名(出版年份)
。
文件A(5).txt
FileB(1990).txt
文档C(2011).txt
文本D(2022).txt
数据X(2023).txt
测试(2024).txt
我们想获取出版年份或者想要按出版年份排序,如果文件本身的元数据里并没有这个字段,那我们只能通过文件名来区分。因此,我们可以自定义一个求值器列,获取文件名最后括号中的数字。
新建一个求值器,求值器代码:
if (!RegEx(name,"(.*)[((](\d+)[))]\.(.*)")) {return;}
RegEx(name,"(.*)[((](\d+)[))]\.(.*)","\2")
然后在列中添加对应的求值器列,即可提取想要的文本。
基本配置
禁用视频的查看器预览
默认是开启视频预览的,如果不想启用这个设置。在设置-选项-查看器-插件-Movie/视频-配置
取消自动播放视频
选项。
保存目录展示布局(文件夹格式)
在Opus13的某个版本中已经更新了自动保存布局功能,在选项-文件夹-文件夹格式-自动格式化
中勾选自动记录文件夹格式
后,将会自动记录布局,不需要再手动保存了
在特定的目录中,想要单独使用某种布局展示。比如照片文件夹中,希望所有文件平铺显示缩略图,以便直接预览图片内容。
文件夹选项
默认情况下,打开文件夹-文件夹选项
,点击保存即可保存当前文件夹的格式,包括清除已保存格式
、保存为默认格式
等选项。根据实际情况进行选择。
文件夹中设置的缩略图大小并不会随着布局格式一起保存
双击空白处返回上一级或后退
打开顶部栏的设置-选项
启用文件显示栏-鼠标
中的双击背景时
,并设置以下命令之一:
Go Back
后退,即返回到操作历史记录的上一次目录,并非跳转到该文件夹的上一级目录。Go Up
返回上一级,即返回到该文件夹的上一级目录(父级目录)
代替Win+E快捷键
默认情况下,Windows系统的win+E
快捷键会呼出文件资源管理器的主文件夹。我们用win+E
来代替呼出Directory Opus
。
设置完毕后,需要重新启动电脑才能生效。
设置快捷键
顶部菜单栏任意位置单击右键
,唤出上下文菜单,选择其中的自定义
即可打开自定义界面。
设置主题(应用、导入、导出、保存)
打开顶部栏的设置-主题
上方的文件
菜单用于导入、导出、保存主题。
下方的按钮可以前往官方论坛下载别人分享的主题。
下载完毕后可以通过文件菜单进行导入并应用相应主题。
在桌面打开文件夹时使用已有窗口
默认情况下,在桌面打开一个文件夹,会在一个新的Opus窗口中打开。如果想要在现有窗口的新标签页中打开,启用设置-选项-DOpus启动-资源管理器替代
,勾选在新标签中打开外部文件夹
。
在桌面打开某些目录(如:回收站)时,可能会使用原生的资源管理器。同样也是在这个页面设置-选项-DOpus启动-资源管理器替代
,选择想要的替换规则即可。
部分扩展名无法显示
默认情况下,有部分扩展名会被忽略掉,如DO的dcf
。
在设置-选项-文件显示列-文件名
中,关闭隐藏Windows注册表中指定的其他扩展
。
Why .dcf extension are not show in DO13?
自定义配置
自定义颜色、字体
界面中颜色、字体相关的设置项都在选项-颜色和字体
中。
自定义图标包
内置的图标包说实话普普通通,我们可以通过选项-工具栏-图标
中,点击下载更多图标
,下载别人分享的图标包并进行导入。
也可以根据自己收集图片,打包成图标包。
我找了一些比较好看、常用的图标,打包成了图标包,可以根据自己的需要下载图标包并导入。
图标包实际上就是一个包含图标描述文件XMl和图标整合图片的压缩包,按照官方文档-图标集给出的格式编写对应的XML并打包资源即可。
以下由论坛用户@Tenebrous
分享了一个快速打包的bat脚本:如何制作自己的图标包。
使用方式也比较简单,先创建一个文件夹,里面是想要制作成图标包的图片资源,一般是各种PNG格式的图片。
然后下载zip.exe
、montage.exe
以及打包脚本doicon.bat
,下载方式原帖中有详细说明。
montage.exe
可以通过下载ImageMagick便携版本,解压并获取。
zip.exe
在sourceforge可以下载。
打包脚本见原贴下方,下载链接。
或者可以直接到我的Github仓库下载(以前从以上方式中提取的)。
https://github.com/nyable/DirectoryOpus-Config/tree/main/bin
将这两个可执行文件和脚本放到想要打包的图标文件夹中,在文件夹中按以下方式执行bat脚本即可。
脚本原来叫做doicon.bat
,为了方便查找,我把它重命名为MakeIconSet.bat
。
使用方式.\MakeIconSet.bat 文件路径/*.扩展名 自定义图标包名称
,如:
.\MakeIconSet.bat *.png MyIcons
自定义文件(类型)/目录的鼠标点击事件
在设置
-文件类型
-Direcotry Opus文件类型
中双击所有文件夹
,弹出的新窗口中有操作、事件、右击菜单、拖放菜单等选项卡。选择事件,然后编辑对应事件的命令脚本即可。
比如想把双击文件夹
的操作由进入文件夹
改为在新标签页打开文件夹
,找到左键双击
事件,将默认的Go命令
改为go newtab
即可。
命令并不局限于Go命令
命令,不过一般对于目录的事件操作还是以跳转为主,以下列出常用的Go命令参数:
- go:在当前标签页打开目录
- go newtab:在新的标签页打开目录
- go new:在新窗口中打开目录
- go openindual:在当前窗口分栏打开目录(双栏布局)
- go openinleft:在双栏布局的左栏/顶栏打开目录
- go openinright:在双栏布局的右栏/底栏打开目录
- go refresh:刷新
- go root:跳转到当前路径的根路径,C:/users/test->C:
自定义其他文件类型的事件同理。
自定义标记与搜索
除了默认的颜色和状态标记,在设置
-选项
-收藏夹&最近访问列表
-标记
中可以自定义标记。
通过选中文件/文件夹,然后右键菜单
-标记/设置状态
。
在Opus中搜索对应标记的文件可以使用工具
-查找文件(Ctrl+F)
-高级(A)
。点击+号
新增一条匹配规则,将类型下拉框选择为标记
,模式下拉框选择为匹配
,然后用关键字匹配对应的标签名即可。
比如想搜索红色
的文件,就输入红色
,想把所有颜色标记都搜索出来就可以勾选通配符或者正则表达式来匹配,比如*色
(通配符)会匹配任何以色结尾的,而^.色$
(正则表达式)则只会匹配两个字的颜色。
自定义右键菜单
自定义右键菜单一般分为两种。
一种是在目录的背景空白处右键唤出的右键菜单,类似于在Windows的桌面右键,有刷新、新建文件夹这些选项,在菜单栏右键-自定义-右键菜单
中设置,可以根据目录类型不同设置不同的菜单。
还有一种是在文件/文件夹上右键唤出的右键菜单,在不同类型的文件体现不同菜单。比如压缩文件类型有解压、图片类型有转换等...在
设置-文件类型-双击某个文件类型-右键菜单
进行添加。同理,文件类型对应的各类事件也可以在这里定义。自定义脚本
自用的一些自定义脚本,包括自定义的重命名脚本预设、自定义用户脚本等。
内容太长了就不全把代码在这里列出来了,主要说一下大概的功能,具体的脚本和说明都在脚本仓库中。
自动解压
实现类似 Bandizip
的自动解压,用于解决解压时文件没有文件夹或同名文件夹嵌套问题。
规则如下:
- 如果压缩文件根目录是单个文件夹,且与压缩文件同名,则将文件夹直接解压出来。
- 其他情况均解压到与压缩文件同名的文件夹内。
- 如果已经存在同名文件夹,则会提示是否覆盖,而不会重命名文件夹。
重新打开关闭的标签页路径
增加命令RecoverTab,用于重新打开关闭的标签页。可以通过自定义-快捷键设置快捷键触发。 实际上只是重新打开关闭标签页的路径而已,维护了一个缓存关闭标签页的数组,关闭时push至末尾,恢复时从末尾取出,所以并不会恢复各种布局状态等,在哪个窗口激活后就在哪个窗口重新打开标签页。 设置里可以开启缓存关闭窗口中的标签页。
13.9.2 beta版本开始,官方增加了一个新命令参数
Go UNDOCLOSELISTER
用来恢复已关闭的窗口。但是和Go TABUNDOCLOSE
恢复TAB一样只能恢复最新关闭的那个。
yt-dlp调用GUI
通过GUI调用已有yt-dlp
命令行程序,实现简单的选取格式化功能。
文件Hash值对比与计算
调用内置的方法,通过GUI快速对比或计算文件的hash值。
番剧(字幕)标准化
重命名脚本,将常见字幕组发布格式的文件格式化为番剧名 - S1E1
此类适合刮削的名称。
function OnGetNewName(getNewNameData) {
var item = getNewNameData.item;
var newName = item.name_stem;
newName = newName.replace(/\[(\d{1,2})\]/g, "- S1E$1");
newName = newName.replace(/-?\s(\d{1,2})/g, "- S1E$1");
newName = newName.replace(/第(\d{1,2})[话|話]?/g, "- S1E$1");
newName = newName.replace(" - -", " - ");
newName = newName.replace(/\s{2,}/g, " ");
newName = newName.replace(/\(.+?\)/g, "");
newName = newName.replace(/\[.+?\]/g, "");
var season = getNewNameData.custom["M_SEASON"] || "1";
newName = newName.replace(/- S\d+E/, "- S" + season + "E");
return newName + item.ext;
}
function OnGetCustomFields(getFieldData) {
getFieldData.fields["M_SEASON"] = "1";
getFieldData.field_labels.set("M_SEASON", "季度");
getFieldData.field_tips.set("M_SEASON", "输入季度");
}
其他
2024年7月30日官方增加了个人推荐码机制:
所有注册的 Opus 13 用户现在都可以获得个人推荐代码,以便提供给想要从 GP Software 直接从购买 Opus 的朋友或亲戚。
当您的代码被使用时:
您的朋友将获得 15% 的购买折扣
升级订阅后,您将获得额外三个月的订阅期限
要获取代码,请登录在线许可证管理器 24。您的代码可在页面底部找到。
请注意,推荐人代码仅供一次性使用。当您的代码用于购买 Opus 时,您会收到一封电子邮件,您可以返回许可证管理器并获取新代码以提供给其他人。
简单来说就是优惠码,通过引荐码可以用原价85%的优惠折扣价购买Directory Opus,而推荐人则可以免费获得三个月的订阅时长。
我的引荐人代码是:1H80M78L0JUS
。
不过实际上也便宜不了多少,而国内一些正版软件平台有活动的时候只要100多块钱。
保存目录展示布局(文件夹格式)缩略图大小无法设置保存
目前Opus在保存每个文件夹的布局格式时,是不能保存缩略图大小的数值的。只能统一设置默认的大小,在
选项-查看模式-缩略图-缩略图大小
调整。论坛里之前就有人反馈过,开发者说这个特性已经在TODO List里了,但是挺久也没消息。
似乎目前只能通过自定义脚本实现。
建议多发现有意思的脚本哈,可以让大家都提高效率哈~,谢谢