このページはまだ翻訳されていません。原文の内容が表示されています。
Standard library
A module that contains all globally accessible items.
Using "shadowed" definitions
The std
module is useful whenever you overrode a name from the global
scope (this is called shadowing). For instance, you might have used the
name text
for a parameter. To still access the text
element, write
std.text
.
#let par = [My special paragraph.]
#let special(text) = {
set std.text(style: "italic")
set std.par.line(numbering: "1")
text
}
#special(par)
#lorem(10)

Conditional access
You can also use this in combination with the dictionary constructor to conditionally access global definitions. This can, for instance, be useful to use new or experimental functionality when it is available, while falling back to an alternative implementation if used on an older Typst version. In particular, this allows us to create polyfills.
This can be as simple as creating an alias to prevent warning messages, for
example, conditionally using pattern
in Typst version 0.12, but using
tiling
in newer versions. Since the parameters accepted by the tiling
function match those of the older pattern
function, using the tiling
function when available and falling back to pattern
otherwise will unify
the usage across all versions. Note that, when creating a polyfill,
sys.version
can also be very useful.
#let tiling = if "tiling" in std { tiling } else { pattern }
...