aboutsummaryrefslogtreecommitdiff
path: root/.emacs.local.d
diff options
context:
space:
mode:
authorRaul Benencia <id@rbenencia.name>2022-07-29 17:32:09 -0700
committerRaul Benencia <id@rbenencia.name>2022-07-29 17:32:09 -0700
commitac35da5b84cb89fe0fd7af1f5b4ef2f1754318f7 (patch)
treea9fe5ce500a4f3497996b439fb0dbdfd5addb29a /.emacs.local.d
parentceed9fa8c86883a1d3e3e02bcba2f0e49aa5af8b (diff)
emacs: redefine org-agenda-custom-commands
Diffstat (limited to '.emacs.local.d')
-rw-r--r--.emacs.local.d/config.el6
-rw-r--r--.emacs.local.d/modes/org.el87
2 files changed, 13 insertions, 80 deletions
diff --git a/.emacs.local.d/config.el b/.emacs.local.d/config.el
index 573b304..876fcb4 100644
--- a/.emacs.local.d/config.el
+++ b/.emacs.local.d/config.el
@@ -1,5 +1,11 @@
(setq
my-org-agenda-files '("~/org/")
+ my-org-agenda-custom-commands
+ '(("x" agenda)
+ ("y" agenda*)
+ ("w" todo "WAITING")
+ ("W" todo-tree "WAITING")
+ )
my-org-journal-file-type 'yearly
my-org-journal-dir "~/org/journal/"
my-org-journal-file-format "%Y.org"
diff --git a/.emacs.local.d/modes/org.el b/.emacs.local.d/modes/org.el
index e278230..ee9a934 100644
--- a/.emacs.local.d/modes/org.el
+++ b/.emacs.local.d/modes/org.el
@@ -10,8 +10,6 @@
(require 'org)
-(global-set-key (kbd "<f11>") 'org-agenda)
-
(setq org-cycle-separator-lines 0)
(setq org-startup-indented t)
(setq org-hide-leading-stars nil)
@@ -31,6 +29,11 @@
;; ORG BINDINGS ;;
+(global-set-key (kbd "C-c l") #'org-store-link)
+(global-set-key (kbd "C-c a") #'org-agenda)
+(global-set-key (kbd "C-c c") #'org-capture)
+
+
(global-set-key (kbd "<f9> I") 'bh/punch-in)
(global-set-key (kbd "<f9> O") 'bh/punch-out)
@@ -57,10 +60,6 @@
;; CAPTURE ;;
(setq org-default-notes-file my-org-refile-path)
-
-;; I use C-c c to start capture mode
-(global-set-key (kbd "C-c c") 'org-capture)
-
(setq org-capture-templates
(quote
(
@@ -111,86 +110,14 @@
;; AGENDA VIEW ;;
(setq org-agenda-files my-org-agenda-files)
+(setq org-agenda-custom-commands my-org-agenda-custom-commands)
+
;; Do not dim blocked tasks
(setq org-agenda-dim-blocked-tasks nil)
;; Compact the block agenda view
(setq org-agenda-compact-blocks t)
-;; Custom agenda command definitions
-(setq org-agenda-custom-commands
- (quote (("N" "Notes" tags "NOTE"
- ((org-agenda-overriding-header "Notes")
- (org-tags-match-list-sublevels t)))
- ("h" "Habits" tags-todo "STYLE=\"habit\""
- ((org-agenda-overriding-header "Habits")
- (org-agenda-sorting-strategy
- '(todo-state-down effort-up category-keep))))
- (" " "Agenda"
- ((agenda "" nil)
- (tags "REFILE"
- ((org-agenda-overriding-header "Tasks to Refile")
- (org-tags-match-list-sublevels nil)))
- (tags-todo "-CANCELLED/!"
- ((org-agenda-overriding-header "Stuck Projects")
- (org-agenda-skip-function 'bh/skip-non-stuck-projects)
- (org-agenda-sorting-strategy
- '(category-keep))))
- (tags-todo "-HOLD-CANCELLED/!"
- ((org-agenda-overriding-header "Projects")
- (org-agenda-skip-function 'bh/skip-non-projects)
- (org-tags-match-list-sublevels 'indented)
- (org-agenda-sorting-strategy
- '(category-keep))))
- (tags-todo "-CANCELLED/!NEXT"
- ((org-agenda-overriding-header (concat "Project Next Tasks"
- (if bh/hide-scheduled-and-waiting-next-tasks
- ""
- " (including WAITING and SCHEDULED tasks)")))
- (org-agenda-skip-function 'bh/skip-projects-and-habits-and-single-tasks)
- (org-tags-match-list-sublevels t)
- (org-agenda-todo-ignore-scheduled bh/hide-scheduled-and-waiting-next-tasks)
- (org-agenda-todo-ignore-deadlines bh/hide-scheduled-and-waiting-next-tasks)
- (org-agenda-todo-ignore-with-date bh/hide-scheduled-and-waiting-next-tasks)
- (org-agenda-sorting-strategy
- '(todo-state-down effort-up category-keep))))
- (tags-todo "-REFILE-CANCELLED-WAITING-HOLD/!"
- ((org-agenda-overriding-header (concat "Project Subtasks"
- (if bh/hide-scheduled-and-waiting-next-tasks
- ""
- " (including WAITING and SCHEDULED tasks)")))
- (org-agenda-skip-function 'bh/skip-non-project-tasks)
- (org-agenda-todo-ignore-scheduled bh/hide-scheduled-and-waiting-next-tasks)
- (org-agenda-todo-ignore-deadlines bh/hide-scheduled-and-waiting-next-tasks)
- (org-agenda-todo-ignore-with-date bh/hide-scheduled-and-waiting-next-tasks)
- (org-agenda-sorting-strategy
- '(category-keep))))
- (tags-todo "-REFILE-CANCELLED-WAITING-HOLD/!"
- ((org-agenda-overriding-header (concat "Standalone Tasks"
- (if bh/hide-scheduled-and-waiting-next-tasks
- ""
- " (including WAITING and SCHEDULED tasks)")))
- (org-agenda-skip-function 'bh/skip-project-tasks)
- (org-agenda-todo-ignore-scheduled bh/hide-scheduled-and-waiting-next-tasks)
- (org-agenda-todo-ignore-deadlines bh/hide-scheduled-and-waiting-next-tasks)
- (org-agenda-todo-ignore-with-date bh/hide-scheduled-and-waiting-next-tasks)
- (org-agenda-sorting-strategy
- '(category-keep))))
- (tags-todo "-CANCELLED+WAITING|HOLD/!"
- ((org-agenda-overriding-header (concat "Waiting and Postponed Tasks"
- (if bh/hide-scheduled-and-waiting-next-tasks
- ""
- " (including WAITING and SCHEDULED tasks)")))
- (org-agenda-skip-function 'bh/skip-non-tasks)
- (org-tags-match-list-sublevels nil)
- (org-agenda-todo-ignore-scheduled bh/hide-scheduled-and-waiting-next-tasks)
- (org-agenda-todo-ignore-deadlines bh/hide-scheduled-and-waiting-next-tasks)))
- (tags "-REFILE/"
- ((org-agenda-overriding-header "Tasks to Archive")
- (org-agenda-skip-function 'bh/skip-non-archivable-tasks)
- (org-tags-match-list-sublevels nil))))
- nil))))
-
(defun bh/skip-non-archivable-tasks ()
"Skip trees that are not available for archiving"
(save-restriction
nihil fit ex nihilo