This package allows you to postpone a scheduled entry, hiding it from the agenda buffer for today. It is especially useful for habits with minimum and maximum ranges.
Once you installed it, you can invoke
command (bound to
k by default) in the agenda buffer to hide the selected
task. Note that it won’t be rescheduled (it’s only hidden from the agenda view),
so tomorrow it will appear again as normal. Thus the idea is that if you have a
number of habits or other scheduled tasks, you can hide the ones you don’t feel
like doing today so they won’t clutter your agenda view. Why do it today if you
can leave it for tomorrow?
This package is available on MELPA; you can install it via
M-x package-install org-postpone RET
Alternatively, you can download the file and install it manually via
package-install-file or just evaluate the file’s contents.
After you’ve installed the package, you need to add
org-postpone-skip-if-postponed to the list of skip funcitons for your agenda view. For example, you might add something like this to your config:
(setq org-agenda-custom-commands '(("x" "Tasks for today" ((agenda "" ((org-agenda-ndays 1)))) (; maybe more settings here (org-agenda-skip-function '(org-postpone-skip-if-postponed)))) ; <-- add this ;; other agenda commands here... ))
To customize the keybinding, use this snippet:
(org-defkey org-agenda-mode-map "k" 'org-postpone-entry-until-tomorrow)