quarto-dev / quarto-dev/quarto-cli

Typst "Grid Customization" lists `body-width`, but it has no effect

Open Beginner friendly
#14,574 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

documentation typst
Dominant language
JavaScript
Stars
6k
Forks
458
Avg merge
1d 9h
Merged PRs (30d)
41

Description

What would you like to do?

Report an issue on quarto.org

Description

Page: https://quarto.org/docs/output-formats/typst.html#grid-customization

The Typst Grid Customization section documents three grid options:

Option Description (current docs)
margin-width Width of the margin note column
body-width Width of the main text column
gutter-width Gap between body text and margin

…and the example sets all three:

format:
  typst:
    grid:
      margin-width: 2in
      body-width: 4in
      gutter-width: 0.25in

However, body-width is silently ignored. Quarto's geometry calculation reads it but never uses it.
For reference, the mapping lives in typstGeometryFromPaperWidthmargin-width/gutter-width are consumed but body-width is not:

https://github.com/quarto-dev/quarto-cli/blob/e768e5c2d34381173aa3d43d8d3a332125647561/src/resources/filters/layout/meta.lua#L479-L496

If we view this as a docs issue, I think the solution is:

  1. Drop body-width from the Typst grid table. Remove it from the example.
  2. Clarify the two that work:
    • margin-width — width of the margin note column.
    • gutter-width — gap between the body and the margin column.
  3. Note that the body width is whatever space is left over and point to margin-geometry for full control.

However, we could potentially honor body-width if zero or one of margin-width and gutter-width is supplied, and warn if all three are supplied. @gordonwoodhull, if you think that's a better fix, feel free to relabel.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the Typst grid customization page linked in the issue and inspect the documented options and example. Check src/resources/filters/layout/meta.lua at typstGeometryFromPaperWidth to confirm the current behavior; done means the page documents only the supported settings, explains the remaining body width, and points to margin-geometry.

Written by the indexing model from the issue text.

Assessment

Domain
documentation
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
62/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.