diff --git a/init.org b/init.org index dcf4b2a..31c4341 100644 --- a/init.org +++ b/init.org @@ -208,7 +208,7 @@ then load it. #+END_SRC #+RESULTS: -: [nil 26760 24522 367252 nil elpaca-process-queues nil nil 826000 nil] +: [nil 26768 31512 287826 nil elpaca-process-queues nil nil 20000 nil] *** Wait for initial installations @@ -1916,24 +1916,82 @@ templates to be generated. By default it uses ** Org Mode -*** Configure Org Mode - +*** Org Configuration #+BEGIN_SRC emacs-lisp - (use-package org-mode + (use-package org :mode "\\.org$" :ensure nil - :after org + :custom + (org-return-follows-link t) + (org-mouse-1-follows-link t) + (org-link-descriptive t) + (org-agenda-skip-scheduled-if-done t) + (org-agenda-skip-deadline-if-done t) + (org-hide-emphasis-markers t) + + (line-spacing 0.1) + (left-margin-width 2) + (right-margin-width 2) + + (org-todo-keywords '((sequence "TODO(t)" "NEXT(n)" "WAITING(w)" "SOMEDAY(s)" "PROJ(p)" + "|" "DONE(d)" "CANCELED(c)"))) + (org-todo-keywords-for-agenda '((sequence "NEXT(n)" "TODO(t)" "WAITING(w)" "SOMEDAY(s)" "PROJ(p)" "|" "DONE(d)" "CANCELED(c)"))) + (org-agenda-files (list + "~/Nextcloud/org/" + "~/org/snamellit/" + "~/org/customer/" + "~/org/personal/" + "~/.org-jira/" + )) + (org-refile-targets '( + (org-agenda-files . (:level . 1)) + ("~/org/customer/gtd.org" . (:level . 1)) + ("~/org/personal/bijen.org" . (:level . 1)) + ("~/org/personal/fitness.org" . (:level . 1)) + )) + (org-babel-load-languages '((emacs-lisp . t) + (shell . t) + (python . t) + (latex . t) + (scheme . t) + (plantuml . t) + (dot . t))) + :config - (progn - (setq org-log-done 'time) - (setq org-confirm-babel-evaluate nil) - (setq org-export-babel-evaluate nil) - (setq org-html-validation-link nil) - ;; ... more stuff - ) - ) + (message "Configuring org mode") + ;; set files for agenda views + (setq +org-capture-todo-file "~/Nextcloud/org/inbox.org" + +org-capture-notes-file "~/Nextcloud/org/inbox.org" + +org-capture-journal-file "~/Nextcloud/org/journal.org" + +org-capture-projects-file "~/Nextcloud/org/projects.org") + (org-babel-do-load-languages 'org-babel-load-languages org-babel-load-languages) + (setq org-log-done 'time) + (setq org-confirm-babel-evaluate nil) + (setq org-export-babel-evaluate nil) + (setq org-html-validation-link nil) + :hook ( + (org-mode . org-indent-mode) + ) + :bind ( + ("C-c a" . org-agenda) + ("C-c l" . org-store-link) + )) #+END_SRC +#+RESULTS: +: org-store-link + +*** Add org-contrib + +Some modules are providedd by org-contrib, like exporting to +confluence + +#+BEGIN_SRC emacs-lisp + (use-package org-contrib + :ensure t) +#+END_SRC + + *** Mixed Pitch Support by Default in Org #+BEGIN_SRC emacs-lisp (defun snm-org-mode-config () @@ -1942,6 +2000,7 @@ templates to be generated. By default it uses (visual-line-mode) (turn-on-auto-fill) ) + (add-hook 'org-mode-hook #'snm-org-mode-config) (use-package org-bullets :ensure t @@ -2047,6 +2106,7 @@ interactive to manually install the latest version if needed. #+BEGIN_SRC emacs-lisp :tangle yes ;; configure babel languages (use-package ob + :ensure nil :custom (org-babel-load-languages '((emacs-lisp . t) (shell . t) @@ -2209,14 +2269,6 @@ it in the same context. Hmmm.... sounds even better. #+END_SRC **** Export to Confluence -#+BEGIN_SRC emacs-lisp - (use-package org-contrib - :ensure t) -#+END_SRC - -#+RESULTS: -: [nil 26576 2769 688869 nil elpaca-process-queues nil nil 120000 nil] - #+BEGIN_SRC emacs-lisp (use-package ox-confluence :after org-contrib @@ -2507,66 +2559,21 @@ the org tree and in the customer JIRA. | w | Weekly Review | ((agenda ((org-agenda-overriding-header Completed Tasks) (org-agenda-skip-function (org-agenda-skip-entry-if 'nottodo 'done)) (org-agenda-span 'week))) (agenda ((org-agenda-overriding-header Unfinished Scheduled Tasks) (org-agenda-skip-function (org-agenda-skip-entry-if 'todo 'done)) (org-agenda-span 'week)))) | -*** Org Configuration -#+BEGIN_SRC emacs-lisp - (use-package org - :ensure nil - :demand t - :custom - (org-return-follows-link t) - (org-mouse-1-follows-link t) - (org-link-descriptive t) - (org-agenda-skip-scheduled-if-done t) - (org-agenda-skip-deadline-if-done t) - (org-hide-emphasis-markers t) - - (line-spacing 0.1) - (left-margin-width 2) - (right-margin-width 2) - (org-todo-keywords '((sequence "TODO(t)" "NEXT(n)" "WAITING(w)" "SOMEDAY(s)" "PROJ(p)" - "|" "DONE(d)" "CANCELED(c)"))) - (org-todo-keywords-for-agenda '((sequence "NEXT(n)" "TODO(t)" "WAITING(w)" "SOMEDAY(s)" "PROJ(p)" "|" "DONE(d)" "CANCELED(c)"))) - (org-agenda-files (list - "~/Nextcloud/org/" - "~/org/snamellit/" - "~/org/customer/" - "~/org/personal/" - "~/.org-jira/" - )) - (org-refile-targets '( - (org-agenda-files . (:level . 1)) - ("~/org/customer/gtd.org" . (:level . 1)) - ("~/org/personal/bijen.org" . (:level . 1)) - ("~/org/personal/fitness.org" . (:level . 1)) - )) - (org-babel-load-languages '((emacs-lisp . t) - (shell . t) - (python . t) - (latex . t) - (scheme . t) - (plantuml . t) - (dot . t))) - :config - (message "Configuring org mode") - ;; set files for agenda views - (setq +org-capture-todo-file "~/Nextcloud/org/inbox.org" - +org-capture-notes-file "~/Nextcloud/org/inbox.org" - +org-capture-journal-file "~/Nextcloud/org/journal.org" - +org-capture-projects-file "~/Nextcloud/org/projects.org") - (org-babel-do-load-languages 'org-babel-load-languages org-babel-load-languages) - :hook ( - (org-mode . snm-org-mode-config) - (org-mode . org-indent-mode) - ) - :bind ( - ("C-c a" . org-agenda) - ("C-c l" . org-store-link) - )) +**** Context aware GTD + +Create agenda views for specific contexts + +#+BEGIN_SRC emacs-lisp + (add-to-list 'org-agenda-custom-commands '("b" "Busy Bees" ((tags-todo "+bees")))) #+END_SRC #+RESULTS: -: org-store-link +| b | Busy Bees | ((tags-todo +bees)) | +| G | Customer GTD | ((alltodo .* ((org-agenda-files '(~/org/customer/ ~/.org-jira/)) (org-agenda-overriding-header Customer GTD)))) | +| w | Weekly Review | ((agenda ((org-agenda-overriding-header Completed Tasks) (org-agenda-skip-function (org-agenda-skip-entry-if 'nottodo 'done)) (org-agenda-span 'week))) (agenda ((org-agenda-overriding-header Unfinished Scheduled Tasks) (org-agenda-skip-function (org-agenda-skip-entry-if 'todo 'done)) (org-agenda-span 'week)))) | + + ** Denote #+BEGIN_SRC emacs-lisp