Uporabnik:AstroFizMat/hitri prevod

# Program naredi hitrejši prevod,
# kot pa če bi vse prevajal ročno.
# Na začetku popravi osnovne stvari,
# na koncu pa težje fraze.
# Če želiš sodelovati pri prevodih luninih
# in sončevih mrkov, potem ga lahko uporabiš
# in tudi nadgradiš.

# Navodila uporabe za manj izkušene:
# Program: Python 3
# Naloži Python 3.8.1 - https://www.python.org/downloads/
# Naloži IDLE
# (Kaj je IDLE? - https://realpython.com/python-idle/)
# Prekopiraj program v IDLE
# Vpiši besedilo, kjer je potrebno
# (med trojne narekovaje).
# Shrani.
# Pritisni F5 ali Zaženi.
# Prekopiraj nazaj v Urejevalnik Wikikode.
# Popravi manjše nepravilnosti
# zaradi napak v prevajanju.

text = '''
# tukaj pride besedilo (komentar izbriši)
'''
# Razna poimenovanja mesecev (slovar)
meseciEn = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'] # angleščina
meseciEnKraj = ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'] # angleške krajšave
meseciSl = ['januar', 'februar', 'marec', 'april', 'maj', 'junij', 'julij', 'avgust', 'september', 'oktober', 'november', 'december'] # slovenski imenovalnik (osnovna oblika)
meseciSlRod = ['januarja', 'februarja', 'marca', 'aprila', 'maja', 'junija', 'julija', 'avgusta', 'septembra', 'oktobra', 'novembra', 'decembra'] # slovenski rodilnik
meseciSlDaj = ['januarju', 'februarju', 'marcu', 'aprilu', 'maju', 'juniju', 'juliju', 'avgustu', 'septembru', 'oktobru', 'novembru', 'decembru'] # slovenski dajalnik
meseciSlTož = meseciSl # slovenski tožilnik (če je potreben)
meseciSlKraj = ['jan', 'feb', 'mar', 'apr', 'maj', 'jun', 'jul', 'avg', 'sep', 'okt', 'nov', 'dec'] # slovenske krajšave

# Prevod iz formata 'leto - krajšani mesec - dan' v 'dan - krajšani mesec - leto'
letoV = 1900 # veliki 'V' povsod pomeni 'vnos', ki je v 'int' formatu; spremenljivka brez 'V'-ja je v 'str' formatu
while letoV <= 2100:
    leto = str(letoV)
    mesecV = 0
    while mesecV < 12:
        mesec = str(mesecV)
        danV = 1
        while danV <= 31:
            dan = str(danV)
            if danV <= 9:
                a = leto + ' ' + meseciEnKraj[mesecV] + ' 0' + dan + ']'
                b = dan + '. ' + meseciSlKraj[mesecV] + ' ' + leto + ']'
                text = text.replace(a, b)
            a = leto + ' ' + meseciEnKraj[mesecV] + ' ' + dan + ']'
            b = dan + '. ' + meseciSlKraj[mesecV] + ' ' + leto + ']'
            text = text.replace(a, b)
            danV += 1
        mesecV += 1
    letoV += 1


dan = 1
while dan <= 31:
    x = str(dan)
    mesec = 0
    while mesec < 12:
    
        # Prevod iz formata 'Solar eclipse of - mesec - leto' v 'Sončev mrk - mesec - leto'
        a = 'Solar eclipse of ' + meseciEn[mesec] + ' ' + leto + ','
        b = 'Sončev mrk ' + leto + '. ' + meseciSlRod[mesec]
        text = text.replace(a, b)
        
        # Prevod iz formata 'Lunar eclipse of - mesec - leto' v 'Lunin mrk - mesec - leto'
        a = 'Lunar eclipse of ' + meseciEn[mesec] + ' ' + x + ','
        b = 'Lunin mrk ' + x + '. ' + meseciSlRod[mesec]
        text = text.replace(a, b)
        
        # Prevod iz formata 'krajšani mesec - leto' v 'leto - krajšani mesec'
        a = meseciEn[mesec] + ' ' + x + ','
        b = x + '. ' + meseciSl[mesec]
        text = text.replace(a, b)
        mesec += 1
    dan += 1

letoV = 1900
while letoV <= 2150:
    leto = str(letoV)
    mesec = 0
    while mesec < 12:
    
        # Prevod iz formata 'mesec - leto - lunar eclipse' v 'Lunin mrk - mesec - leto'
        a = meseciEn[mesec] + ' ' + leto + ' lunar eclipse'
        b = 'Lunin mrk ' + meseciSlRod[mesec] + ' ' + leto
        text = text.replace(a, b)
        
        # Prevod iz 'leto - mesec' v 'mesec - leto'
        a = leto + ' ' + meseciEnKraj[mesec]
        b = meseciSlKraj[mesec] + ' ' + leto
        text = text.replace(a, b)    
        mesec += 1
        
    letoV += 1

# Ostale važne fraze.
text = text.replace('{{Lunar year eclipse set info}}', '{{Lunarno leto serija mrkov info}}')
text = text.replace('Total','Popolni')
text = text.replace('Partial','Delni')
text = text.replace('Hybrid','Hibridni')
text = text.replace('Annular','Kolobarjasti')
text = text.replace('{{Solar eclipses}}','{{Sončevi mrki}}')
text = text.replace('{{solar eclipses}}','{{sončevi mrki}}')
text = text.replace('Ascending node','Dvižni vozel')
text = text.replace('Descending node','Padni vozel')
text = text.replace('[[Category:Solar eclipse templates]]','[[Kategorija:Predloge za sončev mrk]]')
text = text.replace('[[Solar eclipse]] series sets from','Serija [[Sončev mrk|sončevih mrkov]] v obdobju')
text = text.replace('(non-central)','(ne-središčni)')
text = text.replace('{{Lunar eclipses}}','{{Lunini mrki}}')
text = text.replace('{{lunar eclipses}}','{{lunini mrki}}')
text = text.replace('Total Penumbral','Popolni polsenčni')
text = text.replace('Partial penumbral','Delni polsenčni')

# Natisni rezultat:
print(text)
# Konec