Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/larrasket/agenda-notifier.go
agenda-notifier.̶e̶l̶ go is a basic notification daemon for org-mode agenda,
https://github.com/larrasket/agenda-notifier.go
org-agenda org-mode
Last synced: 17 days ago
JSON representation
agenda-notifier.̶e̶l̶ go is a basic notification daemon for org-mode agenda,
- Host: GitHub
- URL: https://github.com/larrasket/agenda-notifier.go
- Owner: larrasket
- Archived: true
- Created: 2022-09-25T17:39:07.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2023-09-05T12:33:06.000Z (about 1 year ago)
- Last Synced: 2024-09-25T19:38:17.915Z (about 2 months ago)
- Topics: org-agenda, org-mode
- Language: Go
- Homepage:
- Size: 205 KB
- Stars: 5
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
---
agenda-notifier.̶e̶l̶ go is a basic notification daemon for org-mode agenda, a part of the free software text
editor GNU/Emacs.---
# Features
- Actually works.
- Emacs independent, so you will get notified even if Emacs is not running (it
runs its own process of Emacs).
- Reminder notification before an event.# Requirements
- The `notify-send` command. (preinstalled in most GNU/Linux distributions)
- It uses `kdialog` in the case of [KDE](https://kde.org/).# Installation
First [install Go](https://go.dev/doc/install). Then run:
go install github.com/larraskt/agenda-notifier.go/notifier@latest
Now `notifier` should be located at `$GOPATH/bin/` (Probably `$HOME/go/bin`).
# Usage
Auto start the `notifier` command with your system, there are many ways to do so, [this](https://wiki.archlinux.org/title/autostarting) page
could be useful.## Configuration
The configuration file should be found at `$HOME/.config/agn/config.yaml`, and
it is generated automatically.# Whether you are using Emacs or Doom Emacs[fn:3].
doom: true
# Emacs ~init.el~ or ~.emacs~ location.
emacsInitFile: /home/ghd/.doom.d/
# Scan interval (in seconds) for checking for changes in org-agenda
scanInt: 300
# Time (in minutes) before getting a reminder of an event.
beforeNotification: 30
# ~doomscript~ binary location, in case of doom.
doomScriptLoc: /home/ghd/.emacs.d/bin/doomscript# Why?
Because:
1. It is hard to maintain (sometimes, impossible1, 2) asynchronous code inside Emacs environment.
2. Debugging Elisp can be painful, compared to other languages. I tired to use
[spegoraro/org-alert](https://github.com/spegoraro/org-alert), [doppelc/org-notifications](https://github.com/doppelc/org-notifications), [akhramov/org-wild-notifier.el](https://github.com/akhramov/org-wild-notifier.el) and others
but I couldn’t get persistence with any, and I couldn’t also debug to tell what was the
problem. Actually I told myself then it would be easier to rewrite it rather
than debugging it, and here we go.# Screenshots
![img](examples/reminder.png)
![img](examples/imedite.png)
# Footnotes
1 Nothreading. EmacsWiki. Retrieved November 23, 2022, from
2 Elisp capability of using threads is often described as ’limited’.