Да, это ОЧЕНЬ сложно, вероятно, уровень сложности 20.
Когда мы получаем данные из выделения, мы получаем чистый HTML:
<ul>
<li>какой-то текст</li>
</ul>
Здесь ничего нет о различии между * и +.
К тому же, если вы просто выделите несколько элементов из длинного списка, вы получите:
<li>какой-то текст</li>
<li>какой-то другой текст</li>
Это даже не указывает на ul или ol.
То, что мы делаем для цитирования, это:
HTML → Markdown
Это процесс с потерей данных и подверженный ошибкам. У нас есть множество обходных путей для очистки HTML перед конвертацией.
Изменение на:
HTML → Исходный Markdown потребовало бы обратного отображения строки/столбца HTML → Markdown. В настоящее время это не поддерживается в markdown.it.