From 27d863b87527fa2676d58ef2362b9162d004d04b Mon Sep 17 00:00:00 2001 From: Tom Alexander Date: Fri, 14 Jul 2023 20:55:16 -0400 Subject: [PATCH] Fix the simple test by allowing bold to start/end with <> and by capturing trailing whitespace from radio links. --- src/parser/radio_link.rs | 1 + src/parser/text_markup.rs | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/parser/radio_link.rs b/src/parser/radio_link.rs index e51927fb..d0919772 100644 --- a/src/parser/radio_link.rs +++ b/src/parser/radio_link.rs @@ -32,6 +32,7 @@ pub fn radio_link<'r, 's>(context: Context<'r, 's>, input: &'s str) -> Res<&'s s for radio_target in radio_targets { let rematched_target = rematch_target(context, radio_target, input); if let Ok((remaining, rematched_target)) = rematched_target { + let (remaining, _) = space0(remaining)?; let source = get_consumed(input, remaining); return Ok(( remaining, diff --git a/src/parser/text_markup.rs b/src/parser/text_markup.rs index f2d85f3f..f6fb816c 100644 --- a/src/parser/text_markup.rs +++ b/src/parser/text_markup.rs @@ -205,7 +205,7 @@ pub fn pre<'r, 's>(context: Context<'r, 's>, input: &'s str) -> Res<&'s str, ()> match preceding_character { // If None, we are at the start of the file which is technically the beginning of a line. None | Some('\r') | Some('\n') | Some(' ') | Some('\t') | Some('-') | Some('(') - | Some('{') | Some('\'') | Some('"') => {} + | Some('{') | Some('\'') | Some('"') | Some('<') => {} Some(_) => { // Not at start of line, cannot be a heading return Err(nom::Err::Error(CustomError::MyError(MyError( @@ -218,7 +218,7 @@ pub fn pre<'r, 's>(context: Context<'r, 's>, input: &'s str) -> Res<&'s str, ()> #[tracing::instrument(ret, level = "debug")] pub fn post<'r, 's>(context: Context<'r, 's>, input: &'s str) -> Res<&'s str, ()> { - let (remaining, _) = alt((recognize(one_of(" \r\n\t-.,;:!?')}[\"")), line_ending))(input)?; + let (remaining, _) = alt((recognize(one_of(" \r\n\t-.,;:!?')}[\">")), line_ending))(input)?; Ok((remaining, ())) }