[Pywikipedia-l] SVN: [4846] trunk/pywikipedia/fixes.py

wikipedian at svn.wikimedia.org wikipedian at svn.wikimedia.org
Thu Jan 10 14:01:13 UTC 2008


Revision: 4846
Author:   wikipedian
Date:     2008-01-10 14:01:13 +0000 (Thu, 10 Jan 2008)

Log Message:
-----------
added plenk removal to grammar-de
added umlaut support in grammar-de
added exceptions for grammar-de, syntax, syntax-safe

Modified Paths:
--------------
    trunk/pywikipedia/fixes.py

Modified: trunk/pywikipedia/fixes.py
===================================================================
--- trunk/pywikipedia/fixes.py	2008-01-10 14:00:11 UTC (rev 4845)
+++ trunk/pywikipedia/fixes.py	2008-01-10 14:01:13 UTC (rev 4846)
@@ -92,11 +92,12 @@
 			# Keine führende Null beim Datum
 			#(u'0(\d+)\. (Januar|Februar|März|April|Mai|Juni|Juli|August|September|Oktober|November|Dezember)', r'\1. \2'),
 			# Kein Leerzeichen nach Komma
-			(u'([a-z](\]\])?,)((\[\[)?[a-zA-Z])',                                                                          r'\1 \3'),
+			(u'([a-zäöüß](\]\])?,)((\[\[)?[a-zäöüA-ZÄÖÜ])',                                                                          r'\1 \3'),
             # Leerzeichen und Komma vertauscht
-            (u'([a-z](\]\])?) ,((\[\[)?[a-zA-Z])',                                                                          r'\1, \3'),
-            # Leerzeichen auch vor dem Komma
-            (u'([a-z](\]\])?) , ((\[\[)?[a-zA-Z])',                                                                          r'\1, \3'),
+            (u'([a-zäöüß](\]\])?) ,((\[\[)?[a-zäöüA-ZÄÖÜ])',                                                                          r'\1, \3'),
+            # Plenks (d. h. Leerzeichen auch vor dem Komma/Punkt/Semikolon/Doppelpunkt/Ausrufezeichen/Fragezeichen)
+            # Achtung bei Französisch: http://de.wikipedia.org/wiki/Plenk#Sonderfall_Franz.C3.B6sisch
+            (u'([a-zäöüß](\]\])?) ([,\.;:!\?]) ((\[\[)?[a-zäöüA-ZÄÖÜ])',                                                                          r'\1\3 \4'),
 			#(u'([a-z]\.)([A-Z])',                                                                             r'\1 \2'),
 		],
 		'exceptions': {
@@ -104,7 +105,8 @@
 				'nowiki',
 				'comment',
 				'math',
-				'pre',           # because of code examples
+                'pre',           # because of code examples
+                'source',        # because of code examples
 				'startspace',    # because of code examples
 				'hyperlink',     # e.g. commas in URLs
 				'gallery',       # because of filenames
@@ -115,14 +117,18 @@
 			],
 			'inside': [
                 r'<code>.*</code>', # because of code examples
-                r' \d+[a-z]',     # Gesetzesparagraph
+                r'{{[Zz]itat\|.*?}}',
+                r'{{§|.*?}}',
+                r'§ \d+[a-z]',     # Gesetzesparagraph, klappt nicht?
                 r'Ju 52/1m', # Flugzeugbezeichnung
                 r'Ju 52/3m', # Flugzeugbezeichnung
 				r'AH-1W',    # Hubschrauberbezeichnung
                 r'ZPG-3W',   # Luftschiffbezeichnung
                 r'8mm',      # Filmtitel
                 r'802.11g',  # WLAN-Standard
+                r'DOS/4GW',  # Software
                 r'ntfs-3g',  # Dateisystem-Treiber
+                r'(?m)^;(.*?)$', # Definitionslisten, dort gibt es oft absichtlich Leerzeichen vor Doppelpunkten
 				r'\d+h( |&nbsp;)\d+m', # Schreibweise für Zeiten, vor allem in Film-Infoboxen. Nicht korrekt, aber dafür schön kurz.
 				r'(?i)\[\[(Bild|Image|Media):.+?\|', # Dateinamen auslassen
                 r'<sup>\d+m</sup>',                   # bei chemischen Formeln
@@ -187,6 +193,7 @@
 				'comment',
 				'math',
 				'pre',
+                'source',        # because of code examples
                 'startspace',    # because of code examples
 			],
 			'text-contains': [
@@ -240,6 +247,7 @@
                 'comment',
                 'math',
                 'pre',
+                'source',        # because of code examples
                 'startspace',    # because of code examples
             ],
         }





More information about the Pywikipedia-l mailing list