看起来很复杂的 DEVONthink 搜索,用 Alfred Workflow 就能轻松搞定

栏目: 数据库 · 发布时间: 5年前

内容简介:DEVONthink 作为一款资料管理工具,在 macOS 平台上久负盛名。在 DEVONthink 的官网上,它是这么介绍自己的:Information management reinvented(重新发明信息管理)。 DEVONthink 可以统一保存、管理和检索各种常见格式的文档,包括但不限于 Office、PDF、网页书签等。而且, DEVONthink 还能关联、聚合相关文档(不支持中文),所以有许多人用它来作为学术工具使用。另外, DEVONthink 还支持 Dropbox、iCloud、W

DEVONthink 作为一款资料管理工具,在 macOS 平台上久负盛名。在 DEVONthink 的官网上,它是这么介绍自己的:Information management reinvented(重新发明信息管理)。 DEVONthink 可以统一保存、管理和检索各种常见格式的文档,包括但不限于 Office、PDF、网页书签等。而且, DEVONthink 还能关联、聚合相关文档(不支持中文),所以有许多人用它来作为学术 工具 使用。另外, DEVONthink 还支持 Dropbox、iCloud、WebDav 等多种同步方式,充分满足不同人群对于同步的需求。少数派网站上有多篇优秀的使用经验分享文章,有兴趣的可以看看。

起初我开始使用 DEVONthink 时,在官网上看到有 用于搜索的 Alfred Workflow ,试用时却发现已经年久失修,早已不适配 2016 年发布的 Alfred 3。于是,我就拿来修改了一番,形成了 第一个版本 。但是这个 Workflow 只能用 DEVONthink 打开搜索结果中的文档,这不能满足我的使用需求,所以在修复原有功能的基础上,我为它添加了两个功能:

  • 用外部程序打开文档,比如直接用 Word 打开 docx 文件等

  • 在 DEVONthink 中显示文档,就像常用的「在访达中显示」,用于在 DEVONthink 中执行一些后续的操作

看起来很复杂的 DEVONthink 搜索,用 Alfred Workflow 就能轻松搞定

但是,前段时间我又发现了这个 Workflow 的两个问题:

  • 搜索结果不够好,往往不能快速又准确地搜到自己想要的文档

  • 显示信息很单一,有效信息仅有文档名称,导致无法区分不同文件夹的同名文档

DEVONthink Search 全新版本

旧版本的 Alfred Workflow 效果不理想,所以我就试着能否改进下,就有了今天介绍的新版本。

由于新版本使用了与之前完全不同的数据来源和实现方式,无法支持 DEVONthink Personal,所以分成了两个版本来实现不同的功能:

  • DEVONthink Search:适用于 DEVONthink Personal,就是原有的 Workflow 去除了 Personal 版本所不支持的多余功能,仅支持使用下文中介绍的 dnt 动作进行搜索。

  • DEVONthink Pro Search:适用于 DEVONthink Pro / Pro Office,搜索结果更准确,功能更丰富。这也正是今天介绍的主角。

你可以在 GitHub 下载相应的 Alfred Workflow。然后,我们来看下如何使用。

1. 输入 dnt + 关键词 在所有数据库中进行搜索。如果同时使用这个 Workflow 和在 DEVONthink 中直接进行搜索,可以看到搜索得到的结果基本一致,并都按照搜索关键词匹配得分进行排序。不同的是,这个 Workflow 默认过滤了结果中的文件夹。

看起来很复杂的 DEVONthink 搜索,用 Alfred Workflow 就能轻松搞定

从上图的搜索结果中可以看到,每一个结果的副标题显示了目标文档 所在数据库中的文件夹路径 ,这也就解决了同名文档无法区分的问题。当按下 ⌘Command 时,则显示为当前选中文档的标签信息 (Tag)。

看起来很复杂的 DEVONthink 搜索,用 Alfred Workflow 就能轻松搞定

2. 输入 dnm + 标签1,标签2,…… ,可以列出所有数据库中 同时 附有这些标签的文档。如果平时有加标签的习惯,使用这个功能可以很方便地得到某一类的文档。

需要注意的是:多个标签要以英文逗号分隔,而且标签必须是准确完整的,如标签“aBcD”,不能输入“aBc” 或 “abcd”。

看起来很复杂的 DEVONthink 搜索,用 Alfred Workflow 就能轻松搞定

3. 输入 dnd 选择需要搜索的数据库,这个功能对于使用多个数据库管理文档的用户比较有用。在选择需要的数据库后,可以:

  • 按下 ↩Return 确认,接着输入 关键词 以在该数据库中进行搜索

  • 按下 ⌘Command + ↩Return 列出该数据库中的所有标签。选择某个标签并按下回车键,可列出所有附有该标签的文档

在使用上述动作并成功显示搜索结果后,你可以继续使用以下动作:

  • 按下 ↩Return ,用 DEVONthink 打开所选文件。(当你仅需查看文件时,可以使用这个动作)

  • 按下 ⌘Command + ↩Return ,用外部程序打开所选文件。例如,使用默认编辑器打开 Markdown 文件,使用 PDF Expert 打开 PDF 文件等。(当你需要编辑文件等情况下使用这个动作)

  • 按下 ⌥Option + ↩Return ,在 DEVONthink 窗口中显示所选文件。(当你需要在 DEVONthink 中操作文件时使用)

看起来很复杂的 DEVONthink 搜索,用 Alfred Workflow 就能轻松搞定
三种不同的打开方式

配置

动作 dntdnm 是在所有数据库中搜索,但是有时我们可能需要屏蔽某些数据库。例如,我有个名为「存档」的数据库,用来保存一些历史文件或备份一些网络上的网页或资料,平时一般不会查看,也就不需要出现在搜索结果中。所以,我为这个 Workflow 添加了个相关的配置项。

如果你想要屏蔽某些数据库,可以这么做:

  1. 打开 DEVONthink,在界面左侧右键点击某个数据库,选择 Copy Database Link ,获得类似于 x-devonthink-item://abfds-fdsfsff 的链接。

  2. 链接中的 abfds-fdsfsff 部分就是该数据库的 UUID。

  3. 如果仅屏蔽一个数据库,直接在如图所示位置填入 UUID 即可。如果是多个,则以英文逗号分隔后填入,如 xxx-xxx,xxx-xxx

看起来很复杂的 DEVONthink 搜索,用 Alfred Workflow 就能轻松搞定
配置

其它

在开发过程中,因为 Alfred Workflow 需要 JSON 格式的数据,但是 AppleScript 不支持,所以只好转而使用 JXA(可以将其看作具有 AppleScript 功能的 JavaScript 版本)。JavaScript 原生支持 JSON,并且可以摆脱 AppleScript 那种「类似自然语言」的语法形式,这让我非常开心。但是在编写根据标签搜索的功能时,没想到竟遇到一个 Bug,无法获得搜索结果。于是,给 DEVONthink 官方发邮件,结果回信说不对 JXA 方面提供帮助,可能他们也知道 JXA 在 macOS 中不受重视,且存在各种 Bug。

当你在 DEVONthink 中搜索时,如果关键词中包含 CJK 文字(中国、日本、韩国),则需要在其前面加上 ~ 。例如,搜索 你abc我他 ,需改为 ~你abc~我他 。在 DEVONthink Pro Search 这个 Workflow 的设置中,我使用正则表达式 /(\p{Unified_Ideograph}+)/ug 找出中文字符并自动添加 ~ ,免去了每次手动添加的麻烦,但是该正则表达式无法匹配日韩文字,我对其也不太了解,请懂得相关正则表达式的帮忙改进下。

原来的 Alfred Workflow 版本是利用 DEVONthink 生成的 Spotlight Index 来实现搜索的,可获取的数据非常有限。而我制作的新版本选择直接从 DEVONthink 中读取数据后,可获取的数据与可完成的操作就非常多了,并且还有很大的成长空间。下一步,我还计划为它添加 筛选出未读文档 的功能,对于使用 DEVONthink 做稍后读等用途的用户可能会比较有用。如果你有什么需求也可以说出来讨论下。

这个 Workflow 在 GitHub 上开源,欢迎下载使用、共同改进。

> 下载少数派客户端、关注少数派公众号 ,让你的工作更有效率 ⏱

> 获取特惠、正版、高品质软件,尽在 少数派数字商城·正版软件 :tada:


以上所述就是小编给大家介绍的《看起来很复杂的 DEVONthink 搜索,用 Alfred Workflow 就能轻松搞定》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

LINUX与UNIX Shell编程指南

LINUX与UNIX Shell编程指南

David Tansley / 徐炎、张春萌 / 机械工业出版社 / 2000-6 / 38.00元

本书共分五部分,详细介绍了shell编程技巧,各种UNIX命令及语法,还涉及了UNIX下的文字处理以及少量的系统管理问题。本书内容全面、文字简洁流畅,适合Shell编程人员学习、参考。一起来看看 《LINUX与UNIX Shell编程指南》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

MD5 加密
MD5 加密

MD5 加密工具

SHA 加密
SHA 加密

SHA 加密工具