Browse Source

Remove File/Image links in strip_code()

pull/194/head
Dmitry Mottl 6 years ago
parent
commit
d52ea2bd4b
1 changed files with 23 additions and 0 deletions
  1. +23
    -0
      mwparserfromhell/nodes/wikilink.py

+ 23
- 0
mwparserfromhell/nodes/wikilink.py View File

@@ -31,6 +31,25 @@ __all__ = ["Wikilink"]
class Wikilink(Node):
"""Represents an internal wikilink, like ``[[Foo|Bar]]``."""

# a list of links to strip:
strip_links = ['File', 'Image', 'Media', # English
'Файл', 'Изображение', # Russian
'Detei', # German
'Fichier', # French
'Archivo', # Spanish
'Immagine', # Italiano
'Imagem' # Portuguese
'Plik' # Polish
'Berkas', # Indonesian
'Bestand', # Netherlands
'चित्र', # Hindi
'Payl', # Cebuano
'Paypay', # Waray
'Tập_tin', # Vietnamese
'ファイル', # Japanese
# -- add here other start words of image wikilinks --
]

def __init__(self, title, text=None):
super(Wikilink, self).__init__()
self._title = title
@@ -47,6 +66,10 @@ class Wikilink(Node):
yield self.text

def __strip__(self, **kwargs):
_title = self.title.lstrip(':')
for word in self.strip_links:
if _title.startswith(word):
return ''
if self.text is not None:
return self.text.strip_code(**kwargs)
return self.title.strip_code(**kwargs)


Loading…
Cancel
Save