A callout with an id loses its number in the default title

Chiusa Adatta ai principianti
#1,020 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Una pull request collegata è già stata integrata.

  • #1050 di @cscheid — integrata

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
76/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
rust
Ambito
backend

Direzione di ricerca

Inizia da crates/quarto-core/src/transforms/callout_resolve.rs, intorno alle righe 240–262, dove l’issue indica che viene creato il titolo predefinito e che ref_type è disponibile. Esegui il rendering del file index.qmd fornito con q2 render index.qmd --to html e controlla il titolo del callout insieme al testo del riferimento. Il lavoro è completo quando il titolo predefinito include lo stesso prefisso e numero del riferimento incrociato, in linea con Quarto 1.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Bug description

A callout with an id such as nte-x and no title gets the title "Note 1" in Quarto 1.
q2 gives it the title "Note".
The reference @nte-x reads "Note 1" in both engines, so the page names a number that the callout does not show.

The default title is built from the callout type alone.
The transform knows that the callout is a cross-reference target (ref_type), but it does not add the number:

https://github.com/quarto-dev/q2/blob/a2a1cb948b1aec42c93200b880dc73567160f691/crates/quarto-core/src/transforms/callout_resolve.rs#L240-L262

The comment in that block expects such a callout to carry a cross-reference prefix in its title, so the number seems meant to be there.

Steps to reproduce

index.qmd:

---
format: html
---

::: {#nte-x .callout-note}
Body.
:::

See @nte-x.

Run q2 and Quarto 1 on it:

q2 render index.qmd --to html
quarto render index.qmd --to html
Actual behavior

q2 gives the callout the title "Note", while the link text has the number:

<div class="callout-title-container flex-fill">
Note
</div>
...
<p>See <a href="#nte-x" class="quarto-xref">Note 1</a>.</p>

Quarto 1.12.0 writes "Note 1" in both places.

Expected behavior

The title reads "Note 1", as in Quarto 1.
The default title should use the same prefix and number as the cross-reference.

Your environment
  • q2: Q2 (quarto 2) 0.40.0-nightly.20261101 (nightly built from a2a1cb9).
  • Quarto 1 for comparison: 1.12.0 (pre-release).
  • OS: macOS 27.2 (arm64).
  • Terminal, no IDE.
Lingua principale
Rust
Stelle
293
Fork
20
Merge medio
7h 45m
PR unite (30g)
187

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di quarto-dev/q2

Tutte le issue di quarto-dev/q2

Issue simili

Altre issue su Rust

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.