diff options
| author | Craig Jennings <c@cjennings.net> | 2026-04-28 14:30:41 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-04-28 14:30:41 -0500 |
| commit | 08cd3a12730d26cfc2eae8510da132747643da9e (patch) | |
| tree | 8af113923242ec042ceefc8d850ce37dd1a7c7d6 /tests/fixtures | |
| parent | 4cd1e8e63d885d8de2728dc76d4f35f0eb597037 (diff) | |
| download | gloss-08cd3a12730d26cfc2eae8510da132747643da9e.tar.gz gloss-08cd3a12730d26cfc2eae8510da132747643da9e.zip | |
feat: implement gloss-core data layer
Public API: gloss-core-lookup, gloss-core-save, gloss-core-list, gloss-core-find-buffer-position. Save inserts entries at the alphabetical position (case-insensitive compare), creates the file and parent directory on first call, prompts on collision via completing-read over Replace/Append/Cancel, and updates the in-memory cache directly.
Lookup checks gloss-file's mtime against the cached load time. If disk is newer than the buffer, it reverts the buffer first. Out-of-band edits land on the next read. Parser failures during reload preserve the existing cache and surface a one-line message.
Tested by the 32-test suite from the previous commit. All 32 pass in 0.16 seconds.
The defgroup and defcustoms (gloss-file, gloss-debug) live here rather than in gloss.el. That keeps the data layer self-contained when tests load it directly without the orchestration layer.
Diffstat (limited to 'tests/fixtures')
0 files changed, 0 insertions, 0 deletions
