From: Felix Schumacher Date: Fri, 3 Oct 2008 16:09:50 +0000 (+0200) Subject: Parameter koennen in to_html uebergeben werden X-Git-Url: https://git.internetallee.de/?a=commitdiff_plain;h=01cb993baacf66ac5f07f70f3d70671ffd4fc896;p=lueckentexte.git Parameter koennen in to_html uebergeben werden --- diff --git a/lueckentext.py b/lueckentext.py index fd9fb30..d476789 100644 --- a/lueckentext.py +++ b/lueckentext.py @@ -3,11 +3,17 @@ import re REPLACE_TEXT=re.compile('\[([^\]]+)\]', re.M) -def to_html(text=""): +def to_html(text="", params={}): result = text counter = 1 while REPLACE_TEXT.search(result): - result = REPLACE_TEXT.sub('' % ("l%d" % counter), result, 1) + key = 'l%d' % counter + css_class='todo' + todo = params.get(key, '') + solution = REPLACE_TEXT.search(result).group() + if "[%s]" % todo == solution: + css_class = 'ok' + result = REPLACE_TEXT.sub('' % (css_class, key, params.get(key, '')), result, 1) counter += 1 return '
\n%s\n
' % (result) @@ -17,4 +23,4 @@ def get_params(text=""): for value in REPLACE_TEXT.findall(text): result["l%d" % counter] = value counter += 1 - return result + return result diff --git a/text1.txt b/text1.txt index f507b1c..9fff70d 100644 --- a/text1.txt +++ b/text1.txt @@ -11,10 +11,26 @@ ... # doctest: +ELLIPSIS ... # doctest: +NORMALIZE_WHITESPACE
-Dies ein Lueckentext. -Er mehrere Worte und -mehrere Zeilen. Damit -ausgefuellt werden kann, sollte man +Dies ein Lueckentext. +Er mehrere Worte und +mehrere Zeilen. Damit +ausgefuellt werden kann, sollte man +deutsche Sprache kennen. +
+ +>>> print lueckentext.to_html( +... u"""Dies [ist] ein Lueckentext. Er [enthaelt] mehrere +... Worte und +... mehrere Zeilen. Damit [er] ausgefuellt werden kann, +... sollte man [die] deutsche Sprache kennen. +... """, {'l2': 'enthaelt', 'l1': 'test'} ) +... # doctest: +ELLIPSIS +... # doctest: +NORMALIZE_WHITESPACE +
+Dies ein Lueckentext. +Er mehrere Worte und +mehrere Zeilen. Damit +ausgefuellt werden kann, sollte man deutsche Sprache kennen.