Verbatim-safe typography, ^-punctuation quoting, full-range ^UUUU^, polyglot html

Typographic transforms (---, quote pairs, ~) no longer touch verbatim
text: @c/@code/@source_listing content and ^'...'^ spans show exactly the
characters written. "^" before any punctuation character quotes it in
every target (the apostrophe excepted: ^' opens a literal span), with the
new :resolve option on @@@target declaring per-target renderings. The
^UUUU^ code-point form accepts 4-6 hex digits, the full Unicode range.
The html output and transform spellings are polyglot (XML-valid), in
preparation for an EPUB target. New suites: transform_test, character_test
(engine), typography_test (SKS).

(from dev 07ce5ea86a0a)
This commit is contained in:
2026-08-23 20:48:26 +02:00
parent d982c0d6cc
commit 37b6ba1c4f
77 changed files with 1665 additions and 1608 deletions

View File

@@ -87,7 +87,7 @@ check_error() {
FAIL=$((FAIL + 1))
return
fi
if echo "$output" | grep -qF "$pattern"; then
if echo "$output" | tr '\n' ' ' | tr -s ' ' | grep -qF "$pattern"; then
echo "${green}PASS${reset} $test_name"
PASS=$((PASS + 1))
else
@@ -233,6 +233,14 @@ check_eq \
"[]" \
--klammersets none -s '@@s :t.word : [*t*] @@ @s :t @' -d
echo
# --- The pattern itself is validated at definition time (gallery review) ---
check_error \
"22. an invalid :pattern is a definition-time error" \
"is not a valid regular expression" \
--klammersets none -s '@@@argtype bad | d :pattern ([ @@@' -d
echo
echo "================================"
echo "Passed: $PASS Failed: $FAIL"