article_image

《用 Drafts 做一份专业的工作通讯录》以来,我从“商业通讯录”的实践中受益良多,最显著者,当是私人与公务得以平衡。然 Drafts 系封闭数据格式,我断然不愿为了在电脑上查看商业通讯录,还去特意安装一款软件1;何况通讯录如此重要的数据,更应以开放格式握在自己手中。

几次试验后,我用 TaskPaper 替换了 Drafts,不单解放了数据,功能还有过之无不及,遂有此文。

Alt text
用 TaskPaper 语法做商业通讯录

基础浏览操作

TaskPaper 是一款任务管理工具,同时又是一种语法标准2——本文所言,兼采两者——更重要的是,它基于纯文本,不限于具体某款软件。在 iOS 上,我主要用 Taskmator 读取 TaskPaper 语法的文件。

换言之,新方案出遵从 TaskPaper 语法将通讯录写进纯文本文件,在电脑上用 TaskPaper 官方客户端浏览,在手机上则使用 Taskmator 查看。顺予指出,在 Taskmator 中选中电话号码后可以直接拨打,完全不必复制到拨号界面,免去不少切换步骤。

语法

乍听上去,“语法”者,令人头大,所幸 TaskPaper 简单至极:无非就是清单。如果你懂 Markdown,那么 TaskPaper 更不在话下;不懂也无妨,两句话就能说清楚。

项目:
    - 任务A
    - 任务B

在 TaskPaper 中,以行为单位,英文冒号结尾的 项目: 表示项目,短横加空格打头的 - 任务 则表示任务,任务若属于某一项目,则其前面需有缩进。任一项——无论项目或任务——下可有子项,层层嵌套无限制,由此满足任务管理的基本需要。

上述语法,毕竟只是形式层面的,意义则由使用者赋予,放在任务管理中有一定含义,而在通讯录管理中,又别有功用。

分组

取 TaskPaper,首先是取其“项目-任务”的二元结构,以将机构与联系人纳入其中:原本表示项目的语法,可表示机构;而表示任务的,则挪作联系人之用。

机构:
    - 555-111 联系人A
    - 555-222 联系人B

这样组织,其实和 Markdown 遥相呼应,完成了联系人分组,只不过 Markdown 使用 # 标记,而 TaskPaper 用清单加缩进。在 TaskPaper 官方客户端与 Taskmator 中,可按项目(机构)浏览清单,如翻阅电话黄页前面的索引,纵然有几千上万条联络人信息,也如网之纲、裘之领,不惮混乱。

Alt text
按机构浏览通讯录

为联系人分组,可视为私人通讯录与商业通讯录之分水岭,盖商业往来必究对方来路,通讯录亦应循规蹈矩,不宜按姓名拼音杂处。曾见友人通讯录中,“小可爱”赫然居于“肖总”之前,这就不好看了。

聚焦

TaskPaper 语法的本质是大纲,自然也继承了大纲的血统,可以聚焦(focus)某一个分支上的信息。实际使用商业通讯录时,往往只需查看一部分,此时可以聚焦到所需的机构,而不看其余。

聚焦功能还有个好处:偶尔需要向别人展示通讯录时,可大大方方将手机递过去,仅展示某个机构或部门的联系人,而不怕对方有意无意瞥到无关信息。当然,在商业通讯录的场景下,有泄露之虞的并非隐私,而是商业秘密。

进阶过滤操作

和任务管理类似,通讯录也需要过滤,而非全靠手动翻找或打字搜索。

在特定项目中,可能频繁需要和某几位联络人沟通,此时若再层层点开通讯录,就有失便利。这是 Drafts 的软肋,也曾让我怀疑应否弃纯文本而回归传统通讯录——答案是不用,因为切换到 TaskPaper 语法后,过滤问题自迎刃而解:用标签(tag)快速过滤联系人。

详言之,TaskPaper 视 @tag 格式的文本为标签,可据此滤出带有同一标签的项目——在商务通讯录的语境下,项目就是联系人,而标签,可以代表事件——案件案号,合同编号,项目代号,等等。正在进行的事件,我会将其编码并当作标签,附在对应联系人后面,点一下标签即可滤出相关联系人。换言之,通讯录本身是根据机构层级组织的,但实际使用时,可以借用标签,转向事件为中心的组织形式。

Alt text
按事件过滤通讯录

TaskPaper 还有备注之概念,其实无非是换一行、缩进一级,且不以项目符号开头。一个事件结束后,我就把标签移到备注中,一方面备查,另一方面,以后再相遇时可以瞥一眼备注,就知道之前在哪些情况下打过交道。不单是商务通讯录,我在微信和手机通讯录中也常留、常更新备注,免得时间久了,盯着对方名字都想不起此君是何人。

小结

从任务管理去看通讯录,可谓高屋建瓴,诸如打开速度、分组浏览、快速过滤等操作,皆信手拈来。

突破口在于,不要把 TaskPaper 和“任务”绑死在一起,它只是一种语法结构,能够表达怎样的含义,全在使用者自己。通讯录,实则也只是无数斑斓用例之一。


  1. 对我而言,Drafts 无非是 iOS 下的妥协产物,在电脑上没有任何使用它的理由——除了为保持云同步而“就低”。
  2. Drafts 也支持 TaskPaper 语法。但前文已经提到,我不愿意被拘禁在封闭的数据中。

author_avatar

Lawyer, macOS/iOS Automation Amateur