GTD
Table of Contents
待办事项
使用TODO状态
如果标题以 TODO
开关时, 就表示它是一个TODO项.
S-RIGHT/LEFT | 在 TODO 状态, DONE 状态, 标题 状态之间切换 |
---|---|
S-M-RET | 在当前项下插入一个新的TODO项 |
多状态工作流程
除了 TODO 和 DONE 之外, 还可以定义其他的状态; 还可以定义不同的待办事项的类型:
#+TYP_TODO: 工作(w!) 学习(s!) 休闲(l!) | #+SEQ_TODO: PENDING(p!) TODO(t!) | DONE(d!) ABORT(a@/!)
- 使用 "|" 来区分未完成和完成两种状态, 如果没有 "|", 最后一个关键词被设置成完成项, 其余被设置成未完成项;
- 关键词后括号内的字母为快捷键, 使用 C-c C-t 来切换状态或类型时, 可以使用快捷键进行选择;
- 括号内的 "!" 表示时间戳, 切换到该状态时将插入当前时间; 括号内的 "@" 表示切换到该状态时需要输入文字说明, 如任务取消, 失败等原因.
生效方式: 输入后, 将光标放在改变行上, 使用 C-c C-c 生效.
如果想让所有文件都适用这些设置, 可以写入配置文件:
(setq org-todo-keywords '((type "工作(w!)" "学习(s!)" "休闲(l!)" "|") (sequence "PENDING(p!)" "TODO(t!)" "|" "DONE(d!)" "ABORT(a@/!)") ))
改变不同状态的外观:
(setq org-todo-keyword-faces '(("工作" . (:background "red" :foreground "white" :weight bold)) ("学习" . (:background "white" :foreground "red" :weight bold)) ("休闲" . (:foreground "MediumBlue" :weight bold)) ("PENDING" . (:background "LightGreen" :foreground "gray" :weight bold)) ("TODO" . (:background "DarkOrange" :foreground "black" :weight bold)) ("DONE" . (:background "azure" :foreground "Darkgreen" :weight bold)) ("ABORT" . (:background "gray" :foreground "black")) ))
进度日志
TODO项标记为 DONE
状态时, 插入截止时间.
(setq org-log-done 'time)
TODO项标记为 DONE
状态时, 插入截止时间和备注.
(setq org-log-done 'note)
优先级
S-UP | 增加当前 TODO 项的优先级 |
---|---|
S-DOWN | 减少当前 TODO 项的优先级 |
任务细分
在标题的任务地方插入 [/]
或者 [%]
, 当每个子任务的状态变化时, 标记状态也会随之更新.
复选框
当纯文本中的项以"[ ]"开头时, 就会变成一个复选框. 它适合用来做细分任务的再细分.
C-c C-c | 更改复选框状态 |
---|---|
M-S-RET | 在复选框下面增加一个带有复选框的项 |
标签
每个标题都可以有对应的标签, 标签前后都有":", 如 :work:, 可以指定多个标签, 如 :work:study:
标签继承
如果一个标题具有某个标签, 它的所有子标题也会继承这个标签.
设置标签
C-c C-q | 为当前标题输入标签 |
---|---|
C-c C-c | 如果光标处于标题上, 这个命令同 C-c C-q |
可以在配置文件中固定标签, 如:
(setq org-tag-alist '(("@work" . ?w) ("@study" . ?s) ("@anki" . ?a)))
如果只想用于当前文件, 则在当前文件中配置:
#+TAGS: @work(w) @home(h) @tennisclub(t) laptop(l) pc(p)
标签查找
一旦标签体系设置好, 就可以用来收集相关联的信息到指定列表中.
日期和时间
截止期限和计划安排
C-c C-d | 在标题下插入一个带有 DEADLINE 关键字的时间戳 |
---|---|
C-c C-s | 在标题下插入一个带有 SCHEDULED 关键这的时间戳 |
<2018-05-29 二 10:00-11:00 +1d> // 每天的 10:00-11:00 都要做这事 <2018-05-29 二 11:00-12:00 +1w> // 每周的 11:00-12:00 都要做这事 <2018-05-29 二 10:00>-<2018-05-30 三 10:00> // 表示这段时间范围里做的事
时间统计
C-c C-x C-i | 开始计时 |
---|---|
C-c C-x C-o | 结束计时 |
C-c C-x C-r | 出现时间统计表 |
C-c C-c | 到 BEGIN 那行输入, 可刷新统计状态 |
org-pomodoro
安装
(add-to-list 'package-archives '("melpa" . "https://melpa.org/packages/") t)
配置
输入:
M-x customize-group org-pomodoro
如果要修改番茄工作时间长度, 可以修改: org pomodoro length 这个字段的值;
类似的, 如果想要修改休息时间, 或者声音, 都可以更改配置.
归档
基础设置
(setq org-agenda-files '("~/GTD")) ;; 设置默认的 org-agenda 文件目录 (global-set-key (kbd "C-c a") 'org-agenda) ;; 设置 org-agenda 打开的快捷键
以后日程文件都放在 ~/GTD 目录下.
常用功能
C-c a a | 从 org 文件中为本周收集出一个日程, 显示出每天的条目 |
---|---|
C-c a t | 显示在 org-agenda-files 下所有文件中的 TODO 项 |
C-c a m | 使用标签来筛选要显示的列表 |
n/p | 上一行/下一行 |
o | 删除其他窗口 |
d/w | 切换到日/周视图 |
f/b | 切换到下/上一周的视图 |
. | 转到今天 |
j | 询问日期并转到那天 |
s/g | 刷新 |
C-c C-x C-a | 将当前项移除到归档文件 |
转发事件
(setq org-refile-targets '( ("~/GTD/agenda.org" :maxlevel . 1)))
这样可以将 agenda.org 文件中, 光标所在的事件转发到 agenda.org 的其他事件中, "maxlevel . 1" 表示只能选择一级标题来接收事件.
归档文件设置
(setq org-archive-location (concat "archive/archive-" (format-time-string "%Y%m" (current-time)) ".org_archive::"))
这样, 在当前待办事项中, 使用 C-c C-x C-s 命令, 会将当前事件归档到 archive/archive-201903.org_archive 文件中. 其中, 时间根据归档命令发生的时间而定.
Generated by Emacs 25.x(Org mode 8.x)
Copyright © 2014 - Pinvon - Powered by EGO