diff options
| author | Craig Jennings <c@cjennings.net> | 2026-04-28 13:56:06 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-04-28 13:56:06 -0500 |
| commit | 71ccfdd0e6216356ec6cac90bc627fe02dbfdeb1 (patch) | |
| tree | a75a387d0c2ec95bfc3850e01fb58067b56aa628 /gloss-core.el | |
| download | gloss-71ccfdd0e6216356ec6cac90bc627fe02dbfdeb1.tar.gz gloss-71ccfdd0e6216356ec6cac90bc627fe02dbfdeb1.zip | |
chore: scaffold gloss package
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.
Diffstat (limited to 'gloss-core.el')
| -rw-r--r-- | gloss-core.el | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/gloss-core.el b/gloss-core.el new file mode 100644 index 0000000..2e054c4 --- /dev/null +++ b/gloss-core.el @@ -0,0 +1,32 @@ +;;; gloss-core.el --- Data layer for gloss -*- lexical-binding: t -*- + +;; Copyright (C) 2026 Craig Jennings +;; Author: Craig Jennings <c@cjennings.net> +;; SPDX-License-Identifier: GPL-3.0-or-later + +;;; Commentary: + +;; Storage and lookup primitives for `gloss'. Owns the in-memory +;; cache (a hash table keyed by term) and the org file I/O. +;; +;; Public API: +;; `gloss-core-lookup' TERM -> entry plist or nil +;; `gloss-core-save' TERM BODY SOURCE -> entry plist (saved) +;; `gloss-core-list' -> (TERM ...) +;; `gloss-core-find-buffer-position' TERM -> marker +;; +;; Entry plist shape: +;; (:term "anaphora" +;; :body "Reference to..." +;; :source wiktionary +;; :added "2026-04-28" +;; :marker #<marker at N in gloss.org>) +;; +;; See `docs/design/gloss.org' for the full design. + +;;; Code: + +;; Implementation pending. Track via todo.org. + +(provide 'gloss-core) +;;; gloss-core.el ends here |
