emacs-orgmode@gnu.org archives
 help / color / mirror / code / Atom feed
* Equivalent of timeline?
@ 2019-06-28 13:22 James Harkins
  2019-06-28 22:45 ` Samuel Wales
  0 siblings, 1 reply; 3+ messages in thread
From: James Harkins @ 2019-06-28 13:22 UTC (permalink / raw)
  To: emacs-orgmode

I recently had to make a document listing my professional activities (lectures and performances). Items are dated.

I would like to see an overview of them, sorted by date.

In the past I would have used a Timeline agenda for this, but that's no longer possible.

https://www.reddit.com/r/orgmode/comments/7hps9j/rip_orgtimeline/ provides a custom agenda command that is supposed(?) to mimic the old timeline, but it didn't.

So how does one do it?

hjh

^ permalink raw reply	[flat|nested] 3+ messages in thread

* 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

* Re: Equivalent of timeline?
  2019-06-28 22:45 ` Samuel Wales
@ 2019-06-29  7:53   ` James Harkins
  0 siblings, 0 replies; 3+ messages in thread
From: James Harkins @ 2019-06-29  7:53 UTC (permalink / raw)
  To: Samuel Wales; +Cc: emacs-orgmode

On June 29, 2019 06:45:51 Samuel Wales <samologist@gmail.com> wrote:

> 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.

Sure, those are good tips. Much appreciated! I don't mind taking it from 
there (though I probably can't do it quickly). I think my need in this case 
is simpler than yours -- I won't have multiple timestamps per outline node.

> 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.

Sure -- features get dropped for legitimate reasons, but that always causes 
some user pain, too. Might have been nice to document an alternative rather 
than just making it a lot harder. (I don't really care if it's specifically 
"timeline" or something else, but I also don't think it should require a 
dive into the API to do something that had been easy.)

hjh

Sent with AquaMail for Android
https://www.mobisystems.com/aqua-mail

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2019-06-29  7:54 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-28 13:22 Equivalent of timeline? James Harkins
2019-06-28 22:45 ` Samuel Wales
2019-06-29  7:53   ` James Harkins

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).