整体流程图
整体内容的文字叙述比较难懂,给一张思维导图放在前面,请将后续表述与图中内容做对应以了解流程,针对各处操作未做太详尽描述,相信各位查阅资料能够解决问题,有问题的朋友可以联系我。
Emacs相关模式介绍
- org-mode 关于该模式,网络上相关介绍非常之多,大概说来就是一个Mark-Down语法来编辑内容,并且通过Emacs内置功能可以极其方便的对内容格式进行组织操作,在阅读网上相关例程后参考上文中快捷键介绍,相信你可以很快熟悉该模式。
- capture-mode 在Emacs的以前版本,还有一个叫remember-mode的东西,两者功能非常相近,若是使用最新版本的Emacs,可以不管remember-mode,直接使用capture-mode进行内容的抓取。 该模式支持模版化操作,使用快捷键呼出capture-mode之后,将通过快捷键选择你预先设定好的模板,并随后输入内容保存到指定位置。
- agenda-mode agenda作为Emacs的一种模式,并不是用于编辑,而是用于审阅。 在配置文件中可以对agenda所包含的文件进行关联。在设置完成后,agenda将会对所包含的文件内容进行整理,以日历、列表、标签等形式将所有的TODO内容整体呈现到你面前,并可对其直接进行操作而不用手动打开某个文件进行修改。
gtd
- 什么是GTD GTD的核心很简单,就是要清空大脑,按照事先设定好的路线一步步将工作做完。关于这方面的书籍有很多,最出名的莫过于《Getting things done 尽管去做——无压工作的艺术》。 作为我的个人管理方式,主要就是收集->整理->组织->行动->回顾 这五步进行循环,首先把需要做的事情都记录在案,然后将整体内容进行分化不同类别,再针对每一个任务进行细化,接下来一步步去执行,最后将结果进行回顾。 个人管理也是一门学问,想要深入了解恐怕需要认真阅读以下相关书籍,这里不再详述
- GTD与Emacs 我想关于GTD,每个人都有自己不同的理解,更是有适合自己的一套工作流,而诸多关于利用Emacs进行GTD的博客文章介绍的并非十分详实,这里我想把我个人的流程分享出来。我作为初学者仅仅是刚掌握了一些理论,在很多细节问题上仍然需要不断的完善和改进,在这过程中我会不断维护此文章。 GTD本身是不需要工具的,一个本子一支笔就可以清空大脑开始工作了, 而Emacs提供的是更快捷的操作方式和高效率的组织回顾手段,市面上的GTD类软件也非常之多,很多人直接败在了Emacs相对较高的入门门槛上,我在这里将把我学习使用的过程以自顶向下的方式表述,我想,在文章最后你就应该可以放手去做了。
所需文件
- inbox.org
作为第一步的落脚点,周围所有杂事将在这里驻足
- 使用Capture-mode将目前所能想到的事情进行收集,保存到inbox.org中
- 在每天早上对inbox进行填充,分解,清理,把插入的内容分配到project.org以及task.org两个文件中去
- 工作中遇到突发事件,两分钟以内能解决的就马上办,否则Capture到inbox中
- task.org
一次性或短期任务将从inbox中细化至此
- 早上对当天任务的预先规划,包括打上相关标签、设定子任务(使用checkbox)等
- 在工作过程中逐步将子任务打勾完成,将TODO状态转移至其他状态
- 晚上将task内容迁移到finish.org中
- project.org
长远计划或项目计划
- 从inbox中抽象出project的内容,并做大致规划,不一定成为TODO项,但经常检阅
- 随着项目推进,可以对项目完成度进行审核,计时
- finished.org
task内容归宿,按照tag进行划分
- capture-mode添加datetree模板,每日添加记录,进行总结
- task内容移入每日记录下并打标签
配置项
- emacs.d
;;TODO项状态切换
(setq org-todo-keywords
'((sequence "TODO(t!)" "NEXT(n)" "WAITTING(w)" "SOMEDAY(s)" "|" "DONE(d@/!)" "ABORT(a@/!)")
))
;;关联agenda-mode的文件
(setq org-agenda-files(list "~/Documents/gtd/inbox.org"
"~/Documents/gtd/project.org"
"~/Documents/gtd/task.org"
"~/Documents/gtd/finished.org"
))
;;绑定快捷键
(define-key global-map "\C-cc" 'org-capture)
(define-key global-map "\C-ca" 'org-agenda)
;;capture的template
(setq org-capture-templates
`(("t" "Todo" entry (file+headline "~/Documents/gtd/inbox.org" "Tasks")
"* TODO %?\n%U %i" :prepend t)
("j" "Journal" entry (file+datetree "~/Documents/gtd/finished.org" "Journals")
"* %?\n %T %i")
("n" "Note" entry (file+headline "~/Documents/gtd/notes.org" "Notes")
"* %U %?\n\n %i" :prepend t :empty-lines 1
)))
;;org-mode下跨文件移动标题设置
'(org-refile-targets (quote (("~/Document/gtd/inbox.org":maxlevel . 1) ("~/Document/gtd/task.org" : level .2))))
;;定义快速打开task.org文件的方法并绑定以快捷键
(defun gtd()
(interactive)
(find-file "~/Documents/gtd/task.org"))
(global-set-key "\C-cz" 'gtd)
流程叙述
- 可规划任务:
- 早晨开始工作前进行内容整理,清空inbox,将任务分配至task,project中,并视情况标记deadline和优先级
- 一天的工作中以agenda作为里程碑,逐步干掉所有任务(包括task以及project)
- 晚上通过capture建立finished中对应日期树,写总结并将完成的任务打标记移入finished中
- 临时事件:
- 预估事件处理事件,2分钟内立即着手解决
- 超过两分钟的事件capture到inbox中,待下一番茄钟进行规划
- 未能及时处理或特殊情况的事件待第二天早上整理清空inbox
心得
整套流程并不复杂,可能看起来略显繁琐,很多人一定觉得这样折腾并没有价值。我作为刚开始采用GTD的方式的学生,其实觉得一旦着手这样做之后,不断修改状态或checkout子任务带来的成就感会促使你效率的提升。事先的安排更会清空大脑,做事效率有所提高。 并且,此流程仅仅是我的习惯,针对不同的工作性质,应该更为私人定制一些。希望读到本文的人能花些时间去尝试一下这种个人管理的方法,面对这一个个的TODO变为DONE,感觉是充实的,会更有干劲去面对接下来的工作,愿本分享能够帮到更多的人。