I'm working on moving my build setup to my own laminar[1] instance. To do this I
need to be able to package files up. It appears that I couldn't quite get Cask
to work, and Eldev exists in the Guix[2] package repository.
[1]: https://laminar.ryuslash.org/
[2]: https://guix.gnu.org/
Instead of adding a lot of tags and adding a lot of agendas filtering on them
I'm experimenting with using org-edna to make certain contexts a dependency of a
task to filter them out of my todo list.
Current contexts I'm experimenting with are:
- ‘day-of-week?’ to filter out tasks that I can only do on certain days.
- ‘night-time?’ to filter out anything that I can't do in the evening. Usually
having to do with contacting others.
- ‘business-hours?’ to filter out anything that is outside of a certain
timezone's “business hours”, defined by me as anywhere between 9am and 6pm.
Instead specify a width for the column and shrink the table. This way it still
gets truncated, but it can be expanded and the whole text is in the column.
These function help me make sure that I'm properly going through both files. The
command ‘oni-org-run-through-inbox’ will first dump any items in the tickler
file that are relevant for today and then it goes through each item in my inbox
and asks me to take an action on them.
This helps me both go through my inbox more easily, but also helps me keep track
of the items in my tickler file, which has been something I keep forgetting to
look at.
The ‘oni-org-dump-tickler’ command should be idempotent, so calling it multiple
times per day shouldn't mess with the different dates in the file. If it
discovers that the current day isn't the same as today it keeps going through
the tickler file, dumping any tasks it finds into the inbox, until it finds the
right day number. It's not aware of any of the months, so it'll happily move to
the next month if your tickler file is in the wrong state. Also if your tickler
file hasn't been updated in more than a month it also doesn't understand that it
needs to keep going and will keep presenting you with old tasks.
Automatically generated colors for todo keywords and tags using an MD5 hash will
produce a completely random color, frequently not fitting well at all within my
chosen color theme. Using the LCh color space and keeping the L(uminance) and
C(hroma) constant will produce colors that fit together much metter, and the
values have been picked to work well with ‘yoshi-theme’.
This change was inspired by “Arbitrary Beautiful Colors”[1].
[1]: https://khanlou.com/2023/02/arbitrary-beautiful-colors/
- ‘oni-org-increment-property’: A generic command that increments a numeric org
property
- ‘oni-org-pomodoro-add-note’: A command that adds a note to the org item
logbook that states a pomodoro was completed.
- ‘oni-org-pomodoro-times’: A function that parses an org item logbook to figure
out at what times a pomodoro had been completed for that particular task.
- ‘oni-org-pomodoro-times-for-date’: A function that finds the times a pomodoro
has been marked as completed for a specified date.
- ‘oni-org-archive-old-tasks’: Unrelated to the other functions, just a command
that archives all of the tasks that have been closed in the previous month.
[1]: https://francescocirillo.com/products/book-the-pomodoro-technique
This is meant to be used as a daily overview of the Pomodoro's that I've gone
through during the day. Should be put in my journal. For that reason, and
because I haven't figured out how to make it idempotent on days that aren't
today, I've added an exclusion of ‘journal.org’ to the
‘oni-org-update-all-dblocks-live’ function.
This commit fixes the issue that project tasks found in the archive of the org
file can't be accessed through the link that's been generated. This fixes that.
I've removed the hierarchy from my tags, so now I need to see any for the tag of
the current host name, any computer, and any emacs tasks that have a state of
TODO.
I don't want to set it up to always use an ID just yet because I'm not sure how
well that will work with programs like Orgzly and Orgro which don't support
using ID.
I tried it, and I just didn't like it. It looks alright, but alignment is
difficult, and even though faces are set up to be fixed-pitch they still end up
rendering as variable-pitch. During startup my org file also loads too early and
doesn't get the right font set. It just doesn't really add enough.
Before, because of the use of ‘org-cut-subtree’, which in turn calls
‘kill-region’, which checks to see if ‘last-command’ equals ‘kill-region’ and
uses either ‘kill-append’ or ‘kill-new’ repeated uses of the
‘oni-org-move-subtree’ command would append cut subtrees together and repeatedly
paste the same subtrees over and over again.
Setting ‘this-command’ will make sure that when the ‘kill-region’ checks the
value of ‘last-command’ it won't find ‘kill-region’ there.
‘rx’ should expand to what is needed to make sure that the right thing is done.
I feel more comfortable using this than ‘rx-to-string’ while unquoting the
variables I use.
These two functions do essentially the same thing, but in different directions.
This can also be done with one single interactive function. This way there is
only one thing to call.
This is similar to my backlinks dynamic block, but it supports links by id and
will print them as a checkbox so that the project can track progress by using
the progress cookies.
Since I'm trying out the Pomodoro technique I want to be able to see at how many
pomodoro's I've estimated something so that I can choose what to do next.
When a capture template is set up to clock in as I'm capturing it, this function
would immediately change the state of the item to WIP (or whichever next status
there was), but even though I'm spending time on the ticket at that point it's
not in progress yet.