summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2021-03-19 13:20:58 +0100
committerLaurenz <laurmaedje@gmail.com>2021-03-19 13:20:58 +0100
commit54a9ccb1a5e9f1f1e5d2538d2f4ce3d4f7afc4ae (patch)
tree3a0f45af5d1cd6d65420887f8412a5594b6300bd /tests
parentbd12d135cab32d61b32945433e77579d04298d52 (diff)
Configurable font edges ⚙
Adds top-edge and bottom-edge parameters to the font function. These define how the box around a word is computed. The possible values are: - ascender - cap-height (default top edge) - x-height - baseline (default bottom edge) - descender The defaults are chosen so that it's easy to create good-looking designs with vertical alignment. Since they are much tighter than what most other software uses by default, the default leading had to be increased to 50% of the font size and paragraph spacing to 100% of the font size. The values cap-height and x-height fall back to ascender in case they are zero because this value may occur in fonts that don't have glyphs with cap- or x-height (like Twitter Color Emoji). Since cap-height is the default top edge, doing no fallback would break things badly. Removes softness in favor of a simple boolean for pages and a more finegread u8 for spacing. This is needed to make paragraph spacing consume line spacing created by hard line breaks.
Diffstat (limited to 'tests')
-rw-r--r--tests/ref/comment.pngbin746 -> 706 bytes
-rw-r--r--tests/ref/control/for.pngbin2787 -> 2724 bytes
-rw-r--r--tests/ref/control/if.pngbin1727 -> 1637 bytes
-rw-r--r--tests/ref/control/invalid.pngbin3772 -> 3642 bytes
-rw-r--r--tests/ref/control/let.pngbin2089 -> 1961 bytes
-rw-r--r--tests/ref/control/while.pngbin929 -> 880 bytes
-rw-r--r--tests/ref/expand.pngbin1419 -> 1372 bytes
-rw-r--r--tests/ref/expr/array.pngbin3317 -> 3396 bytes
-rw-r--r--tests/ref/expr/block-invalid.pngbin522 -> 512 bytes
-rw-r--r--tests/ref/expr/block.pngbin1453 -> 1428 bytes
-rw-r--r--tests/ref/expr/call-invalid.pngbin2789 -> 2866 bytes
-rw-r--r--tests/ref/expr/call.pngbin5863 -> 5991 bytes
-rw-r--r--tests/ref/expr/dict.pngbin1627 -> 1612 bytes
-rw-r--r--tests/ref/expr/ops.pngbin827 -> 776 bytes
-rw-r--r--tests/ref/full/coma.pngbin59486 -> 59286 bytes
-rw-r--r--tests/ref/library/font.pngbin4554 -> 8878 bytes
-rw-r--r--tests/ref/library/image.pngbin219392 -> 219513 bytes
-rw-r--r--tests/ref/library/pad.pngbin1254 -> 1226 bytes
-rw-r--r--tests/ref/library/page.pngbin8417 -> 8290 bytes
-rw-r--r--tests/ref/library/pagebreak.pngbin840 -> 803 bytes
-rw-r--r--tests/ref/library/shapes.pngbin3266 -> 3136 bytes
-rw-r--r--tests/ref/library/spacing.pngbin3960 -> 3833 bytes
-rw-r--r--tests/ref/markup/emph.pngbin3079 -> 3053 bytes
-rw-r--r--tests/ref/markup/escape.pngbin4197 -> 5339 bytes
-rw-r--r--tests/ref/markup/heading.pngbin4656 -> 4540 bytes
-rw-r--r--tests/ref/markup/linebreak.pngbin3864 -> 3770 bytes
-rw-r--r--tests/ref/markup/nbsp.pngbin1818 -> 1763 bytes
-rw-r--r--tests/ref/markup/raw.pngbin7282 -> 7291 bytes
-rw-r--r--tests/ref/markup/strong.pngbin2847 -> 2824 bytes
-rw-r--r--tests/ref/repr.pngbin10195 -> 10139 bytes
-rw-r--r--tests/ref/spacing.pngbin5494 -> 5212 bytes
-rw-r--r--tests/ref/text.pngbin1880 -> 36910 bytes
-rw-r--r--tests/typ/control/let.typ4
-rw-r--r--tests/typ/full/coma.typ4
-rw-r--r--tests/typ/library/font.typ14
-rw-r--r--tests/typ/library/spacing.typ2
-rw-r--r--tests/typ/markup/escape.typ4
-rw-r--r--tests/typ/markup/raw.typ2
-rw-r--r--tests/typ/text.typ21
39 files changed, 40 insertions, 11 deletions
diff --git a/tests/ref/comment.png b/tests/ref/comment.png
index 1fad97fe..6d5723ef 100644
--- a/tests/ref/comment.png
+++ b/tests/ref/comment.png
Binary files differ
diff --git a/tests/ref/control/for.png b/tests/ref/control/for.png
index d04ea62c..f3830b34 100644
--- a/tests/ref/control/for.png
+++ b/tests/ref/control/for.png
Binary files differ
diff --git a/tests/ref/control/if.png b/tests/ref/control/if.png
index 99bde49e..0527754e 100644
--- a/tests/ref/control/if.png
+++ b/tests/ref/control/if.png
Binary files differ
diff --git a/tests/ref/control/invalid.png b/tests/ref/control/invalid.png
index ff4c6987..e9c64b8a 100644
--- a/tests/ref/control/invalid.png
+++ b/tests/ref/control/invalid.png
Binary files differ
diff --git a/tests/ref/control/let.png b/tests/ref/control/let.png
index 5fb1c992..20aad953 100644
--- a/tests/ref/control/let.png
+++ b/tests/ref/control/let.png
Binary files differ
diff --git a/tests/ref/control/while.png b/tests/ref/control/while.png
index 890131f1..2ea1bcb0 100644
--- a/tests/ref/control/while.png
+++ b/tests/ref/control/while.png
Binary files differ
diff --git a/tests/ref/expand.png b/tests/ref/expand.png
index fc1f5de9..f18e929b 100644
--- a/tests/ref/expand.png
+++ b/tests/ref/expand.png
Binary files differ
diff --git a/tests/ref/expr/array.png b/tests/ref/expr/array.png
index 784553b3..b1e20348 100644
--- a/tests/ref/expr/array.png
+++ b/tests/ref/expr/array.png
Binary files differ
diff --git a/tests/ref/expr/block-invalid.png b/tests/ref/expr/block-invalid.png
index b380defc..d1e85402 100644
--- a/tests/ref/expr/block-invalid.png
+++ b/tests/ref/expr/block-invalid.png
Binary files differ
diff --git a/tests/ref/expr/block.png b/tests/ref/expr/block.png
index d5ad52ae..d8ea84fb 100644
--- a/tests/ref/expr/block.png
+++ b/tests/ref/expr/block.png
Binary files differ
diff --git a/tests/ref/expr/call-invalid.png b/tests/ref/expr/call-invalid.png
index 88f13780..eb192357 100644
--- a/tests/ref/expr/call-invalid.png
+++ b/tests/ref/expr/call-invalid.png
Binary files differ
diff --git a/tests/ref/expr/call.png b/tests/ref/expr/call.png
index 7197bb90..26f1cb03 100644
--- a/tests/ref/expr/call.png
+++ b/tests/ref/expr/call.png
Binary files differ
diff --git a/tests/ref/expr/dict.png b/tests/ref/expr/dict.png
index 28a7cb3b..1caef1e0 100644
--- a/tests/ref/expr/dict.png
+++ b/tests/ref/expr/dict.png
Binary files differ
diff --git a/tests/ref/expr/ops.png b/tests/ref/expr/ops.png
index 95a24c0e..2f3a28ea 100644
--- a/tests/ref/expr/ops.png
+++ b/tests/ref/expr/ops.png
Binary files differ
diff --git a/tests/ref/full/coma.png b/tests/ref/full/coma.png
index f5db682d..5fd6d801 100644
--- a/tests/ref/full/coma.png
+++ b/tests/ref/full/coma.png
Binary files differ
diff --git a/tests/ref/library/font.png b/tests/ref/library/font.png
index 8e611b16..199a15f2 100644
--- a/tests/ref/library/font.png
+++ b/tests/ref/library/font.png
Binary files differ
diff --git a/tests/ref/library/image.png b/tests/ref/library/image.png
index af497c8d..0a45e11b 100644
--- a/tests/ref/library/image.png
+++ b/tests/ref/library/image.png
Binary files differ
diff --git a/tests/ref/library/pad.png b/tests/ref/library/pad.png
index a655061b..3536db5d 100644
--- a/tests/ref/library/pad.png
+++ b/tests/ref/library/pad.png
Binary files differ
diff --git a/tests/ref/library/page.png b/tests/ref/library/page.png
index 1537fad4..7d1ff96f 100644
--- a/tests/ref/library/page.png
+++ b/tests/ref/library/page.png
Binary files differ
diff --git a/tests/ref/library/pagebreak.png b/tests/ref/library/pagebreak.png
index b1ee0eef..f0052f9e 100644
--- a/tests/ref/library/pagebreak.png
+++ b/tests/ref/library/pagebreak.png
Binary files differ
diff --git a/tests/ref/library/shapes.png b/tests/ref/library/shapes.png
index 8ace6fd6..a244feb1 100644
--- a/tests/ref/library/shapes.png
+++ b/tests/ref/library/shapes.png
Binary files differ
diff --git a/tests/ref/library/spacing.png b/tests/ref/library/spacing.png
index 0842d409..6a234a8a 100644
--- a/tests/ref/library/spacing.png
+++ b/tests/ref/library/spacing.png
Binary files differ
diff --git a/tests/ref/markup/emph.png b/tests/ref/markup/emph.png
index f002610e..75231a62 100644
--- a/tests/ref/markup/emph.png
+++ b/tests/ref/markup/emph.png
Binary files differ
diff --git a/tests/ref/markup/escape.png b/tests/ref/markup/escape.png
index 3fa44c6d..8e946279 100644
--- a/tests/ref/markup/escape.png
+++ b/tests/ref/markup/escape.png
Binary files differ
diff --git a/tests/ref/markup/heading.png b/tests/ref/markup/heading.png
index 9f2ce6ec..3473f798 100644
--- a/tests/ref/markup/heading.png
+++ b/tests/ref/markup/heading.png
Binary files differ
diff --git a/tests/ref/markup/linebreak.png b/tests/ref/markup/linebreak.png
index fec65248..4e4702f9 100644
--- a/tests/ref/markup/linebreak.png
+++ b/tests/ref/markup/linebreak.png
Binary files differ
diff --git a/tests/ref/markup/nbsp.png b/tests/ref/markup/nbsp.png
index 3e1f0ee7..89f75f14 100644
--- a/tests/ref/markup/nbsp.png
+++ b/tests/ref/markup/nbsp.png
Binary files differ
diff --git a/tests/ref/markup/raw.png b/tests/ref/markup/raw.png
index ce833428..59a4e3dd 100644
--- a/tests/ref/markup/raw.png
+++ b/tests/ref/markup/raw.png
Binary files differ
diff --git a/tests/ref/markup/strong.png b/tests/ref/markup/strong.png
index ac38c436..7e62f0f3 100644
--- a/tests/ref/markup/strong.png
+++ b/tests/ref/markup/strong.png
Binary files differ
diff --git a/tests/ref/repr.png b/tests/ref/repr.png
index 2f5697fd..ad10705c 100644
--- a/tests/ref/repr.png
+++ b/tests/ref/repr.png
Binary files differ
diff --git a/tests/ref/spacing.png b/tests/ref/spacing.png
index 8bdc9885..454b154f 100644
--- a/tests/ref/spacing.png
+++ b/tests/ref/spacing.png
Binary files differ
diff --git a/tests/ref/text.png b/tests/ref/text.png
index 38ae364d..1dd70c1c 100644
--- a/tests/ref/text.png
+++ b/tests/ref/text.png
Binary files differ
diff --git a/tests/typ/control/let.typ b/tests/typ/control/let.typ
index dd971ee5..4f84aa67 100644
--- a/tests/typ/control/let.typ
+++ b/tests/typ/control/let.typ
@@ -17,8 +17,8 @@
---
// Syntax sugar for function definitions.
-#let background = #239dad
-#let rect(body) = rect(width: 2cm, height: 1cm, fill: background, body)
+#let background = #9feb52
+#let rect(body) = rect(width: 2cm, fill: background, pad(5pt, body))
#rect[Hi!]
// Error: 13 expected body
diff --git a/tests/typ/full/coma.typ b/tests/typ/full/coma.typ
index 243c667f..619843d7 100644
--- a/tests/typ/full/coma.typ
+++ b/tests/typ/full/coma.typ
@@ -30,8 +30,8 @@
// the parentheses.
#align(center)[
// Markdown-like syntax for headings.
- ==== 3. Übungsblatt Computerorientierte Mathematik II #v(2mm)
- *Abgabe: 03.05.2019* (bis 10:10 Uhr in MA 001) #v(2mm)
+ ==== 3. Übungsblatt Computerorientierte Mathematik II #v(4mm)
+ *Abgabe: 03.05.2019* (bis 10:10 Uhr in MA 001) #v(4mm)
*Alle Antworten sind zu beweisen.*
]
diff --git a/tests/typ/library/font.typ b/tests/typ/library/font.typ
index c00bff5a..ecea303f 100644
--- a/tests/typ/library/font.typ
+++ b/tests/typ/library/font.typ
@@ -32,6 +32,20 @@ Emoji: 🐪, 🌋, 🏞
]
---
+// Test top and bottom edge.
+
+#page(width: 170pt)
+#let try(top, bottom) = rect(fill: #9feb52)[
+ #font(top-edge: top, bottom-edge: bottom)
+ `From `#top` to `#bottom
+]
+
+#try(ascender, descender)
+#try(ascender, baseline)
+#try(cap-height, baseline)
+#try(x-height, baseline)
+
+---
// Ref: false
// Error: 7-12 unexpected argument
diff --git a/tests/typ/library/spacing.typ b/tests/typ/library/spacing.typ
index a34840c6..6d50f0dc 100644
--- a/tests/typ/library/spacing.typ
+++ b/tests/typ/library/spacing.typ
@@ -2,7 +2,7 @@
---
// Ends paragraphs.
-Tightly #v(-5pt) packed
+Tightly #v(0pt) packed
// Eating up soft spacing.
Inv #h(0pt) isible
diff --git a/tests/typ/markup/escape.typ b/tests/typ/markup/escape.typ
index eeac4997..b0a809f9 100644
--- a/tests/typ/markup/escape.typ
+++ b/tests/typ/markup/escape.typ
@@ -28,3 +28,7 @@
// Unterminated.
// Error: 6 expected closing brace
\u{41*Bold*
+
+---
+// Some code stuff in text.
+let f() , ; : | + - /= == 12 "string"
diff --git a/tests/typ/markup/raw.typ b/tests/typ/markup/raw.typ
index f5074c8e..005d413e 100644
--- a/tests/typ/markup/raw.typ
+++ b/tests/typ/markup/raw.typ
@@ -7,7 +7,7 @@
---
// Typst syntax inside.
`#let x = 1` \
-`#[f 1]`
+`#f(1)`
---
// Multiline block splits paragraphs.
diff --git a/tests/typ/text.typ b/tests/typ/text.typ
index d86f4895..b424cee8 100644
--- a/tests/typ/text.typ
+++ b/tests/typ/text.typ
@@ -1,8 +1,19 @@
// Test simple text.
----
-Hello 🌏!
+#page(width: 250pt)
----
-// Some code stuff in text.
-let f() , ; : | + - /= == 12 "string"
+But, soft! what light through yonder window breaks? It is the east, and Juliet
+is the sun. Arise, fair sun, and kill the envious moon, Who is already sick and
+pale with grief, That thou her maid art far more fair than she: Be not her maid,
+since she is envious; Her vestal livery is but sick and green And none but fools
+do wear it; cast it off. It is my lady, O, it is my love! O, that she knew she
+were! She speaks yet she says nothing: what of that? Her eye discourses; I will
+answer it.
+
+I am too bold, 'tis not to me she speaks: Two of the fairest stars in all the
+heaven, Having some business, do entreat her eyes To twinkle in their spheres
+till they return. What if her eyes were there, they in her head? The brightness
+of her cheek would shame those stars, As daylight doth a lamp; her eyes in
+heaven Would through the airy region stream so bright That birds would sing and
+think it were not night. See, how she leans her cheek upon her hand! O, that I
+were a glove upon that hand, That I might touch that cheek!