Revision: 7387
Author:   xqt
Date:     2009-10-07 16:15:34 +0000 (Wed, 07 Oct 2009)

Log Message:
-----------
* solves the putSpacesInList-problem by expanding the interface
* adds pdc to deprecatedTemplates
* ignore #39 in resolveHtmlEntities for eo-lang only
#2872953

Modified Paths:
--------------
    trunk/pywikipedia/cosmetic_changes.py
    trunk/pywikipedia/wikipedia.py

Modified: trunk/pywikipedia/cosmetic_changes.py
===================================================================
--- trunk/pywikipedia/cosmetic_changes.py       2009-10-07 16:13:51 UTC (rev 
7386)
+++ trunk/pywikipedia/cosmetic_changes.py       2009-10-07 16:15:34 UTC (rev 
7387)
@@ -159,16 +159,16 @@
 
 deprecatedTemplates = {
     'wikipedia': {
-        'de': [
-            u'Stub',
-        ]
+        'de': [u'Stub'],
+        'pdc':[u'Schkiss'],
     }
 }
 
 class CosmeticChangesToolkit:
-    def __init__(self, site, debug = False):
+    def __init__(self, site, debug = False, redirect = False):
         self.site = site
         self.debug = debug
+        self.redirect = redirect
 
     def change(self, text):
         """
@@ -180,8 +180,7 @@
         text = self.standardizeCategories(text)
         text = self.cleanUpLinks(text)
         text = self.cleanUpSectionHeaders(text)
-        # Disabled because of a bug, and because its usefulness is disputed
-        # text = self.putSpacesInLists(text)
+        text = self.putSpacesInLists(text)
         text = self.translateAndCapitalizeNamespaces(text)
         text = self.removeDeprecatedTemplates(text)
         text = self.resolveHtmlEntities(text)
@@ -355,7 +354,6 @@
     def resolveHtmlEntities(self, text):
         ignore = [
              38,     # Ampersand (&)
-             39,     # ignore ' see 
http://eo.wikipedia.org/w/index.php?title=Liberec&diff=next&oldid=2320801
              60,     # Less than (<)
              62,     # Great than (>)
              91,     # Opening bracket - sometimes used intentionally inside 
links
@@ -363,6 +361,9 @@
             124,     # Vertical bar (??) - used intentionally in navigation 
bar templates on de:
             160,     # Non-breaking space ( ) - not supported by Firefox 
textareas
         ]
+        # ignore ' see 
http://eo.wikipedia.org/w/index.php?title=Liberec&diff=next&oldid=2320801
+        if self.site.lang == 'eo':
+            ignore += [39]
         text = wikipedia.html2unicode(text, ignore = ignore)
         return text
 
@@ -414,8 +415,8 @@
         and French Wikipedia. It might be that it is not wanted on other wikis.
         If there are any complaints, please file a bug report.
         """
-        # FIXME: This breaks redirects.
-        text = wikipedia.replaceExcept(text, 
r'(?m)^(?P<bullet>(\*+|#+):*)(?P<char>[^\s\*#:].+?)', '\g<bullet> \g<char>', 
['comment', 'math', 'nowiki', 'pre'])
+        if not self.redirect:
+            text = wikipedia.replaceExcept(text, 
r'(?m)^(?P<bullet>(\*+|#+):*)(?P<char>[^\s\*#:].+?)', '\g<bullet> \g<char>', 
['comment', 'math', 'nowiki', 'pre'])
         return text
 
     def removeDeprecatedTemplates(self, text):

Modified: trunk/pywikipedia/wikipedia.py
===================================================================
--- trunk/pywikipedia/wikipedia.py      2009-10-07 16:13:51 UTC (rev 7386)
+++ trunk/pywikipedia/wikipedia.py      2009-10-07 16:15:34 UTC (rev 7387)
@@ -1430,7 +1430,7 @@
             old = newtext
             if not config.cosmetic_changes_mylang_only or 
(self.site().family.name == config.family and self.site().lang == 
config.mylang):
                 import cosmetic_changes
-                ccToolkit = 
cosmetic_changes.CosmeticChangesToolkit(self.site())
+                ccToolkit = 
cosmetic_changes.CosmeticChangesToolkit(self.site(), 
redirect=self.isRedirectPage())
                 newtext = ccToolkit.change(newtext)
                 if comment and old.strip().replace('\r\n', '\n') != 
newtext.strip().replace('\r\n', '\n'):
                     comment += translate(self.site(), 
cosmetic_changes.msg_append)



_______________________________________________
Pywikipedia-svn mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/pywikipedia-svn

Reply via email to