Files
zulip/zerver/lib/html_diff.py
Anders Kaseorg 4b83003b3e html_diff: Remove unused highlight_with_class function.
Signed-off-by: Anders Kaseorg <anders@zulip.com>
2021-08-19 01:53:47 -07:00

22 lines
567 B
Python

from typing import Optional
import lxml
from lxml.html.diff import htmldiff
def highlight_html_differences(s1: str, s2: str, msg_id: Optional[int] = None) -> str:
retval = htmldiff(s1, s2)
fragment = lxml.html.fromstring(retval)
for elem in fragment.cssselect("del"):
elem.tag = "span"
elem.set("class", "highlight_text_deleted")
for elem in fragment.cssselect("ins"):
elem.tag = "span"
elem.set("class", "highlight_text_inserted")
retval = lxml.html.tostring(fragment, encoding="unicode")
return retval