aboutsummaryrefslogtreecommitdiff
path: root/scripts/theme-studio/samples.py
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-07-04 11:35:22 -0500
committerCraig Jennings <c@cjennings.net>2026-07-04 11:35:22 -0500
commit0be572e43f8118f6c678a536b3d97d7e976e840f (patch)
tree17719837151de42a3ff9a494a1c953898dc29fd7 /scripts/theme-studio/samples.py
parenteb923ab475394069b3d0bcb6343bf7aa4d108d6a (diff)
downloaddotemacs-0be572e43f8118f6c678a536b3d97d7e976e840f.tar.gz
dotemacs-0be572e43f8118f6c678a536b3d97d7e976e840f.zip
fix(theme-studio): persist regexp/doc/negation/warning syntax faces
Five syntax categories (rxgb, rxgc, dmark, neg, warn) rendered as editable rows but had no COLS entry, so build_syntax never gave them a SYNTAX slot. They exported nothing and re-imported nothing, so every saved theme dropped them. I added the five to COLS, where the default-face seed fills their real colors and they round-trip through save and import. A regression test now asserts every editable category has a COLS slot.
Diffstat (limited to 'scripts/theme-studio/samples.py')
-rw-r--r--scripts/theme-studio/samples.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/scripts/theme-studio/samples.py b/scripts/theme-studio/samples.py
index ca568ed3..9b8c8a72 100644
--- a/scripts/theme-studio/samples.py
+++ b/scripts/theme-studio/samples.py
@@ -4,9 +4,11 @@ COLS={
'fnd':("#a9b2bb",True),'fnc':("#a9b2bb",False),'dec':("#e8bd30",False),
'ty':("#9b5fd0",False),'prop':("#838d97",False),
'con':("#cb6b4d",False),'num':("#cb6b4d",False),'esc':("#cb6b4d",False),
- 'str':("#2ba178",False),'re':("#5d9b86",False),'doc':("#5d9b86",False),
+ 'str':("#2ba178",False),'re':("#5d9b86",False),'rxgb':("#5d9b86",True),'rxgc':("#5d9b86",False),
+ 'doc':("#5d9b86",False),'dmark':("#5d9b86",False),
'cm':("#be9e74",False),'cmd':("#a9b2bb",False),
- 'var':("#e8bd30",False),'op':("#a9b2bb",False),'punc':("#a9b2bb",False),'p':("#ffffff",False),
+ 'var':("#e8bd30",False),'op':("#a9b2bb",False),'neg':("#cb6b4d",False),
+ 'punc':("#a9b2bb",False),'p':("#ffffff",False),'warn':("#cb6b4d",True),
}
NAMES={"#67809c":"blue","#e8bd30":"gold","#9b5fd0":"regal","#2ba178":"emerald","#cb6b4d":"terracotta","#be9e74":"tan","#5d9b86":"sage","#cdced1":"white","#a9b2bb":"silver","#838d97":"steel","#5e6770":"pewter","#2f343a":"gunmetal","#264364":"navy"}
def esc(t): return t.replace("&","&amp;").replace("<","&lt;").replace(">","&gt;")