aboutsummaryrefslogtreecommitdiff
path: root/scripts/theme-studio/capture-default-faces.py
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-06-18 20:35:55 -0500
committerCraig Jennings <c@cjennings.net>2026-06-18 20:35:55 -0500
commit0ebe5a34d10dd736abf878e4c80d4b93c6998aba (patch)
tree5e6dc7e82c4715dc1ce351992a8ace35a9f85f5d /scripts/theme-studio/capture-default-faces.py
parent43793e006a6d32f989b7de0b90992431791e09db (diff)
downloaddotemacs-0ebe5a34d10dd736abf878e4c80d4b93c6998aba.tar.gz
dotemacs-0ebe5a34d10dd736abf878e4c80d4b93c6998aba.zip
feat(theme-studio): add reproducible face-coverage generator and diff
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.
Diffstat (limited to 'scripts/theme-studio/capture-default-faces.py')
0 files changed, 0 insertions, 0 deletions