Выход из амперсандов в Blaze Html
Я хочу поставить HTML-сущность (в частности, ©
) в мой документ. Однако, если я наберу это и кормить его как Text
прямо в пылающий комбинатор, амперсанд экранирован html и выходит буквально ©
- вернее, выводимый HTML ©
что отчасти иронично.
(Если я использую blaze-from-html
на HTML, который содержит ©
, blaze-from-html
превращает его в символ авторского права Unicode "©
", который работает, но я все еще хотел бы знать, можно ли было получить доступ к низкоуровневому HTML с помощью blaze и ввести литеральный html-источник &
.)
1 ответ
Решение
Если вы используете пламя Text.Blaze.Html.toHtml
функция, соответствующая preEscapedToHtml
функция, которая не будет избегать сущностей. Пример сеанса GHCI -
λ> renderHtml $ toHtml "©"
"©"
λ> renderHtml $ preEscapedToHtml "©"
"©"