aboutsummaryrefslogtreecommitdiff
path: root/scripts/theme-studio/face-coverage.org
Commit message (Collapse)AuthorAgeFilesLines
* feat(theme-studio): add reproducible face-coverage generator and diffCraig Jennings41 hours1-2/+3
| | | | | | face-coverage.org was rebuilt by a throwaway /tmp script each time. This makes it reproducible: face-coverage-dump.el dumps every face's name, docstring, and defface file from the live daemon (plus all group docs and package summaries), and face_coverage.py turns that into the tiered worklist (emacs-core / emacs-general / per-package), classifying each face by where its defface lives. make face-coverage regenerates the file; make face-coverage-diff reports the coverage delta against the committed copy. The dump binds coding-system-for-write so writing the docstring JSON never drops into the interactive coding-system prompt. I validated the builder by regenerating and diffing against the hand-built worklist: headings identical, only the intro and one sharper description differ.
* docs(theme-studio): add package and subsystem descriptions to face coverageCraig Jennings41 hours1-0/+109
| | | | I added a one-line description under each package and subsystem heading, pulled from its Emacs customization-group docstring or elpa package summary, with a parent-group fallback for sub-buckets. 109 of 120 buckets resolved; the rest are single-face buckets the face's own docstring already covers.
* docs(theme-studio): drain emacs-core orphans into subsystem and package bucketsCraig Jennings41 hours1-64/+76
| | | | I added the missing buckets so every built-in subsystem face and package face leaves emacs-core. abbrev and which-func became emacs-general subsystems; git-gutter, git-commit, twentyfortyeight (2048-game), yasnippet, and edit-indirect became their own package headings. The orphans that were genuinely core (mode-line-active, the tty-menu faces, the line-number tick faces, fixed-pitch-serif) joined the core set. emacs-core is now 74 faces with no orphans left.
* docs(theme-studio): regroup face coverage into core/general/package tiersCraig Jennings42 hours1-1385/+1325
| | | | I regrouped the worklist into three top-level tiers: emacs-core (the standalone built-in faces), emacs-general (built-in subsystems like org, gnus, erc, diff, and vc, each a nested child), and one heading per third-party elpa package. The tier comes from where each face's defface lives, queried from the running Emacs: /usr/share/emacs is built-in, elpa is a package.
* docs(theme-studio): annotate face coverage list with docstringsCraig Jennings42 hours1-4/+1134
| | | | I added each face's Emacs docstring (first line) as the line beneath it, so the worklist reads as what every face is actually for. 1129 of 1293 faces carry one.
* docs(theme-studio): add face coverage master listCraig Jennings42 hours1-0/+1523
I added a hierarchical worklist of every known face: the live Emacs face-list unioned with everything the studio manages, grouped by package. Each face is marked DONE where the studio themes it, TODO where it doesn't, and each group is DONE, DOING, or TODO by how much of it is covered. 690 of 1293 faces are covered today. The gaps are mostly org, gnus, erc, custom, diff, and the built-in subsystems the package inventory doesn't reach yet.