* Re: Equivalent of timeline?
2019-06-28 13:22 Equivalent of timeline? James Harkins
@ 2019-06-28 22:45 ` Samuel Wales
2019-06-29 7:53 ` James Harkins
0 siblings, 1 reply; 3+ messages in thread
From: Samuel Wales @ 2019-06-28 22:45 UTC (permalink / raw)
To: James Harkins; +Cc: emacs-orgmode
i was going to code the following, and documented it first,
but cannot code it. maybe it
will be of smoe use in thinking about the problem.
i would use text search view, as follows.
i think it should be pretty small.
===
i think timeline (L) was retired from org because it
code-rotted as org developed new features, and it only
supported one file, which goes against org's sylvan (forest)
philosophy.
it occurred to me that text search could replace the
timeline agenda view. the search is for limiting. it is not to
search for timestamps. yet the whole thing shows every timestamp.
===
it would cover most features. it would not be limited to
one file unless you restrict the agenda. it would be
relatively fast. and you can limit by searching.
however, it would not provide the shifted (left/right) arrow
feature to change timestamps.
===
the thing is to show MULTIPLE timestamps as multiple lines
in text search view.
each has a text property that contains the timestamp that
generated it. then we show the timestamps in the agenda
prefix.
text search view will show multiple timestamps per entry as
one entry, which is not what we want.
so we have to work around that.
===
there is a variable that is pretty late in the agenda view.
it is intended for things like removing entries or modifying
entries before displaying. it can be used for sorting
purposes and so on.
but i suspect we can add entries.
this would be the key insight.
===
org-agenda-skip-additional-timestamps-same-entry seems to be
only for the timestamp agenda, which we would not use.
===
you can make it cover planning (c, d, s), active/event,
inactive, clocking, notes, and state changes timestamps.
(provided that you have set a variable to show inactive
timestamps -- this works but is a defvar -- and have log
mode enabled.)
however, it would not automatically generate instances of
repeaters that are not already existing. it also would not
automatically generate internal dates within ranges (i don't
know if it would catch the endpoints, as that depends on org
internals.)
those don't seem critical for a first pass. perhaps org
support could make it do those if it is really needed.
===
basically it looks like this as a custom command.
(";" "text search -- sorted by time" search "" ( ;; can put
date in a longer org-agenda-prefix-format ;; sort on the
org-supported text property timestamp ;;
(org-agenda-cmp-user-defined #'alpha-org-agenda-cmp--time)
(org-agenda-sorting-strategy '(user-defined-up))))
if you want to filter by a text search, you enter that; if
not, you enter . (or maybe nothing) to show all.
filtering allows you to answer questions like "when were all
the times i mentioned "org-mode?" "which was the first time
i mentioned 'org-mode' that is significant?" which seems
more useful than a huge slow list of every timestamp in your
agenda and agenda text search extra files.
===
fwiw
^ permalink raw reply [flat|nested] 3+ messages in thread