dkellner-org.el 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. ;; dkellner-org.el --- my life in plain text
  2. ;;
  3. ;; See http://orgmode.org/ .
  4. ;; Global keybindings to quickly view my agenda and capture thoughts.
  5. (bind-key "C-c a" #'org-agenda)
  6. (bind-key "C-c c" #'org-capture)
  7. (bind-key "C-c l" #'org-store-link)
  8. ;; Basic configuration: set main org files for agenda/capturing and
  9. ;; TODO-keywords.
  10. (setq org-directory "~/org/")
  11. (setq org-agenda-files '("~/org/main.org" "~/org/pap.org" "~/org/tickler.org"))
  12. (setq org-refile-targets '(("main.org" :maxlevel . 2)
  13. ("pap.org" :maxlevel . 1)
  14. ("tickler.org" :maxlevel . 1)
  15. ("bookmarks.org" :maxlevel . 1)
  16. ("someday.org" :level . 1)))
  17. (setq org-todo-keywords '((sequence "TODO(t)" "NEXT(n)" "WAITING(w)" "|"
  18. "DONE(d)")))
  19. ;; This list contains tags I want to use in almost any file as they are tied to
  20. ;; actionable items (e.g. GTD contexts).
  21. (setq org-tag-alist `((:startgroup)
  22. ("@laptop" . ,(string-to-char "l"))
  23. ("@phone" . ,(string-to-char "p"))
  24. ("@home" . ,(string-to-char "h"))
  25. ("@errands" . ,(string-to-char "e"))
  26. (:endgroup)))
  27. (setq org-startup-folded t)
  28. (setq org-log-into-drawer t)
  29. (setq org-agenda-todo-ignore-scheduled 'all)
  30. (setq org-agenda-todo-ignore-deadlines 'all)
  31. (setq org-agenda-tags-todo-honor-ignore-options t)
  32. (setq org-agenda-restore-windows-after-quit t)
  33. (setq org-time-clocksum-format "%d:%02d")
  34. (setq org-enforce-todo-dependencies t)
  35. (setq org-columns-default-format
  36. "%40ITEM(Task) %3Priority(Pr.) %16Effort(Estimated Effort){:} %CLOCKSUM{:}")
  37. (setq org-export-with-sub-superscripts nil)
  38. (setq org-export-allow-bind-keywords t)
  39. (setq org-default-priority ?C)
  40. ;; I mostly use the capture template for "Inbox" to put new ideas, todos etc.
  41. ;; in my `main.org' file for later processing (GTD-style).
  42. (setq org-capture-templates
  43. '(("i" "Inbox" entry (file "~/org/inbox.org")
  44. "* %?")
  45. ("I" "Inbox (with link)" entry (file "~/org/inbox.org")
  46. "* %?\n %a")
  47. ("j" "Journal" entry (file+datetree "~/org/journal.org")
  48. "* %?" :kill-buffer t)))
  49. ;; Enable habit tracking. For more information see
  50. ;; http://orgmode.org/org.html#Tracking-your-habits .
  51. (require 'org-habit)
  52. (require 'org-drill)
  53. (require 'org-notmuch)
  54. (setq org-agenda-custom-commands
  55. '(("d" "Daily agenda"
  56. ((agenda "" ((org-agenda-span 'day)))
  57. (tags-todo "-PRIORITY=\"C\""
  58. ((org-agenda-sorting-strategy
  59. '(tag-up priority-down))))))))
  60. ;; Enable more languages for Babel, especially useful for
  61. ;; "Literate Devops", see https://www.youtube.com/watch?v=dljNabciEGg .
  62. (org-babel-do-load-languages 'org-babel-load-languages '((emacs-lisp . t)
  63. (python . t)
  64. (shell . t)
  65. (dot . t)))
  66. ;; Eye candy!
  67. (setq org-hide-leading-stars t)
  68. ;; Simple presentations inside Emacs.
  69. (use-package org-tree-slide)
  70. (add-hook 'org-mode-hook (lambda () (auto-fill-mode 1)))
  71. (use-package org-pomodoro
  72. :bind ("C-c P" . org-pomodoro)
  73. :config
  74. (setq org-pomodoro-format "● %s"
  75. org-pomodoro-short-break-format "◔ %s"
  76. org-pomodoro-long-break-format "◕ %s"
  77. org-pomodoro-audio-player "aplay"))
  78. (provide 'dkellner-org)