<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gloss/gloss.el, branch main</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>https://git.cjennings.net/gloss/atom?h=main</id>
<link rel='self' href='https://git.cjennings.net/gloss/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/gloss/'/>
<updated>2026-04-28T19:30:41+00:00</updated>
<entry>
<title>feat: implement gloss-core data layer</title>
<updated>2026-04-28T19:30:41+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-28T19:30:41+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/gloss/commit/?id=08cd3a12730d26cfc2eae8510da132747643da9e'/>
<id>urn:sha1:08cd3a12730d26cfc2eae8510da132747643da9e</id>
<content type='text'>
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.
</content>
</entry>
<entry>
<title>chore: scaffold gloss package</title>
<updated>2026-04-28T18:56:06+00:00</updated>
<author>
<name>Craig Jennings</name>
<email>c@cjennings.net</email>
</author>
<published>2026-04-28T18:56:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cjennings.net/gloss/commit/?id=71ccfdd0e6216356ec6cac90bc627fe02dbfdeb1'/>
<id>urn:sha1:71ccfdd0e6216356ec6cac90bc627fe02dbfdeb1</id>
<content type='text'>
Five layered files per the design at docs/design/gloss.org. gloss-core for the data layer, gloss-fetch for the network layer, gloss-display for the UI, gloss-drill for the spaced-repetition export, and gloss.el as the entry point. All five are skeletons. Implementation comes next.

The Makefile delegates to ert with the usual unit, integration, and per-file targets. It also runs paren and lint passes. The package is licensed GPL-3.0-or-later. README is a placeholder pointing at the design doc.
</content>
</entry>
</feed>
