diff options
author | Kyle Meyer <kyle@kyleam.com> | 2016-02-20 19:00:02 -0500 |
---|---|---|
committer | Kyle Meyer <kyle@kyleam.com> | 2016-02-20 19:00:02 -0500 |
commit | 627fb5c27515ea0b1950251475550fe175b8ca00 (patch) | |
tree | d6254dedc084a28748ecfa34df1c07d475b2976e | |
parent | 623e08bff325ae968c585fd0e64ae45610007a28 (diff) | |
download | emacs.d-627fb5c27515ea0b1950251475550fe175b8ca00.tar.gz |
org-agenda: Add bulk command for deletion
-rw-r--r-- | init.el | 5 | ||||
-rw-r--r-- | lisp/km-org.el | 10 |
2 files changed, 14 insertions, 1 deletions
@@ -313,7 +313,10 @@ (setq km/org-agenda-file-directory "~/notes/agenda/" org-agenda-files (list km/org-agenda-file-directory)) (add-hook 'org-agenda-finalize-hook #'km/org-agenda-cd-and-read-dir-locals) - (add-hook 'org-agenda-finalize-hook #'km/org-agenda-store-current-span)) + (add-hook 'org-agenda-finalize-hook #'km/org-agenda-store-current-span) + + (add-to-list 'org-agenda-bulk-custom-functions + '(?D km/org-agenda-delete-subtree))) (after 'ox-md (advice-add 'org-md-paragraph :filter-return #'km/org-md-fill-string)) :config diff --git a/lisp/km-org.el b/lisp/km-org.el index 49fa76f..74f7eb7 100644 --- a/lisp/km-org.el +++ b/lisp/km-org.el @@ -360,6 +360,16 @@ displayed in the agenda." (org-agenda-text-search-extra-files :maxlevel . 3)))) (org-refile '(4)))) +(defun km/org-delete-subtree () + (org-back-to-heading t) + (delete-region + (point) + (org-element-property :end (org-element-at-point)))) + +(defun km/org-agenda-delete-subtree () + (interactive) + (org-agenda-archive-with #'km/org-delete-subtree)) + ;;; Refiling |