Jin's blog

Logseq/p1 管理待办事项

Logseq效率

Logseq (opens in a new tab) 是一个双链笔记,也可以理解为 Roam Research 的开源版本。

我用过很多任务管理工具,尝试管理好我自己的 TODO 和目标,例如 Notion、滴答清单(6年)、提醒事项等等,最终都没有很好的适应我当前的工作流,主要是我特别想把做的事情和笔记关联起来。

不过当前找到了一个还不错的方案,所以分享一下给在使用 Logseq 的朋友,感兴趣的话可以尝试一下。

我当前的管理方案是:

注:提醒事项,可以替换成任何简单的任务管理App、免费版本的滴答清单就够了,苹果用户直接选提醒事项就好,够用

之前在用 Logseq 管理 TODO 的时候,最大的痛点是无法很好的管理我的每周 TODO,今天终于找到方案解决了。

每周 TODO 管理

我在每周一的时候都会将当周要做的所有事情整理下来,之前是单独写在一个飞书文档里面,自己也懒的去看,导致很多 TODO 就直接忘了,所以最近也把重要的事情迁移到 Logseq 上了。

在 Logseq 上,我新建了一个 tag,命名为 WeeklyTODO,然后每周一的时候,将当周要做的事情整理到当天的 Journal 上,用 #WeeklyTODO 作为 parent block,然后在 child block 中整理所有 TODO,内容如下:

用 Tag 纯粹是因为方便检索,不用 tag 也完全可以。

- #WeeklyTODO
	- LATER 我要做xxx
	- LATER 我要做xxx
	- LATER 我要做xxx

可以通过这种方式,将当周的 TODO 直接写到当周的 Journals 上,这样就完成了当周 TODO 的整理。但是这种方式最大的问题就是,我没法每天看见这个周 TODO List。

我们可以通过 query 的方式,将这些 block 搜索出来,然后挂到每日自动生成的 Journal 笔记下面,这样我们每天就可以看到当周要做的事情有哪些。效果如下: img-ilja.png

这样就解决了忘记当周重点 TODO 的问题,简直不要太完美!

如何将 Weekly Todo 挂到当日 Journal 上,只需要把如下配置粘贴到 config.edn 文件中就好。

img_1-0l2n.png

{
 :title [:b "⭐️ WEEKLY_GOALS"]
 :breadcrumb-show? false
 :query [:find (pull ?block [*])
         :in $ ?startdate ?enddate
         :where
         [?page :block/journal-day ?journaldate]
         [(>= ?journaldate ?startdate)]
         [(<= ?journaldate ?enddate)]
         [?block :block/content ?blockcontent]
         [?block :block/page ?page]
         [?block :block/marker ?marker]
         ;[(contains? #{"LATER"} ?marker)]
         [?block :block/parent ?parent]
         [?parent :block/content ?parentContent]
         [(clojure.string/includes? ?parentContent "WeeklyTODO")]]
 :inputs [:7d-before :today]
}

这个配置的意思是,找到当周的 Journal,然后找到 Journal 下面的 block,然后找到 block 的 parent 是 WeeklyTODO 的 block,然后将这些 block 挂到 Journal 下面。

我们只需要在每周一的时候,将当周要做的事情写到 WeeklyTODO 下面,然后每天打开 Logseq,就可以看到当周要做的事情了,主打一个畅快。

每日 TODO

有了 Week TODO 列表之后,每日 TODO 就好很办了,直接将当周的任务拆散到当天要做什么,在当天早上的晨间日记,或者开始工作前,花上几分钟整理好就行。

img_2-b8hu.png 我这里通过 templates 的方式提前预生成好几个 tag,分别是当天最重要的 3 件事、我自己的事、工作上其他的事情等等。然后花点时间整理当日 TODO 补到上面就好。用 tag 的方式主要是为了我后面检索方便一点,不用其实也可以。

templates 的方式可以直接 Google 搜一下,模板自动填充到每日日记上。

 :default-templates
 {:journals "Daily framework"}

把这个贴到之前的 config 配置就就可以,template name 换成自己定义的模板就好。

再贴一下我的每日 template 的内容:

- template:: Daily framework
  template-including-parent:: false
	- 📌 [[3 things]]
	- 😝 [[self todo]]
	- 😑 [[work todo]]
	- 🥰 [[done well]]
	- 🔍 [[daily-discover]]

月/年目标

关于每月/年目标管理,我这则比较简单,因为比较长期,所以直接开一个文档单独记录就好,用 LifeOKR 的方式给自己生活上定一些简单的目标。

然后把文档添加到侧边栏收藏,每周打开整理就好。在写周记、月记的时候简单 review 一下月/年大的目标就好,不需要每天都看。

img_3-p11m.png

如果想在每日笔记上展示的话,也可以参考周 TODO 的方式,通过 query 的方式将 block 挂到每日笔记上。

获取近 X 天内的所有待办 TODO

如果想要获取近 X 天的所有 TODO,可以通过如下配置:

#+BEGIN_QUERY
{
:title [:b "journalsbetween - find future journals in a date range"]
:query [:find (pull ?block [*])
:in $ ?startdate ?enddate
:where
    [?page :block/journal-day ?journaldate]
    [(>= ?journaldate ?startdate)]
    [(<= ?journaldate ?enddate)]
    [?block :block/content ?blockcontent]
    [?block :block/page ?page]
    [?page :block/name ?pagename]
    [?block :block/marker ?marker]
    [(contains? #{"LATER"} ?marker)]
    ]
:inputs [:60d-before :today]
}
#+END_QUERY

如果想调整查询的时间范围,只需要调整 :inputs 的值就好。我是通过这种方式,将近 60 天的所有 TODO 整理到一个 page 中,定期看一下历史有什么 TODO 没有做。

效果如下:

8cc5cbfe33ec80806c2788b8790b0e0ebeced27d8c19c8e07dc84861fccc8020-6hna.png

消灭 TODO

这种方式有个问题是无法将 TODO 管理到日历中,所以需要在每天提前想一下自己的事情在什么时间做。关于如何更好的和日历结合,我还在探索中,如果有好的方案会再分享。

目前消灭 TODO 的方式主要还是通过番茄钟的方式逐个击破。

提醒事项

提醒事项主要是用来记一下生活上的 TODO,例如交电费、给猫驱虫、交房租等等一些不需要深度投入的事情,或者不方便打开电脑用 logseq 记录的事情,都会用它来记,现在用的频率会少很多(差不多平均每3天一个TODO)。