Alir3z4 / Alir3z4/html2text

Character reference replacement results in raw HTML

Abierto
#383 0 comentarios 1 reacción 0 asignados Ver en GitHub
Lenguaje dominante
Python
Estrellas
2.2k
Forks
296
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

As a result of #109, character and entity references are unconditionally dereferenced. This causes HTML which contains character references representing HTML-like text to be converted to markdown with raw HTML by html2text 2017.10.4 and later:

$ echo "

Horizontal rule is <hr>

" | html2markdown
Horizontal rule is

To make the problem clearer, consider round-tripping from HTML to Markdown back to HTML:

$ echo "

Horizontal rule is <hr>

" | html2markdown | cmark

Horizontal rule is

$ echo "

Horizontal rule is <hr>

" | html2markdown | cmark --unsafe

Horizontal rule is


The conversion to markdown changes the meaning of the content by dereferencing the character references.

To satisfy the request in #109, I suggest preserving character and entity references which would be interpreted as [Raw HTML](https://spec.commonmark.org/0.30/#raw-html) if dereferenced. That would avoid producing unnecessary character references (as requested in #109) and also avoid changing the meaning of the content when it contains HTML-like text.

Thanks for considering,
Kevin

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.