-site = LanguageDef ('en', _('English'), webext='')
-fr = LanguageDef ('fr', _('French'), double_punct_char_sep=' ')
-es = LanguageDef ('es', _('Spanish') )
-#nl = LanguageDef ('nl', 'Nederlands')
+site = LanguageDef ('en', 'English', webext='')
+
+html_page_body = re.compile ('</?body>', re.M | re.I)
+french_html_typo_rules = ((' :', ' :'),
+ (' ;', ' ;'),
+ (' ?', ' ?'),
+ (' !', ' !'))
+
+def french_html_filter (page):
+ parts = html_page_body.split (page)
+ for r in french_html_typo_rules:
+ parts[1] = parts[1].replace (r[0], r[1])
+ return parts[0] + '<body>' + parts[1] + '</body>' + parts[2]
+
+fr = LanguageDef ('fr', 'français', double_punct_char_sep=' ', html_filter = french_html_filter)
+es = LanguageDef ('es', 'español')
+de = LanguageDef ('de', 'deutsch')