footnote
ElementElement functions can be customized with set
and show
rules.
set
and show
rules.A footnote.
Include additional remarks and references on the same page with footnotes. A footnote will insert a superscript number that links to the note at the bottom of the page. Notes are numbered sequentially throughout your document and can break across multiple pages.
To customize the appearance of the entry in the footnote listing, see
footnote.entry
. The footnote itself is realized as
a normal superscript, so you can use a set rule on the
super
function to customize it.
Example
Check the docs for more details.
#footnote[https://typst.app/docs]

The footnote automatically attaches itself to the preceding word, even if
there is a space before it in the markup. To force space, you can use the
string #" "
or explicit horizontal spacing.
ParametersParameters are the inputs to a function. They are specified in parentheses after the function name.
numbering
How to number footnotes.
By default, the footnote numbering continues throughout your document. If you prefer per-page footnote numbering, you can reset the footnote counter in the page header. In the future, there might be a simpler way to achieve this.
Default: "1"
#set footnote(numbering: "*")
Footnotes:
#footnote[Star],
#footnote[Dagger]

body
The content to put into the footnote.
footnote.entry
functionElementElement functions can be customized with set
and show
rules.
set
and show
rules.An entry in a footnote list.
This function is not intended to be called directly. Instead, it is used in set and show rules to customize footnote listings.
Example
#show footnote.entry: set text(red)
My footnote listing
#footnote[It's down here]
has red text!

ParametersParameters are the inputs to a function. They are specified in parentheses after the function name.
note
The footnote for this entry. It's location can be used to determine the footnote counter state.
#show footnote.entry: it => {
let loc = it.note.location()
numbering(
"1: ",
..counter(footnote).at(loc),
)
it.note.body
}
Customized #footnote[Hello]
listing #footnote[World! 🌏]

separator
SettableSettable parameters can be customized for all following uses of the function with a set
rule.
set
rule.The separator between the document body and the footnote listing.
Default: line(length: 30%, stroke: 0.5pt)
#set footnote.entry(
separator: repeat[.]
)
Testing a different separator.
#footnote[
Unconventional, but maybe
not that bad?
]

clearance
SettableSettable parameters can be customized for all following uses of the function with a set
rule.
set
rule.The amount of clearance between the document body and the separator.
Default: 1em
#set footnote.entry(clearance: 3em)
Footnotes also need ...
#footnote[
... some space to breathe.
]

gap
SettableSettable parameters can be customized for all following uses of the function with a set
rule.
set
rule.The gap between footnote entries.
Default: 0.5em
#set footnote.entry(gap: 0.8em)
Footnotes:
#footnote[Spaced],
#footnote[Apart]

indent
SettableSettable parameters can be customized for all following uses of the function with a set
rule.
set
rule.The indent of each footnote entry.
Default: 1em
#set footnote.entry(indent: 0em)
Footnotes:
#footnote[No],
#footnote[Indent]
