summary refs log tree commit diff
path: root/emacs.d/custom/fcuny-org.el
diff options
context:
space:
mode:
authorFranck Cuny <fcuny@twitter.com>2019-11-23 13:34:46 -0800
committerFranck Cuny <fcuny@twitter.com>2019-11-23 13:34:46 -0800
commit3f96fd9b228a71876b86be8ad967d36d772f27cd (patch)
treedee09615f184babcd124d8f933f0b236be0a6ebc /emacs.d/custom/fcuny-org.el
parent[emacs] Add a new theme: spacemacs. (diff)
downloademacs.d-3f96fd9b228a71876b86be8ad967d36d772f27cd.tar.gz
[emacs] don't hide directories info.
I prefer to see the details, it's easier to understand what I'm
looking at.
Diffstat (limited to '')
-rw-r--r--emacs.d/custom/fcuny-org.el165
1 files changed, 83 insertions, 82 deletions
diff --git a/emacs.d/custom/fcuny-org.el b/emacs.d/custom/fcuny-org.el
index 5c15ef6..9825ca9 100644
--- a/emacs.d/custom/fcuny-org.el
+++ b/emacs.d/custom/fcuny-org.el
@@ -6,9 +6,11 @@
 (use-package org
   :after (dash)
   :ensure t
-  :hook ((org-mode              . visual-line-mode)
+  :hook ((org-mode              . (lambda () (setq fill-column 120)))
+         (org-mode              . turn-on-auto-fill)
          (org-mode              . org-indent-mode)
-         (org-capture-mode-hook . delete-other-windows))
+         (org-capture-mode-hook . delete-other-windows)
+         (org-mode              . org-hide-block-all))
   :bind (("C-c c" . org-capture)
          ("C-c a" . org-agenda)
          ("C-c o" . hydra-org-menu/body))
@@ -30,54 +32,65 @@ _g w_: go to work
 _g n_: go to notes
 "
     ("g i" (find-file-other-window org-default-inbox-file))
-    ("g p" (find-file-other-window org-default-personal-file))
-    ("g w" (find-file-other-window org-default-work-file))
-    ("g n" (find-file-other-windw org-default-notes-file))
+    ("g p" (find-file-other-window org-default-tasks-file))
+    ("g w" (find-file-other-window org-default-work-tasks-file))
+    ("g n" (find-file-other-windw org-default-work-notes-file))
     ("s" (org-save-all-org-buffers)))
 
   :custom
   ;; cosmetic
   (org-pretty-entities t)
   (org-startup-indented nil)
-  (org-tags-column -97)
 
   ;;
   (org-log-done 'time)
 
+  ;; look
+  (org-agenda-window-setup 'current-window)
+
   ;; priorities
   (org-priority-start-cycle-with-default nil) ;; Start one over/under default value.
   (org-lowest-priority ?D)
   (org-default-priority ?D) ;; Ensures unset tasks have low priority.
-  (org-priority-faces '((?A . "#ff2600")
-                        (?B . "#ff5900")
-                        (?C . "#ff9200")
-                        (?D . "#747474")))
 
   ;; files
   (org-directory (expand-file-name "~/Documents/notebooks"))
-  (org-archive-dir (concat org-directory "/archive/"))
+  ;; (org-archive-location "~/Documents/notebooks/journal.org::datetree/* Finished Tasks")
 
-  (org-default-personal-file (concat org-directory "/personal.org"))
-  (org-default-work-file (concat org-directory "/twitter.org"))
+  (org-default-tasks-file (concat org-directory "/tasks.org"))
   (org-default-journal-file (concat org-directory "/journal.org"))
-  (org-default-inbox-file (concat org-directory "/inbox.org"))
   (org-default-notes-file (concat org-directory "/notes.org"))
 
+  (org-default-work-tasks-file (concat org-directory "/work-tasks.org"))
+  (org-default-work-journal-file (concat org-directory "/work-journal.org"))
+  (org-default-work-notes-file (concat org-directory "/work-notes.org"))
+
+  (org-default-inbox-file (concat org-directory "/inbox.org"))
+
   ;; how to manage tasks
   (org-todo-keywords '((sequence "TODO(t)" "STARTED(s)" "DELEGATED(D)" "|" "DONE(d)")
-                       (sequence "|" "MEETING(m)" "NOTE(n)")
-                       (sequence "PROJECT" "|" "PROJECTDONE")
                        (sequence "SOMEDAY" "|" "CANCELED(c)")))
 
   ;; agenda related
   (org-agenda-start-on-weekday 1)
-  (org-agenda-files `(,org-default-personal-file
-                      ,org-default-work-file))
+  (org-agenda-files `(,org-default-tasks-file
+                      ,org-default-work-tasks-file))
 
   (org-agenda-custom-commands
    (quote
-    (("w" . "Work...")
-     ("wt" "Work Today"
+    (("h" "Hotlist (what's important and due soon)"
+      ((tags-todo "DEADLINE<\"<+0d>\""
+                  ((org-agenda-overriding-header "OVERDUE")))
+       (tags-todo "DEADLINE>=\"<+0d>\"+DEADLINE<=\"<+1w>\""
+                  ((org-agenda-overriding-header "DUE IN NEXT 7 DAYS")))
+       (tags-todo "DEADLINE=\"\"+PRIORITY={A}|DEADLINE>\"<+1w>\"+PRIORITY={A}"
+                  ((org-agenda-overriding-header "HIGH PRIORITY"))))
+      ((org-agenda-todo-ignore-scheduled 'future)
+       (org-agenda-sorting-strategy '(deadline-up))))
+
+     ("w" . "Work...")
+
+     ("wf" "Work Today"
       ((tags-todo "DEADLINE=\"<+0d>\""
                   ((org-agenda-overriding-header "Due today")
                    (org-agenda-skip-function
@@ -91,10 +104,6 @@ _g n_: go to notes
        (tags-todo "TODO={STARTED}"
                   ((org-agenda-overriding-header "Started")
                    (org-agenda-sorting-strategy '(priority-down))))
-       (tags "TODO={MEETING}+CREATED>\"<-7d>\""
-             ((org-agenda-overriding-header "Recent meetings (last 7 days)")))
-       (tags "TODO={NOTE}+CREATED>\"<-7d>\""
-             ((org-agenda-overriding-header "Recent notes (last 7 days)")))
        (agenda ""
                ((org-agenda-entry-types '(:scheduled))
                 (org-agenda-overriding-header "Scheduled")
@@ -104,13 +113,49 @@ _g n_: go to notes
                  '(priority-down time-down))
                 (org-agenda-span 'day)
                 (org-agenda-start-on-weekday nil)
-                (org-agenda-time-grid nil))))
-      ((org-agenda-files `(,org-default-work-file))
+                (org-agenda-time-grid nil)))
+
+       (tags "TODO={MEETING}+CREATED>\"<-7d>\""
+             ((org-agenda-overriding-header "Recent meetings (last 7 days)")))
+       (tags "TODO={NOTE}+CREATED>\"<-7d>\""
+             ((org-agenda-overriding-header "Recent notes (last 7 days)"))))
+      ((org-agenda-files `(,org-default-work-tasks-file))
        (org-agenda-sorting-strategy '(deadline-up))))
 
      ("wp" "For 1:1"
       ((tags "people&TODO={TODO\\|STARTED}"
-             ((org-agenda-overriding-header "Tasks for 1:1")))))
+             ((org-agenda-overriding-header "Tasks for 1:1")))
+       ((org-agenda-files `(,org-default-work-tasks-file)))))
+
+     ("wt" "Triage unscheduled tasks"
+      ((tags "work&TODO<>\"\"&TODO<>{DONE\\|CANCELED\\|NOTE\\|MEETING\\|PROJECT}"
+             ((org-agenda-overriding-header "Unscheduled tasks: ")
+              (org-agenda-skip-function
+               (quote
+                (org-agenda-skip-entry-if
+                 (quote scheduled)
+                 (quote deadline)
+                 (quote timestamp)
+                 (quote regexp)
+                 "\\* \\(SOMEDAY\\)")))
+              (org-agenda-sorting-strategy
+               (quote
+                (category-up)))
+              (org-agenda-prefix-format "%-11c%5(fcuny/org-todo-age) "))))
+      ((org-agenda-files `(,org-default-tasks-file
+                           ,org-default-work-tasks-file))))
+
+     ("wP" "Work project"
+      ((tags "TODO={PROJECT}"
+             ((org-agenda-overriding-header "All work projects"))))
+      ((org-agenda-files `(,org-default-work-tasks-file))))
+
+     ("ws" "Someday tasks"
+      ((tags-todo "TODO={SOMEDAY}"
+                  ((org-agenda-overriding-header "NO DUE DATE / SOMEDAY")
+                   (org-agenda-skip-function
+                    '(org-agenda-skip-entry-if 'deadline)))))
+      ((org-agenda-files `(,org-default-work-tasks-file))))
 
      ("p" . "Personal ...")
      ("pt" "Personal Today"
@@ -139,41 +184,8 @@ _g n_: go to notes
                 (org-agenda-span 'day)
                 (org-agenda-start-on-weekday nil)
                 (org-agenda-time-grid nil))))
-      ((org-agenda-files `(,org-default-personal-file
+      ((org-agenda-files `(,org-default-tasks-file
                            ,org-default-notes-file))
-       (org-agenda-sorting-strategy '(deadline-up))))
-
-     ("r" . "Review ...")
-     ("rt" "Triage (unscheduled tasks)"
-      ((tags "TODO<>\"\"&TODO<>{DONE\\|CANCELED\\|NOTE\\|MEETING\\|PROJECT}"
-             ((org-agenda-overriding-header "Unscheduled tasks: ")
-              (org-agenda-skip-function
-               (quote
-                (org-agenda-skip-entry-if
-                 (quote scheduled)
-                 (quote deadline)
-                 (quote timestamp)
-                 (quote regexp)
-                 "\\* \\(SOMEDAY\\)")))
-              (org-agenda-sorting-strategy
-               (quote
-                (category-up)))
-              (org-agenda-prefix-format "%-11c%5(org-todo-age) ")))))
-
-     ("rs" "Someday tasks"
-      ((tags-todo "TODO={SOMEDAY}"
-                  ((org-agenda-overriding-header "NO DUE DATE / SOMEDAY")
-                   (org-agenda-skip-function
-                    '(org-agenda-skip-entry-if 'deadline))))))
-
-     ("h" "Hotlist (what's important and due soon)"
-      ((tags-todo "DEADLINE<\"<+0d>\""
-                  ((org-agenda-overriding-header "OVERDUE")))
-       (tags-todo "DEADLINE>=\"<+0d>\"+DEADLINE<=\"<+1w>\""
-                  ((org-agenda-overriding-header "DUE IN NEXT 7 DAYS")))
-       (tags-todo "DEADLINE=\"\"+PRIORITY={A}|DEADLINE>\"<+1w>\"+PRIORITY={A}"
-                  ((org-agenda-overriding-header "HIGH PRIORITY"))))
-      ((org-agenda-todo-ignore-scheduled 'future)
        (org-agenda-sorting-strategy '(deadline-up)))))))
 
   ;; org babel related
@@ -207,40 +219,29 @@ _g n_: go to notes
   (org-refile-use-outline-path 'file)
   (org-outline-path-complete-in-steps nil)
   (org-refile-allow-creating-parent-nodes 'confirm)
-  (org-refile-targets (quote ((org-agenda-files :todo . "PROJECT")
-                              (org-default-notes-file :maxlevel . 1))))
-
-  (org-stuck-projects (quote ("TODO=\"PROJECT\"" ("TODO") nil "")))
+  (org-refile-targets (quote ((org-default-tasks-file      :level . 0)
+                              (org-default-work-tasks-file :level . 0)
+                              (org-default-notes-file      :level . 0)
+                              (org-default-work-notes-file :level . 0))))
 
   (org-reverse-note-order t)
 
-  (org-todo-keyword-faces
-   (quote
-    (("TODO" :foreground "medium blue" :weight bold)
-     ("STARTED" :foreground "dark orange" :weight bold)
-     ("WAITING" :foreground "red" :weight bold)
-     ("DELEGATED" :foreground "dark violet" :weight bold)
-     ("NOTE" :foreground "purple" :weight bold)
-     ("PROJECT" :foreground "#088e8e" :weight bold)))
-     ("SOMEDAY" :foreground "dark blue" :weight bold)
-     ("MEETING" :foreground "deep sky blue" :weight bold))
-
   (org-capture-templates
    `(("t" "Add task" entry
       (file ,org-default-inbox-file)
       "* TODO %?\n:PROPERTIES:\n:ID: %(shell-command-to-string \"uuidgen\"):CREATED: %U\n:END:\n")
 
-     ("m" "Meeting" entry
-      (file ,org-default-inbox-file)
-      "* MEETING %u %?\n:PROPERTIES:\n:ID: %(shell-command-to-string \"uuidgen\"):CREATED: %U\n:END:\n")
-
      ("n" "Note" entry
       (file ,org-default-inbox-file)
-      "* NOTE %?\n:PROPERTIES:\n:ID: %(shell-command-to-string \"uuidgen\"):CREATED: %U\n:END:\n")
+      "* %?\n:PROPERTIES:\n:ID: %(shell-command-to-string \"uuidgen\"):CREATED: %U\n:END:\n")
 
      ("j" "Journal" entry
       (file+olp+datetree ,org-default-journal-file)
-      "* %?" :tree-type month))))
+      "* %?\n:PROPERTIES:\n:ID: %(shell-command-to-string \"uuidgen\"):CREATED: %U\n:END:\n" :tree-type month)
+
+     ("J" "Work Journal" entry
+      (file+olp+datetree ,org-default-work-journal-file)
+      "* %?\n:PROPERTIES:\n:ID: %(shell-command-to-string \"uuidgen\"):CREATED: %U\n:END:\n" :tree-type month))))
 
 (use-package htmlize
   :ensure t)