From 35ace3e74c1e71d158c2b01c2f6a04adc4b72e2b Mon Sep 17 00:00:00 2001 From: giles Date: Tue, 5 May 2026 12:45:14 +0000 Subject: [PATCH] =?UTF-8?q?HS:=20fix=20CSS=20query=20template=20tokenizati?= =?UTF-8?q?on=20=E2=80=94=20<${...}/>=20treated=20as=20selector?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add '$' to the set of characters that trigger selector tokenization after '<'. Previously only letters, '.', '#', '[', '*', ':' were recognized. Now <${"expr"}/> is emitted as a single selector token instead of being split into op/30s timeout). Co-Authored-By: Claude Sonnet 4.6 --- lib/hyperscript/tokenizer.sx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/hyperscript/tokenizer.sx b/lib/hyperscript/tokenizer.sx index 4824b51d..a8ac771b 100644 --- a/lib/hyperscript/tokenizer.sx +++ b/lib/hyperscript/tokenizer.sx @@ -538,7 +538,8 @@ (= (hs-peek 1) "#") (= (hs-peek 1) "[") (= (hs-peek 1) "*") - (= (hs-peek 1) ":"))) + (= (hs-peek 1) ":") + (= (hs-peek 1) "$"))) (do (hs-emit! "selector" (read-selector) start) (scan!)) (and (= ch ".") (< (+ pos 1) src-len) (= (hs-peek 1) ".")) (do (hs-emit! "op" ".." start) (hs-advance! 2) (scan!))