to me, the concepts of the log mode feature and the showing inactive tses feature are so close that they are worth merging into the same functionality, parameterized if needed [not needed for me].
in my own case, i basically want all [log mode and inactive tses] off or all on. years ago, i implemented a toggle, using log mode as the toggle. i made lots of notes, but the notes might not be comprehensible to anybody.
i also wanted certain information to show or not show regarding state changes.
the code is trivial. it merely toggles inactive when you toggle log mode.
;; [[id:26806393-dca3-43a6-a92d-d8985d32f4bd][COMMENT issues with my inactive thing -- need to have v L still respect inactive, but pre-empt when state change]]
;;
;; if i want to see state changes i have to do v L, but inactive
;; disappears. so i need to do l twice to fix it, but that
;; deletes state changes
;;
;; currently implemented options are state changes but no
;; inactive, state changes with redundant inactive, and only
;; inactive.
;;
;; i want inactive preempted by state change. but don't care
;; much if i can just get inactive, which i do.
;;
;; =later this might or might not be analogous to closed being
;; tagged ts and thus correctly not tsia.
;;l or v l is for log mode: closed (doneish), clock, and state if
;;you set that.
;;
;;what about notes?
;;
;; too confusing to have two levels of log mode unless i really
;; want to always show something (like closed deadline) and
;; toggle showing all. which i don't really need. i prefer all
;; or none i think.
;;
;;super log mode (/logall/ log all) c-u l or v L is particularly
;;useful as it includes state changes with fewer bugs than [ (but
;;still not yet other inactive timestamps).
;;
;; maybe i can use the intermediate sort thing -- the thing sacha
;; used and that i use to sort or set scores or something -- to
;; eliminate duplicates after setting logall and also using my
;; inactive. [2016-04-07 Thu 20:37] org-agenda-before-sorting-filter-function ka
;;
;; try setting org-agenda-log-mode-items to allow state and find
;; out what gets duplicated. i think it is just that it shows as
;; a bare inactive timetamp and as a state change.
;;
;; [ is different from log mode.
;;
;; [ provides nothing with my current setup which shows inactive
;; timestamps without duplicates.
;;
;;there are bugs with [
;; [ with no log mode loses information
;; repeater state is just nextrepeat
;; [ resets upon navigation while l does not
;; you can't make it persist or start up with it
;; log mode (if you include state change) gets duplicated
;; it finds the inactive timestamp?
;; but only for state changes, not all? =could check
;; active timestamps including deadline and scheduled do not show
;; presumably this is ok because will be elsewhere
;; =later this needs detail
;;
;;adding state to org-agenda-log-mode-items makes l and log
;;mode at startup do the same thing as logall = c-u l or v L.
;;
;; state in org-agenda-log-mode-items duplicates inactive
;; (presumably because inactive does not exclude it). it is sort
;; of useful. i'd like bangification or todo kw. if needed i
;; can use logall (c-u l or v L).
;;
;; =later i think i implemented bangification for ts agenda, with
;; slightly different semantics from bangification for search
;; agenda. because more useful not to bangify known d s or so.
;;
;; /log mode does not show inactive timestamps/ ka.
;; to me, the concepts are similar enough that they should be
;; merged into the same mechanism. i do that here. also [ is
;; conflated between two unrelated features.
;;
;;the default of org-agenda-log-mode-items is closed and clock
;;which is good. that leaves out inactive, but i have a solution
;;for that. but perhaps i can do state and filter it.
;; [2016-04-26 Tue 11:05] sometimes it duplicates my inactive
'(with-eval-after-load 'org-agenda
(add-to-list 'org-agenda-log-mode-items 'state))
;;
;;this is a good solution, but it is a defvar not defcustom. it
;;might exclude the ts in the closed ts. which is good in this
;;case because we show closed in org-agenda-log-mode-items. and
;;that shows them in a closed face with closed leader.
;;
;; this is problematic when org-agenda-start-with-log-mode is
;; nil. we want it nil then. and then (as i have it) toggle it
;; on when doing log mode.
;; [2018-12-10 Mon 19:31] turning off because i have start with log mode off
;; (setq org-agenda-include-inactive-timestamps nil)
;; (setq org-agenda-include-inactive-timestamps t)
;;this way i can see what i did so far in the day and remind me
;;of good or bad things i did.
;; l toggles
;; [2018-11-24 Sat 15:53] trying without it to not clutter
;; (setq org-agenda-start-with-log-mode nil)
;; (setq org-agenda-start-with-log-mode t)
;; (defadvice org-agenda-log-mode
;; (around toggle-off-inactive-also activate compile)
;; (let ((org-agenda-include-inactive-timestamps t)
;; ad-do-it))
;; fixme maybe i need this on org agenda
;; (defadvice org-agenda
(defadvice org-agenda-log-mode
(around toggle-off-inactive-also activate compile)
;; make log mode toggle inactive in addition to closed.
;;
;; alternative is file bug report on toggling log
;; but have to justify that inactive should be in log
;; etc.
;;
;; org-agenda-include-inactive-timestamps is a defvar.
;; this was let but i think setq works better. not sure that
;; try with org-agenda-start-with-log-mode is relevant.
;;
;; if
;; e-jinsei 12:00 Event: MOOT supplements yet? nose spray yet?
;; shows up even when off
;; but in event face not doneish
;; event overrides doneish
;; /not a bug/
;; it is the happy feeling setting
;; might be useful for ranges
;; (setq org-agenda-skip-timestamp-if-done t)
;; (setq org-agenda-skip-timestamp-if-done nil)
;;
;; fixme setq-local
;; fixme do we need to toggle some of org-agenda-skip-*-if-done or similar?
;; no, need to fix org bug that changes log mode ka
;; fixme shouldn't this be orthogonal to status of log mode?
(setq org-agenda-include-inactive-timestamps
;; old note: my solution for inactive might get turned
;; off by v L. perhaps i need to inspect this variable
;; more. =later maybe this is fixed?
;; v l does just this command
;; v L does it with one prefix arg, meaning
;; show all possible log items, not only the ones
;; configured in ‘org-agenda-log-mode-items’. --
;; (?l (call-interactively 'org-agenda-log-mode))
;; (?L (org-agenda-log-mode '(4)))
;; so theoretically showing all would also add anything i
;; don't have in org-agenda-log-mode-items. currently
;; that is state.
;; the sense of this is reversed becuse ad-do-it toggles
;; org-agenda-show-log by design.
(not org-agenda-show-log))
ad-do-it)
On Wednesday, April 10, 2024, Ihor Radchenko <yantar92@posteo.net> wrote:
Russell Adams <RLAdams@adamsinfoserv.com> writes:
> I pull up a file in 'emacs -Q'.
>
> M-x org-agenda 1 a (restricted to current file, create agenda view).
> Now viewing the weekly agenda in buffer *Org Agenda*.
> Press "L" to enable logbook.
> Press "[" to enable inactive timestamps.
>
> I now see the full week with log and timestamps.
>
> Press "b" to go back one week.
>
> I now see last week's agenda. Logbook mode is still enabled. Inactive
> timestamps are missing.
>
> Pressing "[" will enable inactive timestamps again.
Ok. I can see what is happening.
Unlike agenda log-mode, where L toggles the mode on/off, the inactive
timestamps are not toggled; they can only be enabled and re-enable
manually when the agenda view is refreshed.
This is consistent with the documentation:
‘v [’ or short ‘[’ (‘org-agenda-manipulate-query-add’)
Include inactive timestamps into the current view. Only for
weekly/daily agenda.
Note how there no word "toggle" in the manual. It explicitly refers to
the "current view".
I am not sure why it is done this way and I cannot see any explanations
in the git logs.
I do not see why it should not be possible to make inactive timestamp
display into a toggle.
Patches welcome. It is an easy patch.
--
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>
--
The Kafka Pandemic
A blog about science, health, human rights, and misopathy: https://thekafkapandemic.blogspot.com