Skip to content

如何手动输入参考文献?

如何手动输入参考文献?

相关问题:如何实现 LaTeX 的 bibitem

typst
#let bibitem(body) = figure(kind: "bibitem", supplement: none, body)
#show figure.where(kind: "bibitem"): it => {
  set align(left)
  box(width: 2em, it.counter.display("[1]"))
  it.body
  parbreak()
}
#show ref: it => {
  let e = it.element
  if e.func() == figure and e.kind == "bibitem" {
    let loc = e.location()
    return link(loc, numbering("[1]", ..e.counter.at(loc)))
  }
  it
}

@ref1 @ref2

#heading(numbering: none)[参考文献]
#bibitem[你说得对] <ref1>
#bibitem[但是原神] <ref2>
Typst compiled image

可是,为什么要用 figure 来实现呢?

因为目前(0.12 版本)没有自定义元素,figure 有个 kind 属性可以直接 query,而且 supplementcaption 可以用来提供额外信息,所以用它非常合适。

更新:0.12 版本 figure 默认 align(center),所以增加了一行 set align(left)

贡献者

The avatar of contributor named as 梦飞翔 梦飞翔
The avatar of contributor named as flaribbit flaribbit
The avatar of contributor named as QuadnucYard QuadnucYard

页面历史

Comments
  • Latest
  • Oldest
  • Hottest

基于 MIT 许可发布