diff --git a/chapters/ch01.typ b/chapters/ch01.typ index 2ea25dd..5ad6d12 100644 --- a/chapters/ch01.typ +++ b/chapters/ch01.typ @@ -67,6 +67,28 @@ Typst 中的标题使用 `=` 表示,其后跟着标题的内容。`=` 的数 ] )\ +== 脚注 + +从 v0.4 版本开始,Typst 原生支持了脚注功能。本模板中,默认每一章节的脚注编号从 1 开始。 + +#table( + columns: (1fr, 1fr), + [ + #set align(center) + 代码 + ], + [ + #set align(center) + 渲染结果 + ], + ```typ + Typst 支持添加脚注#footnote[这是一个脚注。]。 +```, +[ + Typst 支持添加脚注#footnote[这是一个脚注。]。 +] +)\ + == 图片 在 Typst 中插入图片的默认方式是 `image` 函数。如果需要给图片增加标题,或者在文章中引用图片,则需要将其放置在 `figure` 中,就像下面这样: diff --git a/functions/numbering.typ b/functions/numbering.typ index 2d626f2..6e521ac 100644 --- a/functions/numbering.typ +++ b/functions/numbering.typ @@ -1,6 +1,7 @@ #let partcounter = counter("part") #let chaptercounter = counter("chapter") #let appendixcounter = counter("appendix") +#let footnotecounter = counter(footnote) #let rawcounter = counter(figure.where(kind: "code")) #let imagecounter = counter(figure.where(kind: image)) #let tablecounter = counter(figure.where(kind: table)) diff --git a/functions/underline.typ b/functions/underline.typ index b456e71..2f04a6a 100644 --- a/functions/underline.typ +++ b/functions/underline.typ @@ -1,7 +1,7 @@ #import "../functions/style.typ": textbf #let chineseunderline(s, width: 300pt, bold: false) = { - let chars = s.split("") + let chars = s.clusters() let n = chars.len() style(styles => { let i = 0 diff --git a/install_typst.ps1 b/install_typst.ps1 index c579b6d..d005527 100644 --- a/install_typst.ps1 +++ b/install_typst.ps1 @@ -3,7 +3,8 @@ $OutputEncoding = [System.Text.Encoding]::UTF8 # Check if Rust is already installed if (Get-Command cargo -ErrorAction SilentlyContinue) { - Write-Output "检测到 Rust 已安装,跳过安装。" + Write-Output "检测到 Rust 已安装,尝试更新。" + rustup update } else { # Download the installer diff --git a/template.typ b/template.typ index 727806b..798f6af 100644 --- a/template.typ +++ b/template.typ @@ -161,6 +161,7 @@ if it.numbering != none { chaptercounter.step() } + footnotecounter.update(()) imagecounter.update(()) tablecounter.update(()) rawcounter.update(())