diff --git a/src/import/markdown_extract_text.cpp b/src/import/markdown_extract_text.cpp index faa6fa05..14ece018 100644 --- a/src/import/markdown_extract_text.cpp +++ b/src/import/markdown_extract_text.cpp @@ -135,6 +135,62 @@ const wchar_t* lily_of_the_valley::markdown_extract_text::operator()(const std:: continue; } } + // block quotes + else if (*start == L'&') + { + if (!isEscaping) + { + if (std::wcsncmp(start, L"&", 5) == 0) + { + add_character(L'&'); + previousChar = L'&'; + start += 5; + continue; + } + else if (std::wcsncmp(start, L""", 6) == 0) + { + add_character(L'\"'); + previousChar = L'\"'; + start += 6; + continue; + } + else if (std::wcsncmp(start, L"'", 6) == 0) + { + add_character(L'\''); + previousChar = L'\''; + start += 6; + continue; + } + else if (std::wcsncmp(start, L">", 4) == 0) + { + add_character(L'>'); + previousChar = L'>'; + start += 4; + continue; + } + else if (std::wcsncmp(start, L"<", 4) == 0) + { + add_character(L'<'); + previousChar = L'<'; + start += 4; + continue; + } + else if (std::wcsncmp(start, L"≥", 4) == 0) + { + add_characters(L">="); + previousChar = L'='; + start += 4; + continue; + } + else if (std::wcsncmp(start, L"≤", 4) == 0) + { + add_characters(L"<="); + previousChar = L'='; + start += 4; + continue; + } + } + } // code blocks else if (*start == L'`') {