Org Yaap
#emacs#org
Table of Contents
Yet Another Alert Package for Org.
Other alert packages are available already, like
So why build a new one?
Motivation
Same emacs process
The other solutions use an asynchronous emacs process in order to process org files without disrupting the user. However, this also means that any unsaved buffers will not be recognized by the background process.
I want the agenda function which collects the alerts to also be
running in the same instance of emacs as I am. I use
run-with-idle-timer
instead to try to process the agenda while
the user is not typing.
Android support
Notifications should run on termux and when clicked, should direct the user back to the headline.
Clock in / out
I want a persistent notification for clock in and clock out events which will always show what I'm working on and how long I've been working on it.
Daily events
I want a way to alert for events without a time set.
Overdue alerts
When I miss an alert, I would like to set up reminders or an interval for overdue alerts.
Not using alert package from MELPA
I would like to add this package to ELPA eventually.
Installation
Org yaap can be installed from straight:
(use-package org-yaap :straight (org-yaap :type git :host gitlab :repo "tygrdev/org-yaap") :config (org-yaap-mode 1))
Termux on android
For termux to work on android, the termux-api
package must be
installed:
pkg install termux-api
And allow-external-apps
must be set to true in
~/.termux/termux.properties
allow-external-apps = true
I want emacs running in the background on start, so I'll install
the termux:boot plugin from the app store and add a file
~/.termux/boot/emacs-daemon.sh
termux-wake-lock emacs -daemon
In order to connect to the daemon, emacsclient can be used. I had
to specify the path to the socket file directly, which should be in
the /data/data/com.termux/files/usr/var/run
folder. I added an
alias to the .bash_profile
file to set this up:
alias e="emacsclient -nw -s /data/data/com.termux/files/usr/var/run/emacs10473/server -a \"\""
Now, emacs will run on boot and I can enter emacs by typing e
.
Usage
By default, a notification will appear for all scheduled and
deadlined items within the agenda files. Marking an item as DONE
will prevent a notification. If an item only has the date and no
time specified, the notification will appear at 9am. If not marked
DONE
, a notification will be sent every 30 minutes after it was
marked due.
All of the available options are listed on the project website.