typst/tests/suite/math/vec.typ
mkorje b30a38046c
Add delim-size parameter to mat, vec, and cases
Takes either a function or a relative length, just like with `lr`,
`stretch`, and `accent` which was changed in the previous two commits.
The short fall was changed in the first commit, so no test updates here.
The default is now much clearer to the user: `x => x * 1.1 - 0.1em`.
2025-04-27 21:04:39 +10:00

63 lines
1.6 KiB
Typst

// Test vectors.
--- math-vec-gap ---
#set math.vec(gap: 1em)
$ vec(1, 2) $
--- math-vec-align ---
$ vec(-1, 1, -1, align: #left)
vec(-1, 1, -1, align: #center)
vec(-1, 1, -1, align: #right) $
--- math-vec-align-explicit-alternating ---
// Test alternating alignment in a vector.
$ vec(
"a" & "a a a" & "a a",
"a a" & "a a" & "a",
"a a a" & "a" & "a a a",
) $
--- math-vec-wide ---
// Test wide cell.
$ v = vec(1, 2+3, 4) $
--- math-vec-delim-set ---
// Test alternative delimiter.
#set math.vec(delim: "[")
$ vec(1, 2) $
--- math-vec-delim-empty-string ---
// Error: 22-24 expected exactly one character
#set math.vec(delim: "")
--- math-vec-delim-not-single-char ---
// Error: 22-39 expected exactly one character
#set math.vec(delim: "not a delimiter")
--- math-vec-delim-invalid-char ---
// Error: 22-25 invalid delimiter: "%"
#set math.vec(delim: "%")
--- math-vec-delim-invalid-symbol ---
// Error: 22-33 invalid delimiter: "%"
#set math.vec(delim: sym.percent)
--- math-vec-delim-invalid-opening ---
// Error: 22-33 invalid delimiter: "%"
#set math.vec(delim: ("%", none))
--- math-vec-delim-invalid-closing ---
// Error: 22-33 invalid delimiter: "%"
#set math.vec(delim: (none, "%"))
--- math-vec-delim-size ---
// Test setting delimiter size.
$ vec(1, 2, 3) vec(delim-size: #100%, 1, 2, 3) $
#set math.vec(delim-size: x => calc.max(x - 5pt, x * 0.901))
$ vec(delim: "{", 1, 2, 3) vec(delim: "[", 1, 2, 3) $
--- math-vec-linebreaks ---
// Warning: 20-29 linebreaks are ignored in elements
// Hint: 20-29 use commas instead to separate each line
$ vec(a, b, c) vec(a \ b \ c) $