summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoradelon <22380201+adelon@users.noreply.github.com>2026-03-07 11:04:37 +0100
committeradelon <22380201+adelon@users.noreply.github.com>2026-03-07 11:04:37 +0100
commite09cdea6f1ac5a6d271ed10719b427679900623d (patch)
treea46b0c45897afd018141826936ef22de8aed6c82
parent3fdbfb1a099ad6caa3aaa53fc16c9e35b8339caa (diff)
Fix spacing in finite set expressions
-rw-r--r--library/lexicon.tsv2
-rw-r--r--source/Render/Html.hs21
2 files changed, 17 insertions, 6 deletions
diff --git a/library/lexicon.tsv b/library/lexicon.tsv
index cf27128..e68633f 100644
--- a/library/lexicon.tsv
+++ b/library/lexicon.tsv
@@ -1,5 +1,5 @@
operator abs 1 <mo>|</mo><x1/><mo>|</mo>
-operator emptyset 0 <mo>∅</mo>
+operator emptyset 0 <mi>∅</mi>
operator intersect 2 <x1/><mo>∩</mo><x2/>
operator pow 1 <mi mathvariant="normal">P</mi><mo>(</mo><x1/><mo>)</mo>
operator setminus 2 <x1/><mo>∖</mo><x2/>
diff --git a/source/Render/Html.hs b/source/Render/Html.hs
index f2bab2c..da0534a 100644
--- a/source/Render/Html.hs
+++ b/source/Render/Html.hs
@@ -2215,10 +2215,7 @@ renderExprMath hints = \case
args = maybeToList maybeExpr
in renderHintedMath hints StructOpHint marker args (renderStructFallback symb (renderExprMath hints <$> args))
ExprFiniteSet _loc exprs ->
- mrow_ do
- moText "{"
- renderExprListMath hints (toList exprs)
- moText "}"
+ renderFiniteSetMath hints (toList exprs)
ExprSep _loc var bound stmt ->
mrow_ do
moText "{"
@@ -2264,6 +2261,13 @@ renderExprListMath :: HintMap -> [Expr] -> Html ()
renderExprListMath hints =
joinHtml (moText ",") . fmap (renderExprMath hints)
+renderFiniteSetMath :: HintMap -> [Expr] -> Html ()
+renderFiniteSetMath hints exprs =
+ mrow_ do
+ moText "{"
+ renderExprListMath hints exprs
+ moText "}"
+
renderHintedMath :: HintMap -> HintCategory -> Marker -> [Expr] -> Html () -> Html ()
renderHintedMath hints category marker args fallback =
case Map.lookup (category, marker) hints of
@@ -2273,10 +2277,17 @@ renderHintedMath hints category marker args fallback =
| renderHintArity /= length args ->
error ("Render hint arity mismatch for " <> show category <> " " <> show marker <> ": expected " <> show renderHintArity <> ", got " <> show (length args))
| otherwise ->
- mrow_ (traverse_ renderPiece renderHintTemplate)
+ renderTemplate renderHintTemplate
where
renderedArgs = renderExprMath hints <$> args
+ renderTemplate :: [TemplatePiece] -> Html ()
+ renderTemplate = \case
+ [piece] ->
+ renderPiece piece
+ pieces ->
+ mrow_ (traverse_ renderPiece pieces)
+
renderPiece :: TemplatePiece -> Html ()
renderPiece = \case
Literal text -> toHtmlRaw text