零秒精通Emacs之Org工作流的再优化

在文章 Org as地表最强的计划与管理工具 中,着重探讨了org-agenda的应用。

Org的计划管理功能强大,但也因其过分长袖善舞,日积月累之间,Org流程日趋繁琐臃肿。每回打开org的计划管理文件,一堆任务泼将过来,大脑只好熔断崩溃。

除了常规的时间管理和任务管理之外,org还肩扛着下面的功能:

  • 财务记账,
    尝试过BeanCount,Ledger,又退守到最简单地org-table。记账之外,往往还需要图片,还会写下对产品的使用体验等等,因此用org做财务记账的实践,半途而废。转进到了“随后记”上,只在周总结或者月总结里提一句。

  • 记录重要的事件
    一是,国内外的重大事件。这几天新罗马帝国的陨落近在眼前,某些看法是不是要写进org呢,要不要图片呢?想想就头大;
    二是,工作和生活的事件,借了两把鸡蛋,谁瞪了我一眼,最好还是记忆下来,当然最好还是要有图片。
    org倘若肩负上面的任务,没回打开岂能不烧大脑容量。
    作为解决方案,对重要事件的点评,全部都放到“今日头条”的微头条里,在那里上传图片方便,而且可以练习说暗语。

  • 记录生活
    除了吃饭喝水,未来的人类只需要两项技能,摄影(修图)和录影(剪辑)。之前在org的日志,一度使用图文混排的模式,日子久了,记录的欲望消耗殆尽。从尝试大而全的详细记录,到一笔也懒得写。
    归根到底,记录生活这一项是日常写作平台的问题。现在将这一项从org中完全剥离,转移到头条文章和微头条中。随手拍随手发,随手记随手发。

当”财务记账“,”事件记录“与”生活记录“从org中剥离,世界就清净了。只剩下最核心的任务计划与管理功能,合计三项:

Plan与Note的部分用heading格式,以便用tag分类。
HandsOn着手执行部分用checkbook。(觉得handson比todo等词汇更能激发潜意识里做事的欲望)

后文详细探讨这三个部分的自动化工作流和用到的函数。

本文所属项目:

启发本文的项目:

6 个赞
  • 第一部分Plan

    Plan部分用todo-heading头脑风暴列出所有的新任务,后缀标签分类。

  • 标签管理
    对标签管理的一点心得。千万不要起手就追求要将标签系统化,树状结构化。尝试想到什么就加什么,org又没有对标签数量的限制。等过得三四个月再回头审查所有得标签,试试梳理下逻辑结构。

  • 添加任务笔记
    对规划任务的一点一滴的灵感与思路,全部都写进logbook的note中。在todo-heading上按键C-c C–z调用add-note函数。

    而更为方便的是,能在agenda界面中按键z调用add-note的命令,快速添加笔记。

  • 任务收集 充分利用org-capture功能,随时随地的收集能想到的任务。构建收集函数,将新的任务自动归类到当天的对应的Plan下。 虽然很简单,但是极其好用的函数如下:

····

(defun my-org-goto-last-plan-headline ()
  ;;Capture Tasks and Plan the day
  "Move point to the last headline in file matching \"** Plan\"."
  (end-of-buffer)
  (re-search-backward "\\** Plan"))

(setq org-capture-templates
      '(("p" "Plan" entry
         (file+function "~/Documents/OrgMode/ORG/main/todo.today.org"
                        my-org-goto-last-plan-headline)
         "* TODO %i%? ")

上面的代码,放进配置中,就能org-capture任务自动归类到当天的plan-heading之下。

第二部分 HandsOn

第二部分HandsOn着手做事,选择HandsOn这个词汇,似乎比todo,task等更能引导潜意识愉悦的着手做事。

将Plan中的任务剪切到HandsOn下面:


倘若当前执行的任务,位于其他文件中,就用org-refile将其移动过来。

变更任务的状态:

从todo变更为start
image

对执行任务计时

clock-in对执行任务计时,

分析任务的工作分解结构

在一级任务下做工作分解结构,并加上进度条cookie

image

收集突然的灵感等

临时的想法和突然的灵感,按键C-c C-z 全部写入logbook中。

在logbook中查看所有的临时记录:

任务收尾

变成任务状态(org会自动完成计时)

对任务的总结和想法也最好写进logbook中。

1 个赞

问个问题 能不能把 小标题 比如 星号开头的标题变成文件连接这种形式,就像 [file:xxx.org]这样?

backlink?

如何仅仅引用星号开头的小标题?

最后两行

2 个赞

解决了thx

有关计划任务管理,GTD里面总结出来的一些概念还是很有价值的。

例如上面的plan相当于GTD里面的inbox, HandsOn 相当于GTD里面的next

我见过最好看的GTD软件就是苹果生态里面的Things

https://culturedcode.com/things/

嗯,在用emacs之前,买过omnifocus,用过thing, GTD也活跃的参加线下讨论会。

大概的经历,“大而全”的系统,最后都会厌烦到一笔也懒得写。

后来只用 手机自带的Note和邮件,再过了一段时间遇到emacs。

简单,可能是最重要的。

不知道有没有人真的把GTD长期用起来的?

要是咱们当面聊,可能我会滔滔不绝鞭笞GTD。

论坛不适于讨论,而且做过傻事,刚进emacs电报群还极为不屑的嘲讽过吹捧gtd的朋友。

七八年前GTD就被普遍认为是不可行的方法。

现在就用手机里面的TodoList软件,简单备忘就行了,现在只用org-mode的表格功能,其他不用。

原来也是非常痴迷Org-Mode的各种强大,曾经所有读书笔记都用Org-Mode记录。

现在想起来,每天让自己这么忙,甚至让Org-Mode通过时间来给自己派任务是不是反了? 每天忙到Org-Mode的数据很漂亮是不是对的?

我现在觉得,深度思考和享受人生,适度的任务备忘比GTD的人生更重要。

8 个赞

反正我现在觉得 gtd 非常有必要而且有效。

工作上用 gtd 会很有调理。另外平时执行 gtd 会目标更清晰。

主要是需要把 org 的 gtd 尽量简化。有些工作流程太复杂了,其实是舍本逐末。

1 个赞

org-add-note会把笔记放进LOGBOOK里,里面还会有很多其他东西,请教下有没有什么方法单独提取并显示笔记呢?因为通常LOGBOOK是折叠的。 不然可能只有 将笔记放在外面 比较好点。

问个问题,我的org-publish 不能正确的输出 headling 的连接。输出的html文件里面的关于heading的连接无法正确打开 举个例子 org文件中的heading会变成 filename.html#org82a501f 这样一个连接在html文件里面。但是这个连接无法跳转。我不太动html格式。这样要这么办?

现在采取的方法是单独建一个与 Plan, HandsOn平行的Notes,专门往里面写笔记,写日记,写灵感,写任何突然的想法,同时用标签归类(比如 灵感,日记,事件,新闻,或者开心沮丧等心情标签)

基本结构是这样的:

  • Plan
  • HandsOn
  • Notes

用标签做分类和层级深度管理,不对上面的这三个heading往下展开深度分级。

logbook里针对某一项任务的笔记,一点小建议,可以将他们作为草稿,针对这一点收集起来自己的想法和思维,然后到笔记中严肃的整理出来。笔记也是heading,因此也能用add-note收集想法。

每天的突然的想法很多,比如突然想到“我还是需要录音的监听功能”,可以把这一条作为note下的单独heading。但是更好的情况,在Plan里有“购买无线小蜜蜂的”规划任务,于是这个想法就写到那里。

等到货物到手了,开箱,使用体验等,就在Note下面写,而logbook内的note则是比较完美的参考资料(有时间戳,有零碎的想法等等)

感谢分享。看了你的介绍,觉得add-note可以用来做任务推进情况的过程记录,但发现查看记录不方便,就用上面那个advice让记录在外。

我现在的分级分类较少用org的标签,用的是org-roam那种标签,配合org-roam的捕获和backlink,可查询各类任务、笔记的相关性。

哇,棒,还没开始学习org-roam,看着资料好多,有点望而却步呢。 :grinning:

sacha网站上推荐过一个chrome的shotcut manager,我浏览的网站比较固定,可以用js提取需要的内容,配合org-roam的capture,这样捕获时可以直接放在对应的地方。不用再refile。