Fix matching only the specific markup.
This commit is contained in:
parent
e6c5670a85
commit
62c226fb47
@ -83,7 +83,7 @@ pub fn strike_through<'r, 's>(
|
|||||||
|
|
||||||
#[tracing::instrument(ret, level = "debug")]
|
#[tracing::instrument(ret, level = "debug")]
|
||||||
pub fn verbatim<'r, 's>(context: Context<'r, 's>, input: &'s str) -> Res<&'s str, Verbatim<'s>> {
|
pub fn verbatim<'r, 's>(context: Context<'r, 's>, input: &'s str) -> Res<&'s str, Verbatim<'s>> {
|
||||||
let text_markup_string_specialized = text_markup_string("+");
|
let text_markup_string_specialized = text_markup_string("=");
|
||||||
let (remaining, contents) = text_markup_string_specialized(context, input)?;
|
let (remaining, contents) = text_markup_string_specialized(context, input)?;
|
||||||
let source = get_consumed(input, remaining);
|
let source = get_consumed(input, remaining);
|
||||||
Ok((remaining, Verbatim { source, contents }))
|
Ok((remaining, Verbatim { source, contents }))
|
||||||
@ -91,7 +91,7 @@ pub fn verbatim<'r, 's>(context: Context<'r, 's>, input: &'s str) -> Res<&'s str
|
|||||||
|
|
||||||
#[tracing::instrument(ret, level = "debug")]
|
#[tracing::instrument(ret, level = "debug")]
|
||||||
pub fn code<'r, 's>(context: Context<'r, 's>, input: &'s str) -> Res<&'s str, Code<'s>> {
|
pub fn code<'r, 's>(context: Context<'r, 's>, input: &'s str) -> Res<&'s str, Code<'s>> {
|
||||||
let text_markup_string_specialized = text_markup_string("+");
|
let text_markup_string_specialized = text_markup_string("~");
|
||||||
let (remaining, contents) = text_markup_string_specialized(context, input)?;
|
let (remaining, contents) = text_markup_string_specialized(context, input)?;
|
||||||
let source = get_consumed(input, remaining);
|
let source = get_consumed(input, remaining);
|
||||||
Ok((remaining, Code { source, contents }))
|
Ok((remaining, Code { source, contents }))
|
||||||
@ -111,7 +111,7 @@ fn _text_markup_object<'r, 's, 'x>(
|
|||||||
marker_symbol: &'x str,
|
marker_symbol: &'x str,
|
||||||
) -> Res<&'s str, Vec<Object<'s>>> {
|
) -> Res<&'s str, Vec<Object<'s>>> {
|
||||||
let (remaining, _) = pre(context, input)?;
|
let (remaining, _) = pre(context, input)?;
|
||||||
let (remaining, open) = marker(remaining)?;
|
let (remaining, open) = tag(marker_symbol)(remaining)?;
|
||||||
let text_markup_end_specialized = text_markup_end(open);
|
let text_markup_end_specialized = text_markup_end(open);
|
||||||
let parser_context =
|
let parser_context =
|
||||||
context.with_additional_node(ContextElement::ExitMatcherNode(ExitMatcherNode {
|
context.with_additional_node(ContextElement::ExitMatcherNode(ExitMatcherNode {
|
||||||
@ -147,7 +147,7 @@ fn _text_markup_string<'r, 's, 'x>(
|
|||||||
marker_symbol: &'x str,
|
marker_symbol: &'x str,
|
||||||
) -> Res<&'s str, &'s str> {
|
) -> Res<&'s str, &'s str> {
|
||||||
let (remaining, _) = pre(context, input)?;
|
let (remaining, _) = pre(context, input)?;
|
||||||
let (remaining, open) = marker(remaining)?;
|
let (remaining, open) = tag(marker_symbol)(remaining)?;
|
||||||
let text_markup_end_specialized = text_markup_end(open);
|
let text_markup_end_specialized = text_markup_end(open);
|
||||||
let parser_context =
|
let parser_context =
|
||||||
context.with_additional_node(ContextElement::ExitMatcherNode(ExitMatcherNode {
|
context.with_additional_node(ContextElement::ExitMatcherNode(ExitMatcherNode {
|
||||||
@ -195,11 +195,6 @@ pub fn post<'r, 's>(context: Context<'r, 's>, input: &'s str) -> Res<&'s str, ()
|
|||||||
Ok((remaining, ()))
|
Ok((remaining, ()))
|
||||||
}
|
}
|
||||||
|
|
||||||
#[tracing::instrument(ret, level = "debug")]
|
|
||||||
pub fn marker(input: &str) -> Res<&str, &str> {
|
|
||||||
alt((tag("*"), tag("/"), tag("_"), tag("="), tag("~"), tag("+")))(input)
|
|
||||||
}
|
|
||||||
|
|
||||||
fn text_markup_end(
|
fn text_markup_end(
|
||||||
marker_symbol: &str,
|
marker_symbol: &str,
|
||||||
) -> impl for<'r, 's> Fn(Context<'r, 's>, &'s str) -> Res<&'s str, &'s str> {
|
) -> impl for<'r, 's> Fn(Context<'r, 's>, &'s str) -> Res<&'s str, &'s str> {
|
||||||
|
Loading…
Reference in New Issue
Block a user