Χρήστης:Flubot/Ιστορικό
Κλείδα ταξινόμησης για ξενόγλωσσα λήμματα
επεξεργασίαΚώδικας για το bot
επεξεργασία- Κλείδα ταξινόμησης για γαλλικές λέξεις
- Κλείδα ταξινόμησης για γερμανικές λέξεις
- Κλείδα ταξινόμησης για λέξεις της Εσπεράντο
- Κλείδα ταξινόμησης για πολωνικές λέξεις
- Κλείδα ταξινόμησης για πορτογαλικές λέξεις
- Κλείδα ταξινόμησης για ρουμανικές λέξεις
- Κλείδα ταξινόμησης για τουρκικές λέξεις
- Κλείδα ταξινόμησης για αζεριανές λέξεις
- Κλείδα ταξινόμησης για ελληνικές λέξεις
Πώς βρίσκουμε τις λέξεις που δεν έχουν κλείδα
επεξεργασία- Γενικές οδηγίες
- Πώς βρίσκουμε ποιες γαλλικές λέξεις χρειάζονται κλείδα (υπό κατασκευή)
- Πώς βρίσκουμε ποιες γερμανικές λέξεις χρειάζονται κλείδα (υπό κατασκευή)
- Πώς βρίσκουμε ποιες πολωνικές λέξεις χρειάζονται κλείδα Έγινε
- Πώς βρίσκουμε ποιες ρουμανικές λέξεις χρειάζονται κλείδα (υπό κατασκευή)
Εισαγωγή κλιτών μορφών
επεξεργασία- Για ουσιαστικά, βλέπε Χρήστης:Flubot/pagefromfile
- Για ρήματα, βλέπε Χρήστης:Flubot/pagefromfile/ρηματικοί τύποι
Εισαγωγή πινάκων κλίσης
επεξεργασίαInterwikis
επεξεργασίαΔιόρθωση ενός λάθους
επεξεργασίαΚατά την εφαρμογή του ΝΣ έγινε ένα λάθος με τα πρότυπα {{αορ}}
και {{παθ-μτχ}}
στα αγγλικά ρήματα, και προστέθηκαν παύλες εντός κειμένου. Αφαιρέθηκαν με την εξής εντολή στο fixes.py
(u'====\{\{αορ\}\}====', u'αόριστος'),
(u'====\{\{παθ-μτχ\}\}====', u'παθ. μτχ.'),
Αυτοματοποιημένη εισαγωγή ετυμολογιών (και ορισμών) σε θηλυκά ουσιαστικά
επεξεργασίαΑφαίρεση του "Μετακινήστε το ώστε να εμφανίζονται δύο ίσες 'κολώνες'"
επεξεργασία'mtf-mesi': { 'regex' : False, 'msg': { 'el':u'Διαγραφή οδηγιών', }, 'replacements': [ (u'{{μτφ-μέση}} <!-- Μετακινήστε το ώστε να εμφανίζονται δύο ίσες \'κολώνες\' -->', u'{{-}}'), (u'{{-}} <!-- Μετακινήστε το ώστε να εμφανίζονται δύο ίσες \'κολώνες\' -->', u'{{-}}'), ], },
Παράμετρος στο πρότυπο -ομων-
επεξεργασίαΈχουμε συμφωνήσει ότι δεν θέλουμε να μετράνε ως άρθρα οι κλιτές μορφές. Υπάρχουν όμως ακόμα σε αυτές σύνδεσμοι, κάτω από το πρότυπο -ομων-. Με το ακόλουθο fix, οι ομώνυμες λέξεις μεταφέρονται ως παράμετρος μέσα στο πρότυπο. Για ένα παράδειγμα δείτε εδώ
Θα τρέξω το παρακάτω φιξ με την εντολή
python replace.py -fix:omonyma -cat:'Κλιτές μορφές επιθέτων (ελληνικά)'
'omonyma': { 'regex' : True, 'msg': { 'el':u'μετακίνηση των ομωνύμων σε παράμετρο', }, 'replacements': [ (u'\{\{\-ομων\-\}\}\r\n\* \[\[([^\]]+)\]\]', u'{{-ομων-|\\1}}'), ], },
Τονικό σημάδι ΔΦΑ
επεξεργασίαΑρχείο αντί Εικόνα
επεξεργασίαPAGENAME στα επιρρήματα, κλιτές μορφές επιθέτων
επεξεργασία'PAGENAME_adverbs': { 'regex' : False, 'msg': { 'el':u'PAGENAME στα επιρρήματα, κλιτές μορφές επιθέτων', }, 'replacements': [ (u'{{-επιρ-|el}}\r\n* …', u'{{-επιρ-|el}}\n\'\'\'{{PAGENAME}}\'\'\'\n* {{προσχέδιο-ορισμ}}'), (u'{{-επιρ-|el}}\r\n* ...', u'{{-επιρ-|el}}\n\'\'\'{{PAGENAME}}\'\'\'\n* {{προσχέδιο-ορισμ}}'), (u'{{-μορφ-επιθ-|el}}\r\n* {{πτώσ', u'{{-μορφ-επιθ-|el}}\n\'\'\'{{PAGENAME}}\'\'\'\n* {{πτώσ'), ], },
Αλλαγή επικεφαλίδων με πρότυπα
επεξεργασία'oldheaders': { 'regex' : False, 'msg': { 'el':u'Αλλαγή επικεφαλίδων με πρότυπα', }, 'replacements': [ (u'===Βλέπε επίσης===', u'{{-βλεπ-}}'), (u'===Συγγενικά===', u'{{-συγγ-}}'), (u'===Συνόνυμες===', u'{{-συνων-}}'), (u'===Παράγωγες μορφές===', u'{{-συγγ-}}'), (u'===Συνώνυμες λέξεις===', u'{{-συνων-}}'), ], },
Γαλλικά άρθρα αντί για πρότυπο γένους
επεξεργασίαΣε λίγα γαλλικά λήμματα, κάτω από το μέρος του λόγου, υπάρχει αντί για το {{ξεν|fr|{{PAGENAME}}}} {{α}} μία γραμμή με το άρθρο La - . / Le - . Βλέπε π.χ. piété
'LeLa': { 'regex' : True, 'msg': { 'el':u'Αλλαγή γαλλικών άρθρων με PAGENAME και πρότυπα γένους', }, 'replacements': [ (u'\{\{-([^\|]+)\|fr\}\}\r\nΘηλ.', u'{{-\\1|fr}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{θ}}'), (u'\{\{-([^\|]+)\|fr\}\}\r\nΑρσ.', u'{{-\\1|fr}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{α}}'), (u'\{\{-([^\|]+)\|fr\}\}\r\nΘηλ.( *)γένους.', u'{{-\\1|fr}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{θ}}'), (u'\{\{-([^\|]+)\|fr\}\}\r\nΑρσεν.( *)γένους.', u'{{-\\1|fr}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{α}}'), (u'\{\{-([^\|]+)\|fr\}\}\r\nLa( *)-( *).', u'{{-\\1|fr}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{θ}}'), (u'\{\{-([^\|]+)\|fr\}\}\r\nUn( *)-( *).', u'{{-\\1|fr}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{α}}'), (u'\{\{-([^\|]+)\|fr\}\}\r\nLe( *)-( *).', u'{{-\\1|fr}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{α}}'), (u'\{\{-([^\|]+)\|fr\}\}\r\nUne( *)-( *).', u'{{-\\1|fr}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{θ}}'), (u'\{\{-([^\|]+)\|fr\}\}\r\nL\'( *)-( *)\(la\)( *)-( *).', u'{{-\\1|fr}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{θ}}'), (u'\{\{-([^\|]+)\|fr\}\}\r\nL\'( *)-( *)\(αρσ.\)', u'{{-\\1|fr}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{α}}'), (u'\{\{-([^\|]+)\|fr\}\}\r\nL\'( *)-( *)\(θηλ.\)', u'{{-\\1|fr}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{θ}}'), (u'\{\{-([^\|]+)\|fr\}\}\r\nL\'( *)-( *),( *)une( *)-( *).', u'{{-\\1|fr}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{θ}}'), (u'\{\{-([^\|]+)\|fr\|([^\)]+)\}\}\r\nLa -( *).', u'{{-\\1|fr|\\2}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{θ}}'), (u'\{\{-([^\|]+)\|fr\|([^\)]+)\}\}\r\nLe -( *).', u'{{-\\1|fr|\\2}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{α}}'), (u'\{\{-([^\|]+)\|fr\|([^\)]+)\}\}\r\nUne -( *).', u'{{-\\1|fr|\\2}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{θ}}'), (u'\{\{-([^\|]+)\|fr\|([^\)]+)\}\}\r\nUn -( *).', u'{{-\\1|fr|\\2}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{α}}'), (u'\{\{-([^\|]+)\|fr\|([^\)]+)\}\}\r\nL\'( *)-( *)\(αρσ.\)', u'{{-\\1|fr|\\2}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{α}}'), (u'\{\{-([^\|]+)\|fr\|([^\)]+)\}\}\r\nL\'( *)-( *)\(θηλ.\)', u'{{-\\1|fr|\\2}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{θ}}'), (u'\{\{-([^\|]+)\|fr\|([^\)]+)\}\}\r\nUn/une( *)-( *).', u'{{-\\1|fr|\\2}}\r\n{{ξεν|fr|{{PAGENAME}}}} {{αθ}}'), ], },
Αφαίρεση των tlh interwikis Έγινε
επεξεργασίαΜετά την κατάργηση του klingon wiktionary έχουν μείνει ακόμη σε κάποιες λέξεις interwikis που εμφανίζονται μέσα στο κείμενο του λήμματος και όχι μαζί με τα υπόλοιπα. Για να αφαιρεθούν όλα μαζί θα χρησιμοποιήσω το ακόλουθο fix (fixes.py)
'klingon': { 'regex' : True, 'msg': { 'el':u'Διαγραφή tlh interwiki', }, 'replacements': [ (u'\[\[tlh\:([^\]]+)\]\]\r\n', u''), ], },
Παράμετρος el στο -ουσ-, -επιθ-, -ρημ- κλπ
επεξεργασίαΥπάρχουν ακόμα κάποιες λέξεις που έχουν μείνει χωρίς την παράμετρο γλώσσας στο πρότυπο που δείχνει το μέρος του λόγου. Συμπλήρωσα κάποιες χειροκίνητα, αλλά για τις ελληνικές λέω να βάλω το bot να τις αλλάξει (όσες τουλάχιστον δεν έχουν δεύτερο τομέα (=grc=)
'param_el': { 'regex' : False, 'msg': { 'el':u'Παράμετρος el στο -ουσ-, -επιθ-, -ρημ- κλπ', }, 'replacements': [ (u'{{-ουσ-}}', u'{{-ουσ-|el}}'), (u'{{-επιθ-}}', u'{{-επιθ-|el}}'), (u'{{-ρημ-}}', u'{{-ρημ-|el}}'), (u'{{-επιρ-}}', u'{{-επιρ-|el}}'), (u'{{-μτχ-}}', u'{{-μτχ-|el}}'), (u'{{-κυρ-}}', u'{{-κυρ-|el}}'), (u'{{-μορφ-ουσ-}}', u'{{-μορφ-ουσ-|el}}'), (u'{{-μορφ-επιθ-}}', u'{{-μορφ-επιθ-|el}}'), ], },
Πρότυπα προσχεδίων
επεξεργασίαΑπό πολλές λέξεις χωρίς ορισμό και ετυμολογία λείπουν τα αντίστοιχα πρότυπα προσχεδίου. Το παρακάτω fixes προσθέτει τα πρότυπα δουλεύοντας με κατάλογο λέξεων.
'prosxedia': { 'regex' : True, 'msg': { 'el':u'Πρότυπα προσχέδιο- κρυμμένες γαλλικές μεταφράσεις με πρότυπα ξεν', }, 'replacements': [ (u'\{\{-ετυμ-\}\}\\\r\\\n\\\r\\\n\{\{-([^\|]+)\|el\}\}', u'{{προσχέδιο}}\n{{-ετυμ-}}\n: \'\'\'{{PAGENAME}}\'\'\' < {{προσχέδιο-ετυμ}}\n{{-\\1|el}}\n\'\'\'{{PAGENAME}}\'\'\'\n* {{προσχέδιο-ορισμ}}'), (u'\* \{\{fr\}\} \: \[\[ \]\] \{\{αθ\}\}' , u'<!--* {{fr}} : {{ξεν|fr|XXX}}-->'), (u'\* \{\{fr\}\} \: \[\[ \]\]' , u'<!--* {{fr}} : {{ξεν|fr|XXX}}-->'), ], },
Αλλαγή του -ουσ- σε -κυρ- στα Κύρια ονόματα
επεξεργασίαΜε τη σιωπηρή παραδοχή ότι μία λέξη - Κύριο όνομα δεν θα έχει παραπάνω από έναν τομέα γλώσσας, ή ότι αν ανήκει σε περισσότερες γλώσσες, θα είναι σε όλες κύριο όνομα. To replace.py θα τρέξει με αρχείο λημμάτων. Στο Wolf (γερμανικά) εμφανίστηκε το πρόβλημα ότι η λέξη είναι και κύριο όνομα και προσηγορικό. Αναγκαστικά έπρεπε η αλλαγή να γίνει χειροκίνητα.
'metafraseis': { 'regex' : True, 'msg': { 'el':u'Αλλαγή του -ουσ- σε -κυρ- στα Κύρια ονόματα', }, 'replacements': [ (u'{{-ουσ-\|([a-z]*)', u'{{-κυρ-|\\1'), ], }, }
Αλλαγή του -ουσ- σε -σμμ- στις συντομομορφές
επεξεργασίαTo replace.py θα τρέξει με αρχείο λημμάτων
'smm': { 'regex' : True, 'msg': { 'el':u'Αλλαγή του -ουσ- σε -σμμ- στις συντομομορφές', }, 'replacements': [ (u'{{-ουσ-\|([a-z]*)', u'{{-σμμ-|\\1'), ], },
Αφαίρεση του προτύπου ξεν από τα αρχαία ελληνικά λήμματα
επεξεργασίαΟ κώδικας τρέχει με την παράμετρο -cat:'Αρχαία ελληνικά' Έγινε
'arxaia': { 'regex' : False, 'msg': { 'el':u'Αφαίρεση του προτύπου ξεν από τα αρχαία ελληνικά λήμματα', }, 'replacements': [ (u'{{ξεν|grc|{{PAGENAME}}}}', u'\'\'\'{{PAGENAME}}\'\'\''), ], }, }
Παράμετρος στο πρότυπο "θεμα του"
επεξεργασίαΓια ένα παράδειγμα βλέπε εδώ. Η εντολή είναι python replace.py -fix:thema -file:list01, όπου list01 το αρχείο των λέξεων που περιέχουν το πρότυπο "θέμα του" (βλέπε εδώ).
'thema': { 'regex' : True, 'msg': { 'el':u'παράμετρος στο πρότυπο "θέμα του"', }, 'replacements': [ (u'\{\{θέμα_του\}\}( *)(.*)\r\n', u'{{θέμα_του|\\2}}\r\n'), ], }, }
Άλλες απόπειρες
επεξεργασίαΚώδικας για προσθήκη του προτύπου -ξεν στις μεταφράσεις
επεξεργασίαΠΡΟΣΟΧΗ: Ο κώδικας που ακολουθεί δεν έχει δοκιμαστεί επαρκώς
'metafraseis': { 'regex' : True, 'msg': { 'el':u'μεταφράσεις - πρότυπο ξεν', }, 'replacements': [ (u'\n\*( *)\{\{([a-z\-]+)\}\}( *):( *)\[\[([^ \]]+)\]\]( *),( *)\[\[([^ \]]+)\]\]( *),( *)\[\[([^ \]]+)\]\]', u'\n* {{\\2}} : {{ξεν|\\2|\\5}}, {{ξεν|\\2|\\8}}, {{ξεν|\\2|\\11}}'), (u'\n\*( *)\{\{([a-z\-]+)\}\}( *):( *)\[\[([^ \]]+)\]\]( *),( *)\[\[([^ \]]+)\]\]', u'\n* {{\\2}} : {{ξεν|\\2|\\5}}, {{ξεν|\\2|\\8}}'), (u'\n\*( *)\{\{([a-z\-]+)\}\}( *):( *)\[\[([^ \]]+)\]\]( *)\{\{([αθ]+)\}\},( *)\[\[([^ \]]+)\]\]', u'\n* {{\\2}} : {{ξεν|\\2|\\5}} {{\\7}}, {{ξεν|\\2|\\9}}'), (u'\n\*( *)\{\{([a-z\-]+)\}\}( *):( *)\[\[([^ \]]+)\]\](.*)\r', u'\n* {{\\2}} : {{ξεν|\\2|\\5}} \\6\r'), (u'\n\*( *)\{\{en\}\}( *):( *)to( *)\[\[([^\]]+)\]\], \[\[([^\]]+)\]\], \[\[([^\]]+)\]\]', u'\n* {{en}} : {{ξεν|en|\\5}}, {{ξεν|en|\\6}}, {{ξεν|en|\\7}}'), (u'\n\*( *)\{\{en\}\}( *):( *)to( *)\[\[([^\]]+)\]\]', u'\n* {{en}} : {{ξεν|en|\\5}}'), (u'\* \{\{fr\}\} : \[\[( *)\]\] \{\{αθ\}\}', u'<!-- * {{fr}} : {{ξεν|fr|XXX}} -->'), ], }, 'metafraseis1': { 'regex' : True, 'msg': { 'el':u'μεταφράσεις - πρότυπο ξεν', }, 'replacements': [ (u'\n\*( *)\{\{([a-z\-]+)\}\}( *):( *)\[\[([^\]]+)\]\]( *)\(\[\[:([a-z\-]+):([^\]]+)\]\]\)\r', u'\n* {{\\2}} : {{ξεν|\\2|\\5}}\r'), (u'\n\*( *)\{\{([a-z\-]+)\}\}( *):( *)\[\[([^\]]+)\]\]( *)\[\[:([a-z\-]+):([^\]]+)\]\]\r', u'\n* {{\\2}} : {{ξεν|\\2|\\5}}\r'), ], }, }
Γλώσσες από αγκύλες σε πρότυπα
επεξεργασία'met2': { 'regex' : True, 'msg': { 'el':u'μορφοποίηση μεταφράσεων', }, 'replacements': [ (u'\n(<!-- |)( *)\* \[\[αγγλικά\]\]( *):( *)(.*)\r', u'\n\\1* {{en}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[αλβανικά\]\]( *):( *)(.*)\r', u'\n\\1* {{sq}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[αραβικά\]\]( *):( *)(.*)\r', u'\n\\1* {{ar}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[αρμενικά\]\]( *):( *)(.*)\r', u'\n\\1* {{hy}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[αστουριανά\]\]( *):( *)(.*)\r', u'\n\\1* {{ast}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[αφρικανολλανδικά\]\]( *):( *)(.*)\r', u'\n\\1* {{af}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[αφροολλανδικά\]\]( *):( *)(.*)\r', u'\n\\1* {{af}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[βασκικά\]\]( *):( *)(.*)\r', u'\n\\1* {{eu}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[βιετναμέζικα\]\]( *):( *)(.*)\r', u'\n\\1* {{vi}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[βουλγαρικά\]\]( *):( *)(.*)\r', u'\n\\1* {{bg}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[βρετανικά\]\]( *):( *)(.*)\r', u'\n\\1* {{br}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[γαλλικά\]\]( *):( *)(.*)\r', u'\n\\1* {{fr}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[γερμανικά\]\]( *):( *)(.*)\r', u'\n\\1* {{de}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[γεωργιανά\]\]( *):( *)(.*)\r', u'\n\\1* {{ka}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[δανικά\]\]( *):( *)(.*)\r', u'\n\\1* {{da}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[εβραϊκά\]\]( *):( *)(.*)\r', u'\n\\1* {{he}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[εσπεράντο\]\]( *):( *)(.*)\r', u'\n\\1* {{eo}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[εσθονικά\]\]( *):( *)(.*)\r', u'\n\\1* {{et}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[ζουλού\]\]( *):( *)(.*)\r', u'\n\\1* {{zu}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[ιαπωνικά\]\]( *):( *)(.*)\r', u'\n\\1* {{ja}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[ινδονησιακά\]\]( *):( *)(.*)\r', u'\n\\1* {{id}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[ιντερλίνγκουα\]\]( *):( *)(.*)\r', u'\n\\1* {{ia}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[ίντο\]\]( *):( *)(.*)\r', u'\n\\1* {{io}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[ισλανδικά\]\]( *):( *)(.*)\r', u'\n\\1* {{is}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[ιρλανδικά\]\]( *):( *)(.*)\r', u'\n\\1* {{ga}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[ιταλικά\]\]( *):( *)(.*)\r', u'\n\\1* {{it}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[\ισπανικά]\]( *):( *)(.*)\r', u'\n\\1* {{es}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[κασμιρικά\]\]( *):( *)(.*)\r', u'\n\\1* {{ks}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[καταλανικά\]\]( *):( *)(.*)\r', u'\n\\1* {{ca}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[κινεζικά\]\]( *):( *)(.*)\r', u'\n\\1* {{zh}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[κορεατικά\]\]( *):( *)(.*)\r', u'\n\\1* {{ko}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[κουρδικά\]\]( *):( *)(.*)\r', u'\n\\1* {{ku}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[κροατικά\]\]( *):( *)(.*)\r', u'\n\\1* {{hr}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[λατινικά\]\]( *):( *)(.*)\r', u'\n\\1* {{la}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[λεττονικά\]\]( *):( *)(.*)\r', u'\n\\1* {{lv}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[λιθουανικά\]\]( *):( *)(.*)\r', u'\n\\1* {{lt}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[μαλαισιακά\]\]( *):( *)(.*)\r', u'\n\\1* {{ms}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[νορβηγικά\]\]( *):( *)(.*)\r', u'\n\\1* {{no}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[ολλανδικά\]\]( *):( *)(.*)\r', u'\n\\1* {{nl}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[ουκρανικά\]\]( *):( *)(.*)\r', u'\n\\1* {{uk}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[ουγγρικά\]\]( *):( *)(.*)\r', u'\n\\1* {{hu}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[περσικά\]\]( *):( *)(.*)\r', u'\n\\1* {{fa}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[πορτογαλικά\]\]( *):( *)(.*)\r', u'\n\\1* {{pt}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[πολωνικά\]\]( *):( *)(.*)\r', u'\n\\1* {{pl}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[ρουμανικά\]\]( *):( *)(.*)\r', u'\n\\1* {{ro}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[ρωσικά\]\]( *):( *)(.*)\r', u'\n\\1* {{ru}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[σερβικά\]\]( *):( *)(.*)\r', u'\n\\1* {{sr}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[σανσκριτικά\]\]( *):( *)(.*)\r', u'\n\\1* {{sa}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[σουηδικά\]\]( *):( *)(.*)\r', u'\n\\1* {{sv}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[σερβικά\]\]( *):( *)(.*)\r', u'\n\\1* {{sr}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[σλοβενικά\]\]( *):( *)(.*)\r', u'\n\\1* {{sl}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[σλοβακικά\]\]( *):( *)(.*)\r', u'\n\\1* {{sk}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[σουαχίλι\]\]( *):( *)(.*)\r', u'\n\\1* {{sw}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[ταϊλανδικά\]\]( *):( *)(.*)\r', u'\n\\1* {{th}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[τελούγκου\]\]( *):( *)(.*)\r', u'\n\\1* {{te}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[τουρκικά\]\]( *):( *)(.*)\r', u'\n\\1* {{tr}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[τσεχικά\]\]( *):( *)(.*)\r', u'\n\\1* {{cs}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[φιλανδικά\]\]( *):( *)(.*)\r', u'\n\\1* {{fi}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[φεροϊκά\]\]( *):( *)(.*)\r', u'\n\\1* {{fo}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[φριζικά\]\]( *):( *)(.*)\r', u'\n\\1* {{fy}} : \\5\r'), (u'\n(<!-- |)( *)\* \[\[χίντι\]\]( *):( *)(.*)\r', u'\n\\1* {{hi}} : \\5\r'), ], }, }