Browse Source

added custom org-agenda for work

master
Marc Pohling 6 years ago
parent
commit
9269d22b53
1 changed files with 88 additions and 1 deletions
  1. 89
      config.org

89
config.org

@ -240,7 +240,6 @@ For a more detailed example [[https://github.com/sachac/.emacs.d/blob/83d21e4733
(setq org-default-notes-file "~/Archiv/Dokumente/Notizen/notes.org")
#+end_src
** Org Setup
Speed commands are a nice and quick way to perform certain actions while at the beginning of a heading. It's not activated by default.
@ -252,6 +251,94 @@ See the doc for speed keys by checking out the documentation for speed keys in O
(setq org-highlight-latex-and-related '(latex script entities))
#+end_src
Setting some environment paths
#+begin_src emacs-lisp
(if (string-equal user-login-name "POH")
(progn
(defvar PATH_ORG_FILES "p:/Eigene Dateien/Notizen/")
(defvar PATH_ORG_JOURNAL "p:/Eigene Dateien/Notizen/Journal/")
(defvar PATH_START "p:/Eigene Dateien/Notizen/"))
)
#+end_src
Sort org agenda by deadline and priority
#+begin_src emacs-lisp
(setq org-agenda-sorting-strategy
(quote
((agenda deadline-up priority-down)
(todo priority-down category-keep)
(tags priority-down category-keep)
(search category-keep)))
)
#+end_src
Custom todo-keywords, depending on environment
#+begin_src emacs-lisp
(if (string-equal user-login-name "POH")
(setq org-todo-keywords
'((sequence "OPEN" "TODO" "UNCLEAR" "|" "DONE" "IMPOSSIBLE")))
)
#+end_src
Set locations of some org files
#+begin_src emacs-lisp
(if (string-equal user-login-name "POH")
(progn
(setq org-default-notes-file (concat PATH_ORG_FILES "notes.org"))
(setq org-agenda-files (list(concat PATH_ORG_FILES "notes.org")
(concat PATH_ORG_FILES "projects.org")
(concat PATH_ORG_FILES "todo.org"))))
)
#+end_src
Work specific org-capture-templates
#+begin_src emacs-lisp
(if (string-equal user-login-name "POH")
(setq org-capture-templates
'(("t" "todo" entry (file (concat PATH_ORG_FILES "todo.org"))
"** TODO %\\n%u\n%a\n")
("n" "note" entry (file org-default-notes-file))
("p" "project" entry (file (concat PATH_ORG_FILES "projects.org"))
"** OPEN %?\n%u\n** Beschreibung\n** Zu erledigen\n*** \n** Verlauf\n***" :clock-in t :clock-resume t)
("u" "Unterbrechung" entry (file org-default-notes-file)
"* Unterbrechnung durch %? :Unterbrechung:\n%t" :clock-in t :clock-resume t)))
)
#+end_src
Customize the org agenda
#+begin_src emacs-lisp
(defun my-org-skip-subtree-if-priority (priority)
"Skip an agenda subtree if it has a priority of PRIORITY.
PRIORITY may be one of the characters ?A, ?B, or ?C."
(let ((subtree-end (save-excursion (org-end-of-subtree t)))
(pri-value (* 1000 (- org-lowest-priority priority)))
(pri-current (org-get-priority (thing-at-point 'line t))))
(if (= pri-value pri-current)
subtree-end
nil)))
(setq org-agenda-custom-commands
'(("c" "Simple agenda view"
((tags "PRIORITY=\"A\""
((org-agenda-skip-function '(org-agenda-skip-entry-if 'todo 'done))
(org-agenda-overriding-header "Hohe Priorität:")))
(agenda ""
((org-agenda-span 7)
(org-agenda-start-on-weekday nil)
(org-agenda-overriding-header "Nächsten 7 Tage:")))
(alltodo ""
((org-agenda-skip-function '(or (my-org-skip-subtree-if-priority ?A)
(org-agenda-skip-if nil '(scheduled deadline))))
(org-agenda-overriding-header "Sonstige Aufgaben:"))))))
)
#+end_src
** Org tags
The default value is -77, which is weird for smaller width windows. I'd rather have the tags align horizontally with the header.

Loading…
Cancel
Save