From cb27b47b911017926ef8b4a1758e123e4cc2304e Mon Sep 17 00:00:00 2001 From: Amit Haridas Date: Tue, 30 Jun 2026 23:23:39 +0530 Subject: [PATCH] feat(monospace): add --font-mono-active / --font-mono-feature tokens Body classes (.mono-fira, .mono-ligatures-on) flip the tokens for live switching without re-rendering. --- src/styles-concreteinfo.css | 17 +++++++++++++++++ src/styles/tokens.css | 2 ++ 2 files changed, 19 insertions(+) diff --git a/src/styles-concreteinfo.css b/src/styles-concreteinfo.css index d3ffd59..8ed8109 100644 --- a/src/styles-concreteinfo.css +++ b/src/styles-concreteinfo.css @@ -982,3 +982,20 @@ body.theme-concrete-warm .line-numbers { background: #f0ebe4; color: #9a9696; } + +/* Monospace font + ligature toggles — driven by body classes from renderer */ +body.mono-jetbrains { + --font-mono-active: 'JetBrains Mono', monospace; +} + +body.mono-fira { + --font-mono-active: 'Fira Code', monospace; +} + +body.mono-ligatures-on { + --font-mono-feature: normal; +} + +body.mono-ligatures-off { + --font-mono-feature: 'liga' 0, 'calt' 0, 'dlig' 0; +} diff --git a/src/styles/tokens.css b/src/styles/tokens.css index 5459add..92937c4 100644 --- a/src/styles/tokens.css +++ b/src/styles/tokens.css @@ -95,6 +95,8 @@ --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; --font-mono: 'JetBrains Mono', 'Fira Code', 'SF Mono', Monaco, 'Courier New', monospace; + --font-mono-active: 'JetBrains Mono', monospace; + --font-mono-feature: 'liga' 0, 'calt' 0, 'dlig' 0; --text-xs: 0.75rem; --text-sm: 0.875rem;