nagcat
A helpful cat which nags you from the tmux statusbar... because she loves you! (Cat name and pronoun can be customized.)
nagcat doesn't actively notify you at a specific time. If a reminder is set for 9 in the morning, she might not notice for a while; so it's not an alarm clock! nagcat will put a little =u.u= in the statusbar sometime after your reminder is set to trigger, as a friendly nag! :)
Use nagcat pet to dismiss the reminder. For a reminder of what the reminder is, say nagcat why 🐈
Written with pure Python 3.8+ for Linux or WSL, although it probably works anywhere with modern versions of Python, Bash, and tmux. Please submit an issue or pull request if you have any problems or suggestions for improvement.
Quick overview
- By default, nagcat will return
=^.^=if you have no reminders pending - By default, nagcat will return
=u.u=if you should drink water, after 14:00, until younagcat pether - Reminders are stored in a simple JSON file editable with
nagcat config - Try
nagcat -hfor a full list of "commands" (nagcat likes to think of them as "suggestions") - Easily customize nagcat's name, pronoun, and appearance -- see
nagcat config -h - To remove cat theming:
nagcat config -face '' -alert [\!]
Installation
-
pip install nagcatto get the latest stable version from PyPI -
Use nagcat manually by running
nagcatfrom a terminal -
To put nagcat output in tmux statusbar:
- Add
run-shell nagcat.tmuxto the bottom of.tmux.conf - Add
#{nagcat}to your tmuxstatus-rightorstatus-left
- Add
Example setup
~/.config/nagcat/reminders.json (safely edit with nagcat config)
{
"09:00": "Time for breakfast",
"14:00": "You should drink water",
}
nagcat currently only supports 24-hour time and daily reminders.
~/.tmux.conf (nagcat and nagcat.tmux must be on $PATH)
set -g status-right '#{nagcat}'
run-shell nagcat.tmux
Updating
-
pip install --upgrade nagcatshould be sufficient! -
If something goes wrong, try a "factory reset":
nagcat config --reset
Metadata
Release files for nagcat 1.0.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| nagcat-1.0.0.tar.gz | 8.4 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| nagcat-1.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 18.0 kB
Release files / nagcat-1.0.0.tar.gz
| Download URL | nagcat-1.0.0.tar.gz |
|---|---|
| Size | 8.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c2f64bfe7373f52f9d52d95130c4bf32a021127c7efff0b9895e3378a392ec3a
|
|
BLAKE2b-256 checksum How to use checksums |
987863d735068d00ce37c48532ed868e723011d02c5464860233d0f73e9fb641
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.10.4
|
Release files / nagcat-1.0.0-py3-none-any.whl
| Download URL | nagcat-1.0.0-py3-none-any.whl |
|---|---|
| Size | 9.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
7d60580c4a532c26fd4925a4e3215204a08853df413311a815513f6476a978bf
|
|
BLAKE2b-256 checksum How to use checksums |
69a48a3f5526f7640f46eee7ee3a74542fbc28b1620527e636d9add54fefb71c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.0 CPython/3.10.4
|
Security for nagcat 1.0.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.