aboutsummaryrefslogtreecommitdiff
path: root/scripts/theme-studio/nerd-icons-legend.json
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-06-24 05:39:06 -0400
committerCraig Jennings <c@cjennings.net>2026-06-24 05:39:06 -0400
commita98dc772708f33e90aaeb4572a13bf22d065a022 (patch)
treee8c3682b2c82b5840999b3ad49a2ec947c9a38dd /scripts/theme-studio/nerd-icons-legend.json
parent11767454d306518997d06207f9fe792f7482ac50 (diff)
downloaddotemacs-a98dc772708f33e90aaeb4572a13bf22d065a022.tar.gz
dotemacs-a98dc772708f33e90aaeb4572a13bf22d065a022.zip
feat(theme-studio): capture the nerd-icons filetype legend (phase 1)
Add build-nerd-icons-legend.el, which resolves the curated v1 legend rows (glyph + owner color face per filetype) from the live nerd-icons alists and dumps them to nerd-icons-legend.json, a committed artifact like package-inventory.json. generate.py gains load_nerd_icons_legend, which validates the artifact and returns None — with a warning — when it is absent, malformed, empty, or missing a field, so the page can fall back to the generic nerd-icons app rather than error. Data only; the bespoke preview that renders it lands next. Claude-Session: https://claude.ai/code/session_01BqrdWUo9GcznYX2pZr76gZ
Diffstat (limited to 'scripts/theme-studio/nerd-icons-legend.json')
-rw-r--r--scripts/theme-studio/nerd-icons-legend.json93
1 files changed, 93 insertions, 0 deletions
diff --git a/scripts/theme-studio/nerd-icons-legend.json b/scripts/theme-studio/nerd-icons-legend.json
new file mode 100644
index 000000000..1b315e98b
--- /dev/null
+++ b/scripts/theme-studio/nerd-icons-legend.json
@@ -0,0 +1,93 @@
+[
+ {
+ "key": "ext:el",
+ "label": "init.el",
+ "face": "nerd-icons-purple",
+ "category": "extension",
+ "glyph": ""
+ },
+ {
+ "key": "ext:py",
+ "label": "app.py",
+ "face": "nerd-icons-dblue",
+ "category": "extension",
+ "glyph": ""
+ },
+ {
+ "key": "ext:org",
+ "label": "notes.org",
+ "face": "nerd-icons-lgreen",
+ "category": "extension",
+ "glyph": ""
+ },
+ {
+ "key": "ext:md",
+ "label": "README.md",
+ "face": "nerd-icons-lblue",
+ "category": "extension",
+ "glyph": ""
+ },
+ {
+ "key": "ext:ts",
+ "label": "main.ts",
+ "face": "nerd-icons-blue-alt",
+ "category": "extension",
+ "glyph": "󰛦"
+ },
+ {
+ "key": "ext:html",
+ "label": "index.html",
+ "face": "nerd-icons-orange",
+ "category": "extension",
+ "glyph": ""
+ },
+ {
+ "key": "ext:rs",
+ "label": "lib.rs",
+ "face": "nerd-icons-maroon",
+ "category": "extension",
+ "glyph": ""
+ },
+ {
+ "key": "ext:js",
+ "label": "app.js",
+ "face": "nerd-icons-yellow",
+ "category": "extension",
+ "glyph": ""
+ },
+ {
+ "key": "ext:yml",
+ "label": "ci.yml",
+ "face": "nerd-icons-dyellow",
+ "category": "extension",
+ "glyph": ""
+ },
+ {
+ "key": "ext:c",
+ "label": "main.c",
+ "face": "nerd-icons-blue",
+ "category": "extension",
+ "glyph": ""
+ },
+ {
+ "key": "dir",
+ "label": "src/",
+ "face": "nerd-icons-yellow",
+ "category": "dir",
+ "glyph": ""
+ },
+ {
+ "key": "cmd",
+ "label": "M-x command",
+ "face": "nerd-icons-blue",
+ "category": "command",
+ "glyph": ""
+ },
+ {
+ "key": "buf",
+ "label": "*scratch*",
+ "face": "nerd-icons-purple",
+ "category": "buffer",
+ "glyph": ""
+ }
+]