blob: 499c503c876a8ccb8408fc3c3b1dc93bd3508704 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
;;;; org-mode
(setq org-log-done t)
(setq org-todo-keywords
'((sequence "TODO" "STARTED" "|" "DONE" "NA")))
;; next 6 lines merged from prelude-org
(global-set-key "\C-cl" 'org-store-link)
(global-set-key "\C-ca" 'org-agenda)
(global-set-key "\C-cb" 'org-iswitchb)
(setq org-log-done t)
;; set up capture
(setq org-capture-templates
'(("t" "task" entry (file+headline "~/notes/tasks.org" "Inbox")
"* TODO %?\n%i")
("d" "date" entry (file+headline "~/notes/calendar.org" "Inbox")
"* %?\n%i")
("m" "misc" entry (file+headline "~/notes/misc.org" "Inbox")
"* %?\n%i")
("b" "backburner" entry (file+headline "~/notes/backburner.org" "Inbox")
"* TODO %?\n%i")
;; link counterparts
("T" "task link" entry (file+headline "~/notes/tasks.org" "Inbox")
"* TODO %?\n%i\nLink: %a")
("D" "date link" entry (file+headline "~/notes/calendar.org" "Inbox")
"* %?\n%i\nLink: %a")
("M" "misc link" entry (file+headline "~/notes/misc.org" "Inbox")
"* %?\n%i\nLink: %a")
("B" "backburner link" entry (file+headline "~/notes/backburner.org" "Inbox")
"* %?\n%i\nLink: %a")
;; clipboard
("x" "task clipboard" entry (file+headline "~/notes/tasks.org" "Inbox")
"* TODO %?\n%x")
("X" "misc clipboard" entry (file+headline "~/notes/misc.org" "Inbox")
"* %?\n%x")))
(custom-set-variables
'(org-agenda-files (quote ("~/notes/calendar.org" "~/notes/tasks.org")))
'(org-default-notes-file "~/notes/tasks.org")
'(org-agenda-ndays 7)
;; '(org-deadline-warning-days 14)
'(org-agenda-show-all-dates t)
'(org-agenda-skip-deadline-if-done t)
'(org-agenda-skip-scheduled-if-done t)
'(org-agenda-start-on-weekday nil)
'(org-reverse-note-order t)
'(org-fast-tag-selection-single-key (quote expert))
'(org-agenda-custom-commands
(quote (("d" todo "DONE" nil)
("s" todo "STARTED" nil)
("A" agenda ""
((org-agenda-skip-function
(lambda nil
(org-agenda-skip-entry-if (quote notregexp) "\\=.*\\[#A\\]")))
(org-agenda-ndays 1)
(org-agenda-overriding-header "Today's Priority #A tasks: ")))
("u" "Unschedule TODO entries" alltodo ""
((org-agenda-skip-function
(lambda nil
(org-agenda-skip-entry-if (quote scheduled) (quote deadline)
(quote regexp) "\n]+>")))
(org-agenda-overriding-header "Unscheduled TODO entries: ")))
("p" "Past timestamps" tags "TIMESTAMP<=\"<now>\"")))))
(defvar km/org-additional-notes-files '("~/notes/backburner.org")
"non-agenda files that should be available for refiling")
(defvar km/org-refiling-targets
(append km/org-additional-notes-files org-agenda-files))
;; other customization in prelude's org module
;; have font colors in code blocks
(setq org-src-fontify-natively t)
;; from http://doc.norang.ca/org-mode.html
;; this should prevent blank lines from being inserted
;; before headers
(setq org-blank-before-new-entry (quote ((heading)
(plain-list-item . auto))))
(setq org-cycle-separator-lines 1)
;; from http://doc.norang.ca/org-mode.html
(setq org-refile-targets (quote ((nil :maxlevel . 3)
(km/org-refiling-targets :maxlevel . 2))))
;; Stop using paths for refile targets - we file directly with IDO
(setq org-refile-use-outline-path nil)
;; Targets complete directly with IDO
(setq org-outline-path-complete-in-steps nil)
;; Allow refile to create parent tasks with confirmation
(setq org-refile-allow-creating-parent-nodes (quote confirm))
;; Use IDO for both buffer and file completion and ido-everywhere to t
(setq org-completion-use-ido t)
(setq ido-everywhere t)
(setq ido-max-directory-size 100000)
(ido-mode (quote both))
;;;; Refile settings
;; Exclude DONE state tasks from refile targets
(defun km/verify-refile-target ()
"Exclude todo keywords with a done state from refile targets"
(not (member (nth 2 (org-heading-components)) org-done-keywords)))
(setq org-refile-target-verify-function 'km/verify-refile-target)
(defun km/open-main-orgfile ()
(interactive)
(find-file org-default-notes-file))
(global-set-key (kbd "C-c o m") 'km/open-main-orgfile)
;; by default this has started inserting uppercase for me. keep lower
(add-to-list 'org-structure-template-alist
'("s" "#+begin_src ?\n\n#+end_src" "<src lang=\"?\">\n\n</src>"))
|