From 71ccfdd0e6216356ec6cac90bc627fe02dbfdeb1 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Tue, 28 Apr 2026 13:56:06 -0500 Subject: 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. --- gloss-display.el | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 gloss-display.el (limited to 'gloss-display.el') diff --git a/gloss-display.el b/gloss-display.el new file mode 100644 index 0000000..c028698 --- /dev/null +++ b/gloss-display.el @@ -0,0 +1,29 @@ +;;; gloss-display.el --- Side-buffer UI for gloss -*- lexical-binding: t -*- + +;; Copyright (C) 2026 Craig Jennings +;; Author: Craig Jennings +;; SPDX-License-Identifier: GPL-3.0-or-later + +;;; Commentary: + +;; UI layer for `gloss'. Defines the side buffer's major mode and +;; renders entries; also owns the picker shown when an online fetch +;; returns multiple candidate definitions. +;; +;; Public API: +;; `gloss-display-show-entry' TERM BODY +;; `gloss-display-pick-definition' TERM DEFINITIONS -> chosen plist +;; +;; Pure helper (full N/B/E test coverage): +;; `gloss-display--format-candidate' PLIST -> "[source] text..." +;; +;; `gloss-mode' is derived from `special-mode': `q' quits the window. +;; +;; See `docs/design/gloss.org' for the full design. + +;;; Code: + +;; Implementation pending. Track via todo.org. + +(provide 'gloss-display) +;;; gloss-display.el ends here -- cgit v1.2.3