I have found Leaf [1] to be a simple and plain spaced repetition program. It has very few features compared to Anki.
It does not have a large ecosystem of stack sharing, it's mostly aimed for those who write their own decks. You can compile it to a static binary and be sure that the decks you create work for a long time.
SimpleTask Cloudless has been my favourite todo.txt app for Android. Unfortunately, SimpleTask is in low maintenance mode [1], and does not work well in my setup.
According to mpcjanssen: "The suspending of the applications by Google #1102 and the continuously fixing breakage by Android API changes have reduced my Simpletask motivation to a very low level." [1].
I'm not sure it's even in maintenance mode at this point. I wish I had the skills to maintain it as I quite like SimpleTask and may, even if unsupported, go back to it. Nothing compares on Android.
Based on the man page, calendar(3) would not suit my use well. It's quite different from calendar.txt. But I'm happy to hear that you use it.
I installed it just to read the man page: """
LANG=C
Easter=Ostern
#include <calendar.usholiday>
#include <calendar.birthday>
6/15\tJune 15 (if ambiguous, will default to month/day).
Jun. 15\tJune 15.
15 June\tJune 15.
Thursday\tEvery Thursday.
June\tEvery June 1st.
15 *\t15th of every month.
May Sun+2\tsecond Sunday in May (Muttertag)
04/SunLast\tlast Sunday in April,
\tsummer time in Europe
Easter\tEaster
Ostern-2\tGood Friday (2 days before Easter)
Paskha\tOrthodox Easter
Very recently, I tried using a combination of nail(1), and calendar(1) on OpenBSD as an email and calendaring combination for home use. "nail" is provided by the OpenBSD s-nail package and provides an extended POSIX mailx style environment. calendar(1) is part of the base OpenBSD distribution.
It worked far better than expected. The only thing missed was age calculations for birthdays. I never figured that out. Using the Emacs Diary provided that sort of thing though.
I've since moved to KDE Kontact for mail/calendaring. It works more smoothly if you do a lot of calendar sharing with others, but I could see going back to nail(1)/calendar(1) if Kontact disappoints.
With some traditional GUI calendar software, I was often hunting and miscopying week numbers. Some software also had a weird (non ISO-8601) idea of week numbers.
In case you need calendar.txt after 2033, I wrote a small tool [2] to generate more templates.
Static binaries generated by Go are indeed large, even if the source code here is under 30 lines with support to some additional minor features (US and Finnish day names, command line help, optional week headings, day counts and parameter handling).
Here are some more scripts to generate calendar.txt date format:
I use syncthing for notes across iOS and macOS devices and I wouldn't say it's great. It works most of the time until it doesn't, until one client all of a sudden stops syncing and then you gotta figure out where it's hanging. Couple of days ago it was the macOS syncthing app. Just wouldn't start, wouldn't show an error. Usually it's the iOS helper app "Möbius Sync" not actually syncing in the background. It's annoying but still better than using a cloud provider.
Note that work on the official android app is discontinued
https://github.com/syncthing/syncthing-android
---
"Discontinued
This app is discontinued. The last release on Github and F-Droid will happen with the December 2024 Syncthing version."
It's unfair to computers how well paper planners worked. Among with todo.txt, paper calendars were an inspiration and a benchmark for writing calendar.txt.
As you guessed, roland35, I do track my calendar.txt in git.
One main benefit from git is also to work as an insurance against (user) errors, and make the whole process much more transparent. When I have used calendars with automatic synchronization, I would have enjoyed a "change log" to make sure that my timezones and meetings are not mistakenly modified by software.
For your dentist example, I would probably just use 'grep' or find in my text editor. After all, six months of days is very little text.
I wonder why 'sudo unattended-upgrade -v' does not do an unattended upgrade when run.
ps. Thanks for linking my article, speckx.