| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I merged `chime-time-left-format-at-event', `chime-time-left-format-short',
and `chime-time-left-format-long' into a single alist `chime-time-left-formats'
keyed by `at-event' / `short' / `long'. Three knobs for one feature
(countdown display) was unnecessary surface area; one alist is the same
flexibility with a third the namespace.
`chime--time-left' switched from a pcase-on-variable to a pcase-on-regime
that picks an alist key, then `alist-get's the format string. Behavior
is identical for default settings.
Test setup in the four affected files now builds the alist with `(list
(cons 'KEY VAL) ...)' instead of `'(...)'. The literal-quote form
returns the SAME cons-cell structure on every evaluation, so a previous
test mutating it via `setf' on `alist-get' poisoned later tests. `list'
+ `cons' produces fresh structure per call, which is what the tests
actually need.
Migration: `(setq chime-time-left-format-short "in %mm")' becomes
`(setf (alist-get 'short chime-time-left-formats) "in %mm")', or a
full `(setq chime-time-left-formats '((at-event . ...) (short . ...)
(long . ...)))' replacement.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
`chime-play-sound' was redundant with `chime-sound-file' — both had to be
truthy for sound to play, and `chime-sound-file' already documented "set
to nil to disable sound completely". Two knobs for one decision is a
trap.
I removed the defcustom and the `(when chime-play-sound ...)' guard in
`chime--notify' (it now just checks `chime-sound-file'). Tests, README
quick-start, and the troubleshooting checklist all reference the new
single-knob form. One redundant test (sound-disabled-via-the-toggle)
got dropped because it now duplicates the sound-file-nil case.
Breaking change: users with `(setq chime-play-sound nil)' in their
config will get a void-variable warning at customize time and lose
their disable. Migration: `(setq chime-sound-file nil)'.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I worked through the package-lint backlog and got it to zero. Five changes:
1. Renamed six interactive debug commands from the private `chime--debug-*'
prefix to the public `chime-debug-*' form. They were always M-x targets,
so the private prefix was just wrong. The autoload cookies stay because
public commands SHOULD be autoloaded. README, docstring references in
chime.el, and the matching tests follow the rename.
2. Dropped `Version', `Package-Requires', and `Keywords' headers from
chime-org-contacts.el. Auxiliary files in a multi-file package shouldn't
carry their own metadata — package-lint flags it as an error because the
headers have no effect outside the main file. The main file (chime.el)
already declares the chime package's metadata.
3. Dropped `Keywords' from chime-debug.el for the same reason.
4. Dropped the auto-loader for the optional chime-org-contacts integration
from chime.el. The old code used `with-eval-after-load 'org-capture' to
pull the file in, which package-lint flags as a configuration pattern
that doesn't belong in a package. Users who want the integration now
require it themselves; the README shows both the plain `with-eval-after-load'
pattern and the `use-package :after' form. chime-org-contacts.el's
internal `with-eval-after-load' went away too — by the time the user has
required the file, they've already gated it on org-capture being loaded,
so the inner check is redundant.
5. Dropped the redundant `with-eval-after-load' from chime-org-contacts.el's
activation block. The setup function still guards on
`(boundp 'org-capture-templates)' so it's safe to require either order.
Behavioral note: this is a small breaking change for anyone whose config
relied on the auto-load. The README change spells out the migration path.
|
| |
|
|
|
|
|
| |
Fill out the custom-predicate-filtering section with the two motivating
examples from the surrounding prose (specific-file whitelist, weekend
work silencer) plus a priority-A whitelist, and tighten the defensive
handling of buffer-file-name for indirect buffers.
|
| |
|
|
|
|
|
|
| |
Rewrote Quick Start to show minimal config (just chime-mode 1) with
defaults overview and modeline interaction guide. Expanded manual
install with git clone steps. Fixed TOC nav links, made tag filter
examples consistent, added custom predicate motivation, removed
redundant Basic Event subsection.
|
| |
|
|
|
|
|
| |
Add Douglas Adams epigraph, funny event names throughout, voice in
installation and history sections. Consolidate org-contacts into new
Integrations section with org-gcal guide. Trim verbose all-day events
interaction examples. Add severity, sound format, and icon docs.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Remove About section (merged into intro)
- Rename Credits to History, fold Migration under it
- Fold Manual Check and Known Limitations under Usage
- Fold Full Example Configuration under Configuration
- Add straight.el and quelpa install methods
- Move requirements into Installation with auto-deps note
- Add notification daemon check to troubleshooting
- Add Development subsection with clone/lint/issues info
- Add LICENSE file (GPL-3.0)
- Update nav bar to match new structure
- Fix startup integration test for new modeline error state
|
| |
|
|
|
| |
Replace vertical table of contents with horizontal section links
matching wttrin README style. Add Made for GNU Emacs badge.
|
| |
|
|
|
|
| |
The bell emoji lighter was redundant alongside the alarm clock
event display in global-mode-string. One icon is enough. Users
who want a separate mode indicator can set chime-modeline-lighter.
|
| |
|
|
|
|
|
|
|
|
| |
Bump chime-modeline-lookahead-minutes from 60 to 120 so events
within the next 2 hours show in the modeline. The old 60-minute
default hid events most users would expect to see.
Add (0 . high) to default chime-alert-intervals so users get a
notification at event time in addition to 10 minutes before.
The single-notification default meant a missed alert had no backup.
|
| |
|
|
|
|
|
|
| |
Remove promotional language (pleasant, extensive, comprehensive),
flatten rule-of-three constructions, replace "interplay" heading,
simplify tactical/strategic framing, drop redundant blacklist
justification. Fix "begain" typo in credits. Trim duplicated
Testing/Development pointers.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fix stale content:
- Tooltip lookahead default: 8760 hours -> 168 (1 week)
- Test count: 505 -> 600+
- Emacs version: 26.1+ -> 27.1+ (matches Package-Requires)
- Troubleshooting: fix stale convert-contacts-to-file reference to
match current in-place conversion workflow
Add missing documentation:
- Custom predicate filtering with examples
- chime-max-consecutive-failures, chime-validation-max-retries
- chime-extra-alert-plist, chime-additional-environment-regexes
- chime-refresh-modeline command
- Debug mode section in Troubleshooting with all diagnostic commands
|
| | |
|
| |
|
|
|
| |
Replace markdown-style **bold** with org-mode *bold* for correct
rendering on GitHub.
|
| |
|
|
|
|
|
|
|
| |
Fix backronym to "CHIME Heralds Imminent Modeline Events" across all
files. Update GitHub URLs from chime.el to chime. Add documentation
for missing customization variables (notification icon, startup delay,
modeline lighter, no-events text, tooltip header format, advance
notice, tooltip all-day events). Fix test count (505) and default
for chime-day-wide-alert-times.
|
| |
|