diff --git a/src/construct/wikilink.rs b/src/construct/wikilink.rs --- a/src/construct/wikilink.rs +++ b/src/construct/wikilink.rs @@ -31,7 +31,10 @@ tokenizer.parse_state.options.constructs.wikilink && tokenizer.current == Some(b'['); if start_conditions && tokenizer.tokenize_state.size == 0 { tokenizer.tokenize_state.size += 1; - tokenizer.attempt(State::Next(MoveName::WikilinkStart), State::Nok); + tokenizer.attempt( + State::Next(MoveName::WikilinkStart), + State::Next(MoveName::TextBeforeLabelStartLink), + ); tokenizer.consume(); return State::Ok; } else if start_conditions && tokenizer.tokenize_state.size == 1 { @@ -52,7 +55,9 @@ }); State::Next(MoveName::WikilinkLabelStart) } else { tokenizer.tokenize_state.size = 0; - State::Nok + + // Resume the "regular" sequence of state transitions + State::Retry(MoveName::TextBeforeLabelStartLink) } }