`hydra-org-clock` thus only hosts keybindings for clock-related
commands, while the new `hydra-org-jump` is for jumping to Org items in
various ways. Feels cleaner to me this way.
This is to avoid jumping back to old task that are still pointed at by
`org-clock-interrupted-task` that have long been closed. Let's see
whether this is enough to handle this case.
This will allow to bind `db/org-add-link-to-other-item` with different initial
inputs to different keys to have often used selection directly at hand.
Setting the initial input is a bit tricky, though, because
`org-refile-get-location` does not allow to set it. Instead, we have to
temporarily overwrite `completing-read` with the corresponding parameter set
directly.
This is meant to mitigate an issue with table alignment when those tables are
results of source blocks, contain links in cells and are hidden (i.e., folded):
in those circumstances, the table alignment seems to be broken, because the cell
width does not take into account that links are shorter than their textual
representation.
I am not quite sure whether this is a bug in my configuration or a bug in Org
mode itself. The function to compute cell width is `org-string-width`, but
maybe this function does not get passed the correct input when tables are folded
and need to be aligned?
This seems to be fast enough, and since I often find myself aborting a current
backlink insertion query because I missed to include all Org mode buffers,
making it the default only seems to be reasonable.
When not provided in dynamic workload reports, `start-date` and `end-date`
should be treated as unconstrainted. However, instead dates were queried
interactively in that case, because `org-read-date` is being used to normalize
date display. Fixed that.
We must widen the current restriction when searching for the template item, not
when copying the body from it. In the latter case, `org-with-point-at` will
handle the necessary widening.
When the template associated with the item at point contains sub-items itself,
those may have been assigned ID or CUSTOM_ID properties. Copying the template
would thus duplicate these properties, violating their implicit uniqueness
constraint, so we now remove those properties from the inserted checklist
template.
When a checklist template contains headings on its own, the
`CHECKLIST_INSERTED_P` property until now would be inserted at the last heading
in this template, instead of at the heading where the template is supposed to be
inserted in the first place. Fixed this.
Displaying the current filters in the mode line alone often goes unnoticed for
me, so I need a more direct display. Let's add it to the first structural
header.
Mostly moving functions around and updating page headers. Also removed some
obsolete functions, see updated command list for `db-org` use-package
declaration.
When sorting, we need the remaining efforts as numbers, so let's return those
numbers directly instead of first converting them to durations only for them to
be converted back to numbers.
This is rather experimental, but seems to work fine so far. The most
complicated part is to compute the overall clocked time of an item.
Any clocktime modifiers like “today” or “total” are currently ignored.
Not quite sure yet whether this is really it, and maybe it would be better to
create some new utility functions to ensure enough blank lines before and after
point. But let's try it out first and fix it later.
This is a convenience shortcut. Maybe the code to insert the complete checklist
also needs to go into another function, for implementatio clarity. Do this as
soon as it seems appropriate or necessary.