I have just finished my first elisp package elcontext. It introduces context based actions for Emacs.
Context based actions
A context-based action is an Emacs command called under certain conditions. These conditions can include the current time (similar to a cron job), the current folder and the current GPS location (available only for macOS).
My use case
The original reason to create elcontext was to setup my development environment depending on my current location (e.g. workplace, home). I use prodigy to define services I need and elcontext starts them.
A new context is created interactively by using abo-abo’s fantastic hydra package:
If a part of a context is omitted this part is always valid e.g. no location means anywhere, no time means anytime. Each command is triggered once a day.
I used Emacs’ Tabulated List mode to get an overview of all created contexts. Triggered contexts are highlighted in green:
I am proud I finished my first Emacs package and happy to share it with you. If you consider elcontext helpful I would be pleased to hear about your use cases.