How do I include custom references to items in a table?

Slightly shortened:

#show figure.where(kind: "req"): it => it.body // remove block

#let req-counter = counter("req")
#req-counter.update(1)
#let Req(text, priority) = {
  let no() = req-counter.display() + req-counter.step()
  let number() = req-counter.get().first()
  let req() = figure(kind: "req", supplement: "Req.", numbering: "1.")[]
  (context [#no()#req()#label("req:" + str(number()))], text, priority)
}

#table(
  columns: 3,
  align: (center, left, center),
  stroke: none,
  table.hline(stroke: 0.75pt, position: bottom),
  table.header[*No*][*Requirement*][*Priority*],
  ..Req[A requirement on computational load][1],
  ..Req[A requirement on UI][2],
)

@req:1

@req:2

1 Like