X-Git-Url: https://git.mdrn.pl/redakcja.git/blobdiff_plain/662a8a111721df714e9c95f94db91d2d03d7b19d..ea335ef160fbe5f8488e8bef51a4706163ba9964:/apps/wiki/nice_diff.py diff --git a/apps/wiki/nice_diff.py b/apps/wiki/nice_diff.py index 612fa22a..6f6e6071 100755 --- a/apps/wiki/nice_diff.py +++ b/apps/wiki/nice_diff.py @@ -1,26 +1,31 @@ -#!/usr/bin/env python - +# -*- coding: utf-8 -*- +# +# This file is part of FNP-Redakcja, licensed under GNU Affero GPLv3 or later. +# Copyright © Fundacja Nowoczesna Polska. See NOTICE for more information. +# import difflib import re from django.template.loader import render_to_string from django.utils.html import escape as html_escape -DIFF_RE = re.compile(r"""\x00([+^-])""" ,re.UNICODE) -NAMES = { '+': 'added', '-': 'removed', '^': 'changed' } +DIFF_RE = re.compile(r"""\x00([+^-])""", re.UNICODE) +NAMES = {'+': 'added', '-': 'removed', '^': 'changed'} + def diff_replace(match): - return """""" % NAMES[match.group(1)] + return """""" % NAMES[match.group(1)] + def filter_line(line): - return DIFF_RE.sub(diff_replace, html_escape(line)).replace('\x01', '') + return DIFF_RE.sub(diff_replace, html_escape(line)).replace('\x01', '') + def html_diff_table(la, lb): - return render_to_string("wiki/diff_table.html", { - "changes": [(a[0],filter_line(a[1]), - b[0],filter_line(b[1]), - change) for a, b, change in difflib._mdiff(la, lb)] - }); - - -__all__ = ['html_diff_table'] \ No newline at end of file + return render_to_string("wiki/diff_table.html", { + "changes": [(a[0], filter_line(a[1]), b[0], filter_line(b[1]), change) + for a, b, change in difflib._mdiff(la, lb)], + }) + + +__all__ = ['html_diff_table']