diff --git a/crates/typst-ide/src/definition.rs b/crates/typst-ide/src/definition.rs index a54329892..1ba198b02 100644 --- a/crates/typst-ide/src/definition.rs +++ b/crates/typst-ide/src/definition.rs @@ -75,7 +75,10 @@ pub fn definition( let label = Label::new(PicoStr::intern(node.cast::()?.target())); let selector = Selector::Label(label); let elem = document?.introspector.query_first(&selector)?; - return Some(Definition::Span(elem.span())); + let labelled_at = elem.labelled_at().or(elem.span()); + if !labelled_at.is_detached() { + return Some(Definition::Span(labelled_at)); + } } _ => {}