mirror of
https://github.com/typst/typst
synced 2025-06-20 12:22:53 +08:00
Hint for label in both document and bibliography (#6457)
This commit is contained in:
parent
f32cd5b3e1
commit
0bc68df2a9
@ -5,7 +5,7 @@ use crate::diag::{bail, At, Hint, SourceResult};
|
|||||||
use crate::engine::Engine;
|
use crate::engine::Engine;
|
||||||
use crate::foundations::{
|
use crate::foundations::{
|
||||||
cast, elem, Cast, Content, Context, Func, IntoValue, Label, NativeElement, Packed,
|
cast, elem, Cast, Content, Context, Func, IntoValue, Label, NativeElement, Packed,
|
||||||
Show, Smart, StyleChain, Synthesize,
|
Repr, Show, Smart, StyleChain, Synthesize,
|
||||||
};
|
};
|
||||||
use crate::introspection::{Counter, CounterKey, Locatable};
|
use crate::introspection::{Counter, CounterKey, Locatable};
|
||||||
use crate::math::EquationElem;
|
use crate::math::EquationElem;
|
||||||
@ -229,8 +229,15 @@ impl Show for Packed<RefElem> {
|
|||||||
// RefForm::Normal
|
// RefForm::Normal
|
||||||
|
|
||||||
if BibliographyElem::has(engine, self.target) {
|
if BibliographyElem::has(engine, self.target) {
|
||||||
if elem.is_ok() {
|
if let Ok(elem) = elem {
|
||||||
bail!(span, "label occurs in the document and its bibliography");
|
bail!(
|
||||||
|
span,
|
||||||
|
"label `{}` occurs both in the document and its bibliography",
|
||||||
|
self.target.repr();
|
||||||
|
hint: "change either the {}'s label or the \
|
||||||
|
bibliography key to resolve the ambiguity",
|
||||||
|
elem.func().name(),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
return Ok(to_citation(self, engine, styles)?.pack().spanned(span));
|
return Ok(to_citation(self, engine, styles)?.pack().spanned(span));
|
||||||
|
@ -51,7 +51,8 @@ $ A = 1 $ <eq2>
|
|||||||
// Test ambiguous reference.
|
// Test ambiguous reference.
|
||||||
= Introduction <arrgh>
|
= Introduction <arrgh>
|
||||||
|
|
||||||
// Error: 1-7 label occurs in the document and its bibliography
|
// Error: 1-7 label `<arrgh>` occurs both in the document and its bibliography
|
||||||
|
// Hint: 1-7 change either the heading's label or the bibliography key to resolve the ambiguity
|
||||||
@arrgh
|
@arrgh
|
||||||
#bibliography("/assets/bib/works.bib")
|
#bibliography("/assets/bib/works.bib")
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user