Implement GTD using Org-mode
With the powerful task management function of Org-mode, combined with other Emacs plug-ins, you can easily implement personal time management (GTD ). If you do not know about GTD, you can have a preliminary understanding of GTD within two minutes.
Table of Contents
- 1. How to perform GTD
- 1.1 Collection
- 1.2 sorting
- 1.3 organizations
- 1.4 Review
- 1.5 execution
- 2. Implement GTD using Org-mode
- 2.1 file Division
- 2.2 task status
- 2.3 tag Design
- 2.4 attribute Design
- 2.5 initialize the file
- 2.6 define transfer (Refiling)
- 3 Use Cases
- 3.1 quickly collect information
- 3.1.1 Quick Start
- 3.1.2 template Definition
- 3.2 view calendar
- 3.3 daily plan
- 3.4 query by status
- 3.5 search by tag
- 3.6 work records
- Stage 1 Summary
- 3.8 Project Statistics
- 3.9 document task
- 3.10 export and print
- 4. Expansion
- 4.1 Synchronization
- 4.2 export printable versions
- 5 References
1. How to perform GTD
As described in GTD, GTD includes collection, sorting, organization, review, and execution. Tools are required for each stage:
1.1 Collection
Any event that requires attention, such as mail, phone, IM, verbal communication, webpages, documents, ideas, etc., may lead to new tasks. The collection process records all the events that require attention.
Therefore, a collection box (Inbox) is required to be enabled quickly and record the required information at any time..
1.2 sorting
Sort out the information in the inbox at the right time, discard useless junk information and reference information that you don't need to consider for the moment, and focus on the remaining tasks. Three processing methods in the sorting phase are as follows:
- Directly discard information that does not need to be processed and does not retain value.
- Archive and retain information that does not need to be processed but retains Value
For example, a useful piece of information may be used in the future and must be archived and reviewed. A good idea is that, due to factors such as time, prerequisites, and consideration, it cannot be immediately put into action, it needs to be recorded.
- Information to be processed, create a task
Based on the above three situations, the sorting phase needs to be implemented:
- Delete useless information
- Archive information
- Create a task
1.3 organizations
When creating a task, you must have a quick judgment, including what, who, when, and where ), why (why? You can use the original message as the reason), how (how to do it), and how much (how long it takes ). This judgment should be very rapid, and the task should be organized according to the judgment result for later processing and query. Generally, the analysis can be conducted following these steps:
- Does the task belong to a project? If yes, first mark the project
- Can this task be completed in 2 minutes? If yes, process the task immediately and mark it as "completed"
- Prioritize the task based on its importance and urgency
- Does this task need to be handled by someone else? If yes, notify the other party and mark the task as "Waiting"
- The task that needs to be processed by yourself. determine the location/occasion of the task and mark it.
- For tasks (schedules) that can determine the time, mark the scheduled processing time. If there is an end date, it is also marked
According to the preceding steps, functions required in the organization stage include::
- Classify tasks into different work lists
- Add a tag for a task
- Define the task completion status
- Define priority for a task
- Set a time point for the task
1.4 Review
Check all tasks at the right time and handle them according to the actual situation. Recommended practices include:
Most of the content at the first three lower levels focuses on the current state of the thing (action, project, and responsibility), and the next level focuses on the Guiding Direction and target orientation, we need to pay attention to the aspects that need attention at the right time, make long-term planning, control the vision, and maintain an all-round balance.
Review stage needs:
- Search tasks by time period
- Search tasks by project
- Process dependencies between tasks
1.5 execution
AccordingIs the situation appropriate?,Is time enough?,Energetic?,Important tasksThe four principles determine which task to perform. Because the previous steps have carefully and systematically considered various tasks, you only need to use intuition to determine. Refer to the "Four quadrant rule":
- Task Description: Important/not important, urgent/not urgent
- Sort the tasks in the order of "important", "important", and "urgent ",
- For jobs of the same type, the priority of "high, medium, and low" is manually distinguished.
- Handling principles:
- Important and Urgent: do it as soon as possible to relieve pressure
- Important and not urgent: plan as soon as possible and gradually complete
- Not important but urgent: seek help and set the deadline
- Not important or urgent: Cooling
Each time a task is completed, it is marked as "completed" and archived.
To help identify tasks, you must support filtering, searching, and sorting tasks..
2. Implement GTD using Org-mode
The functions of the GTD tool are listed earlier. You can use Org-mode to implement these functions well and use Org-mode as the GTD tool.
2.1 file Division
The basic unit of Org-mode Management is a file. Although all tasks can be put in the same file, this is not conducive to management. Therefore, we must first plan the file division.
I designed six files based on my own needs:
- Inbox, used to collect unorganized Information
- To-Do task, record all unfinished tasks. But does not include the project content.
- Tasks task
- Items with no time points are "to-do items"
- To-Do items with time points are "schedules"
- To-do lists with time intervals are periodic tasks"
- Ideas
- The finished task will be migrated here.
- Tasks completed by Tasks
- Journal logs, organized by time range, can transfer completed tasks here
- Note notes: temporarily store some materials that may be used in the future. Note will be gradually transferred to the real notebook
- Trash, recycle bin, canceled task, and unnecessary information and materials are migrated here, waiting for deletion, differentiated by type
- Project, project, specifically collect non-individual, project-related matters. The completed project implementation will not be migrated to finished, and the project log and summary will be completed in this file.
- One project per project, with the project name/abbreviation as the tag
- Unified Tag: Proj
2.2 task status
Status (shortcut key) |
Completion status |
Description |
Review Cycle |
|
|
The stateless flag has not been sorted, usually in Inbox |
|
TODO (t) |
|
The most basic task status, but not the scheduled time. |
|
NEXT (n) |
|
The next step is to start planning. |
|
SOMEDAY (s) |
|
The idea has not decided whether to start the action. |
|
Done (d) |
Yes |
Completed. The completion time and remarks must be recorded and transferred to finished.org. |
|
Abort () |
Yes |
The reason for canceling the task is to be transferred to the corresponding node of trash.org. |
|
WAITTING (w) |
|
Wait for others to complete |
|
The task status is used in multiple files, so it must be defined in. emacs (rather than in a single. org file)
(setq org-todo-keywords '((sequence "TODO(t!)" "NEXT(n)" "WAITTING(w)" "SOMEDAY(s)" "|" "DONE(d@/!)" "ABORT(a@/!)") ))
2.3 tag Design
There are several groups of labels:
- Situation tag, indicating the environment in which the task should be completed
- @ Office
- @ Home
- @ When a Computer exists
- @ Call
- @ Way: on the road or going out
- @ Lunchtime Lunch Break
- CATEGORY tag
- All projects have tags "project"
- Other categories are customized
2.4 TODO attribute design 2.5 Initialization File
To make the above design take effect, some files need to be initialized to add configuration information. You can also include some examples.
- Task.org
- Finished.org
- Project.org
2.6 define transfer (Refiling)
To use GTD for file management, you must move the title from one node to another.
The C-c C-w provided by org-mode can easily move nodes in the same file.
You can also use configurations to quickly move different files. The following is an example:
'(org-refile-targets (quote (("newgtd.org" :maxlevel . 1) ("someday.org" :level . 2))))
This setting indicates the title of the second class in the "someday.org" file and the title of the first class in the "newgtd.org" file.
TODO
3. Use Case 3.1 to quickly collect information
GTD usually defines an Inbox to quickly record ideas and tasks. The omnipotent Inbox tool is paper and pen. I have tried gmail, EverNote, and doit. im before, but they all feel less agile. The org-mode + remember-mode in Emacs can meet my requirements.
The latest Org (> 6.36) version integrates remember. el to quickly capture information, classify it using predefined templates, and save relevant attachments.
Use Emacs to collect more functions (such as www, mail, im, and read)
3.1.1 Quick Start
Use the M-x org-remember command in emacs to open a new buffer. Enter some content and then run the C-c command, the content will be saved to the file (default is ~ /. Notes ). If you want to view ~ /. Notes File, you will see content similar to the following:
** Mon Apr 16 10:32:38 2012 (created using org-remember) use org-remember to create/home/*********/orgmode3_GTD.org *** Mon Apr 16 10:34:41 2012 (another test) another test:/home/********/tmp
Org-remember automatically creates some entries, including the time, input comments, and the file name opened by Emacs at that time.
Although this is much faster than manually opening a file and entering some content, we can also do it faster:
3.1.2 template Definition
Org-remember supports templates. You can use the shortcut key to select the event type, generate records in a specific format, and insert them to the specified location of the specified container. The format is: (name, shortcut key, content template, file, parent node)
My events are defined as follows:
Event (shortcut key) |
Container |
Template |
New (n) |
Inbox.org |
Inbox to collect unorganized Information |
Task (t) |
Task.org |
To-do list, all unfinished tasks |
Calendar (c) |
Task.org |
Schedule, with a clear time to do implementation, can be a periodic task |
Idea (I) |
Task.org |
Thoughts and aspirations |
Note (r) |
Note.org |
The notes will eventually be moved to the real notebook |
Project (p) |
Project.org |
Project Task |
Corresponding template Configuration:
(Org-remember-insinuate) (setq org-directory "~ /Documents/Dropbox/0.GTD/ ") (setq org-remember-templates '(" New "? N "* %? % T \ n % I \ n % ""~ /Documents/Dropbox/0.GTD/ inbox.org ") (" Task "? T "** TODO %? \ N % I \ n % ""~ /Documents/Dropbox/0.GTD/ task.org "" Tasks ") (" Calendar "? C "** TODO %? \ N % I \ n % ""~ /Documents/Dropbox/0.GTD/ task.org "" Tasks ") (" Idea "? I "*** %? \ N % I \ n % ""~ /Documents/Dropbox/0.GTD/ task.org "" Ideas ") (" Note "? R "* %? \ N % I \ n % ""~ /Documents/Dropbox/0.GTD/ note.org ") (" Project "? P "** %? \ N % I \ n % ""~ /Documents/Dropbox/0.GTD/ project.org "% g) (setq org-default-notes-file (concat org-directory"/inbox.org "))
Using template parameters can bring a lot of convenience. For example, in the Project template above, the task can be automatically inserted to the entries of the corresponding Project according to the selected Project name during collection.
Common Template elements:
Element |
Description |
%? |
Input text |
\ N |
Insert line breaks |
% I |
Insert selected region |
% |
Link of the title of the current cursor |
% T |
Insert Date |
% T |
Insert Date and Time |
% G |
Select from the label of the target container |
% G |
Select from global label |
% T |
Input Date and Time |
For details about the template, refer to here.
3.2 view the calendar with TODO
In the Emacs configuration file. emacs, define the calendar shortcut:
(Define-key global-map "\ C-ca" 'org-agenda)
C-c [Add the current file to the calendar, c-c a this week event t display all events m query tags L Current Buffer timeline s query keywords T query items with TODO keywords M query tags with TODO keywords q exit the calendar
You can add or remove multiple org files from the calendar, or lock the calendar to a branch of the current org file: C-c [Add the current file to the calendar. If yes, move to C-c] to remove the current file from the calendar C-c-x <lock to the current tree (only show the events of the current tree) c-c-x> unlock
3.3 TODO daily plan
- State "TODO" from "" 2012-04-17 Tue
3.4 TODO query by status
- State "TODO" from "" 2012-04-17 Tue
3.5 TODO search by tag
- State "TODO" from "" 2012-04-17 Tue
3.6 TODO work records
- State "TODO" from "" 2012-04-17 Tue
3.7 TODO stage summary
- State "TODO" from "" 2012-04-17 Tue
3.8 TODO Project Statistics
- State "TODO" from "" 2012-04-17 Tue
C-c-x C-r (clocktable)
3.9 TODO document task
- State "TODO" from "" 2012-04-17 Tue
C-c [Add the current file to the calendar
3.10 export and print TODO
- State "TODO" from "" 2012-04-17 Tue
4. Extended 4.1 Synchronization
Since the GTD file directory has been set in the Dropbox directory, automatic synchronization can be implemented, including pc, mac, and mobile.
There is MobileOrg on iOS and Android, and GTD on mobile devices will solve the problem.
4.2 TODO export printable version
- State "TODO" from "" 2012-04-17 Tue
5 References
Http://emacser.com/org-mode.htm
Http://www.yifeiyang.net/emacs/use-emacs-org-mode.html
Date: 23:25:34 CST
Author: Holbrook
Org version 7.8.08 with Emacs version 23
Validate XHTML 1.0