


























上下文(Context)是任务管理系统中的一个概念,它定义了执行一个任务时需要具备的条件,使用者可以根据它在众多任务中找到符合执行条件的任务。这篇文章想要分享一下我是如何实践「上下文」的。
首先来看一下在不使用「上下文」这个概念的情况下,我某一天任务列表的样子:

因为没有使用「上下文」,只要我打开任务管理工具,所有这些待办事项都会呈现在我的面前。但基于我所处的时间和环境,我实际可以完成的任务却只是这个列表中的一小部分:我在公司的时候必然没办法和家人刷剧,或者我在开会的时候必然没办法审核技术文档。这个列表给了我进行整体规划的能力,但仅仅依赖于这个列表却又是一种干扰,让我难以专注于当前时间和环境下我需要(或者可以)完成的任务。
下面就来介绍一下我是如何使用「上下文」来解决这个问题的。我设计「上下文」的理念是基于日常生活中重复出现的行为模式。以上面的任务为例:
也就是说,这些任务看似零碎,但我其实已经拥有了处理它们的模式,并且这些模式会在日常生活中反复出现。在这个基础上继续探索,我总结出了以下工作日的行为模式:
这里的每一个行为模式就是任务管理系统中的一个「上下文」,前文的任务可以依此归类到一个或多个「上下文」中:
有了这样的设计之后,我就可以通过「上下文」的列表来对工作日进行规划。比如有些工作日的上午没有任何会议,那么我会把「会议(上午)」移出列表;有些工作日在家里远程办公,那么我会把「上班通勤」和「下班通勤」移出列表。规划完成了之后,我就可以通过这个列表方便的访问和我当前所处「上下文」相关联的任务且不会被不相关的任务干扰。比如中午12点进入午休时段,那么我就可以通过「午休」找到对应的任务,而和「午休」不相关的任务都不会出现。这就让我既拥有了整体规划的能力,同时又可以专注于和当前时间和环境相关的任务。
接下来介绍一下我是如何用 OmniFocus 来实现这个设计的。
假设任务管理系统中有下面四个项目,前面的三个项目包含了日常需要完成的任务:

最后一个项目作为「上下文」列表,里面包含了几个前文中提到的「上下文」:

接下来可以利用 OmniFocus 的「透视」功能从三个项目中过滤出适合于每个「上下文」的任务:



有了这些「透视」之后,就可以利用 OmniFocus 的 URL Scheme 来关联「上下文」和「透视」。在 OmniFocus 中,任意的一个透视都可以通过如下的 URL Scheme 来进行访问,其中的 {name} 需要替换成对应的透视的名称:
omnifocus:///perspective/{name}因此,上述三个透视对应的 URL Scheme 如下:
omnifocus:///perspective/ReadItLater
omnifocus:///perspective/Routine
omnifocus:///perspective/Focus把这三个链接放到对应的「上下文」的备注中就可以方便的查看相关联的任务了,效果如下:

以上就是我对于任务管理系统中「上下文」这个概念的实践。
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。