diff -urN v9/ezhtml.py v10/ezhtml.py --- v9/ezhtml.py 2018-09-18 22:19:51.000000000 +0900 +++ v10/ezhtml.py 2018-09-20 03:53:08.000000000 +0900 @@ -15,7 +15,7 @@ s = s.replace(f, t) return s -def dump_tag(tag, v): +def dump_tag(tag, v, pre): lst = bak = tag.split(' ') if lst[-1] == '/': lst = lst[:-1] @@ -23,7 +23,7 @@ lst = [ lst[0][:-1] ] + lst[1:] s = '<' + ' '.join(lst) + '>' if v != '/': - s += html_dump(v) + s += html_dump( v, lst[0].lower() == 'pre' ) if lst == bak: s += '' return s @@ -31,14 +31,15 @@ def get_tag_v(d): return list( d.items() )[0] -def html_dump(o): +def html_dump(o, pre=False): if not o: return '' if type(o) == list: - return '\n'.join( map(html_dump, o) ) + delim = '' if pre else '\n' + return delim.join( map( lambda e: html_dump(e, pre), o ) ) if type(o) == dict: (tag, v) = get_tag_v(o) - return dump_tag(tag, v) + return dump_tag(tag, v, pre) return cv_amp(o) def get_tag(s):