Skip to content

Commits on Source 4

......@@ -42,6 +42,7 @@ import logging
import os
import re
import sys
from unicodedata import normalize
from urllib.parse import urlparse
from diffoscope import VERSION
......@@ -150,18 +151,19 @@ def convert(s, ponct=0, tag=''):
i = 0
t.write('\u200b')
return t.getvalue()
return normalize('NFC', t.getvalue())
def output_visual(visual, path, indentstr, indentnum):
logger.debug('including image for %s', visual.source)
indent = tuple(indentstr * (indentnum + x) for x in range(3))
anchor = output_anchor(path)
id = 'id="{}"'.format(anchor) if anchor else ''
return u"""{0[0]}<div class="difference">
{0[1]}<div class="diffheader">
{0[1]}<div class="diffcontrol">⊟</div>
{0[1]}<div><span class="source">{1}</span>
{0[2]}<a class="anchor" href="#{2}" name="{2}">\xb6</a>
{0[1]}<div {5}><span class="source">{1}</span>
{0[2]}<a class="anchor" href="#{2}">\xb6</a>
{0[1]}</div>
{0[1]}</div>
{0[1]}<div class="difference"><img src=\"data:{3},{4}\" alt=\"compared images\" /></div>
......@@ -171,12 +173,14 @@ def output_visual(visual, path, indentstr, indentnum):
anchor,
visual.data_type,
visual.content,
id,
)
def output_node_frame(difference, path, indentstr, indentnum, body):
indent = tuple(indentstr * (indentnum + x) for x in range(3))
anchor = output_anchor(path)
id = 'id="{}"'.format(anchor) if anchor else ''
dctrl_class, dctrl = (
("diffcontrol", u'')
if difference.has_visible_children()
......@@ -185,8 +189,8 @@ def output_node_frame(difference, path, indentstr, indentnum, body):
if difference.source1 == difference.source2:
header = u"""{0[1]}<div class="{1}">{2}</div>
{0[1]}<div><span class="diffsize">{3}</span></div>
{0[1]}<div><span class="source">{5}</span>
{0[2]}<a class="anchor" href="#{4}" name="{4}">\xb6</a>
{0[1]}<div {6}><span class="source">{5}</span>
{0[2]}<a class="anchor" href="#{4}">\xb6</a>
{0[1]}</div>
""".format(
indent,
......@@ -195,13 +199,14 @@ def output_node_frame(difference, path, indentstr, indentnum, body):
sizeof_fmt(difference.size()),
anchor,
html.escape(difference.source1),
id,
)
else:
header = u"""{0[1]}<div class="{1} diffcontrol-double">{2}</div>
{0[1]}<div><span class="diffsize">{3}</span></div>
{0[1]}<div><span class="source">{5}</span> vs.</div>
{0[1]}<div><span class="source">{6}</span>
{0[2]}<a class="anchor" href="#{4}" name="{4}">\xb6</a>
{0[1]}<div {7}><span class="source">{6}</span>
{0[2]}<a class="anchor" href="#{4}">\xb6</a>
{0[1]}</div>
""".format(
indent,
......@@ -211,6 +216,7 @@ def output_node_frame(difference, path, indentstr, indentnum, body):
anchor,
html.escape(difference.source1),
html.escape(difference.source2),
id,
)
return PartialString.numl(
......@@ -305,9 +311,7 @@ def output_header(css_url, our_css_url=False, icon_url=None):
% our_css_url
)
else:
css_style = (
u'<style type="text/css">\n' + templates.STYLES + u'</style>\n'
)
css_style = '<style>\n{}</style>\n'.format(templates.STYLES)
if icon_url:
favicon = icon_url
else:
......
......@@ -194,7 +194,7 @@ $(function() {
$(".diffcontrol-nochildren").show();
});
</script>
<style type="text/css">
<style>
.diffoscope table.diff tr.ondemand td, .diffoscope div.ondemand-details {
background: #f99;
text-align: center;
......@@ -228,6 +228,7 @@ DIFFNODE_LIMIT = """<div class="error">Max report size reached</div>
UD_TABLE_HEADER = """<table class="diff">
<colgroup><col class="colines"/><col class="coldiff"/>
<col class="colines"/><col class="coldiff"/></colgroup>
<tr style="display:none;"><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td></tr>
"""
UD_TABLE_FOOTER = """<tr class="ondemand"><td colspan="4">
......