From efb28184a31bbd80fa6f7be33f82a09ad3048c23 Mon Sep 17 00:00:00 2001 From: "byte[]" Date: Thu, 2 Jan 2020 19:57:46 -0500 Subject: [PATCH] allow blockquote cite context to consume all markup --- lib/textile/parser.ex | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/lib/textile/parser.ex b/lib/textile/parser.ex index a11b457b..b1720212 100644 --- a/lib/textile/parser.ex +++ b/lib/textile/parser.ex @@ -227,22 +227,25 @@ defmodule Textile.Parser do end # - # bq_cite_text = literal | char | space | quicktxt; + # bq_cite_text = (?!bq_cite_open); # # Note that text is not escaped here because it will be escaped # when the tree is flattened - defp bq_cite_text(_parser, [{:literal, lit} | r_tokens]) do - {:ok, [{:text, lit}], r_tokens} + defp bq_cite_text(_parser, [{:bq_cite_open, _open} | _rest]) do + {:error, "Expected cite tokens"} end defp bq_cite_text(_parser, [{:char, lit} | r_tokens]) do {:ok, [{:text, <>}], r_tokens} end + defp bq_cite_text(_parser, [{:quicktxt, lit} | r_tokens]) do + {:ok, [{:text, <>}], r_tokens} + end defp bq_cite_text(_parser, [{:space, _} | r_tokens]) do {:ok, [{:text, " "}], r_tokens} end - defp bq_cite_text(_parser, [{:quicktxt, lit} | r_tokens]) do - {:ok, [{:text, <>}], r_tokens} + defp bq_cite_text(_parser, [{_token, t} | r_tokens]) do + {:ok, [{:text, t}], r_tokens} end defp bq_cite_text(_parser, _tokens) do {:error, "Expected cite tokens"}