Quoting the same source multiple times with different pages

I’m using a hayagriva YAML file and enjoy using it so far, but I was wondering what the proper way to cite various pages from a source is.

I.e. there’s a book, which is then cited several times, but each time with a different page range.

example:
my bibliography.yaml has the entry

book:
  type: book
  title: A book
  author: Author, An
  date: 2025

I understand that there might be good reasons to simply create a , and entry in the .yaml file for each page range, but at the same time I’m wondering if it could be done differently/more efficiently, with something like (bib)latex’s \parencite[20–22]{book} via something like this made up syntax:

foo0 @book
foo1 range 20-22 #cite(<book>, page-range: 20-22)
foo2 range 500-520 #cite(<book>, page-range: 500-520)

Alternatively I was also thinking about having entries for the various ranges within the hayagriva file itself, but I’ve also not been successful in finding answers.

I’m sorry if this has already been discussed or is written somewhere in the documentation, but I’ve simply not been able to find any information about how to deal with with it, let alone any best practices.

See the documentation for the supplement parameter of the cite command (at https://typst.app/docs/reference/model/cite/#parameters-supplement).

You want something like

 #cite(<book>, supplement: [20-22])

or

@book[p.~500-520]

Just what you enter depends on the bibliography format you are using.

1 Like

Thank you so much! I somehow must have missed that parameter when reading the documentation, but at least the solution is very straight forward :sweat_smile: