-
-
Notifications
You must be signed in to change notification settings - Fork 19
feats: a little bunch of them. see description. #19
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
going back to defvar.
also remove a useless line 'cursor-sensor...
overlapping blocks not handled yet.
this is customizable with custom variables: - `org-timeline-show-clocked` - `org-timeline-clocked-in-new-line`
customizable with: - `org-timeline-overlap` (a face) - `org-timeline-overlap-in-new-line` (a bool) there is a bug when clocks and several overlapping blocks happen for the same day.
if a block is currently happening, show its info. else, if there is a next one, show it. else, if there is a previous one, show the last one. finally, if no event today, show an empty info line, unless the timeline is completely empty.
customizable with:
- face `org-timeline-nearest-block`
- option `org-timeline-emphasize-nearest-block`
that defaults to nil.
next commit will also change the feature to only look for *next* event.
this also makes it only look for *next* event (see previous commit)
also separate `org-timeline--decorate-info`. also change name of former `org-timeline--clear-info`
this is customizable with `org-timeline-show-title-in-blocks' that defaults to nil.
it is unsupported by older versions of emacs and makes travis fail.
all implemented tests pass on my machine (doom emacs 27.1) except for the ones dealing with the 24h cycle.
things still need to be improved, see next commit about tests
the last 3 tests still don't pass even with the last commit, next commits should fix that.
|
Hi! I hope you're doing well. If you have a little time it would be nice if you could take a quick look at #22 and #23. Other than that I think I'm close to marking this PR as ready for review. I just need to fix 3 tests not passing out of 35, and do a review of the whole code myself. I know there will be unoptimized code and all, but this is my first project in elisp so I'm already happy it works well! And hopefully it can help other people. Thank you ! |
tests pass on emacs 27.1
|
I coded and passed all the tests in emacs 27.1. I'll mark is as ready for review, but I didn't review the whole code myself. |
bed35b6 to
5180cf1
Compare
marking older versions as optional for now, they all fail.
otherwise it overrides the default font-lock-face e.g. org-timeline-block
1936b67 to
b3ddaf4
Compare
Implements following improvements:
org-timeline-overlap-in-new-lineand faceorg-timeline-overlap.org-timeline-show-clockedandorg-timeline-dedicated-clocked-line.The next block is also emphasized with a specific face
org-timeline-next-block.org-timeline-emphasize-next-blockthat defaults to nil.If the item has property
TIMELINE_TEXT, display its value instead of the item's title.org-timeline-show-text-in-blocksthat defaults to nil.org-timeline-keep-elapsedof them.This customizable variable defaults to -1 which tells org-timeline to keep all the elapsed columns.
org-agenda-spanto 2 andorg-timeline-keep-elapsedto a positive value merges today and tomorrow's timelines into 1 (only if the agenda currently shows today and tomorrow).That way, you see a 24h cycle starting
org-timeline-keep-elapsedhours ago.org-timeline-start-hourto be 0. It will probably break (i.e. not show blocks that should appear) if you set this to a different value.jin the agenda and asking for yesterday to be shown.org-timeline-start-hourwhenorg-timeline-keep-elapsedis disabled (negative).org-timeline-insert-before-titlethat defaults to "\u275A".TIMELINE_DO_NOT_OVERLAPfor a task.Other changes:
org-timeline-beginning-of-day-hour.org-timeline--generate-timelinein a bunch of different functions that I tried my best to make independant.I have taken some inspiration from deopurkar's fork.
That's (not) the result (anymore):
