Dočakali smo Orange v slovenščini!

Po zaslugi projekta Pumice je Orange zdaj v celoti preveden v slovenščino.

Prvo slovensko različico programa smo pripravili za izziv Priimkoslovje: prevedli smo osnovni del uporabniškega vmesnika in dodatke za prikaz podatkov na zemljevidu. Izšel je “neuradno”, povezava je bila objavljena le na spletni strani izziva.

Do uradne izdaje v slovenščini je minilo še leto in pol. Programje v slovenščini je danes običajno, uporabniki pa se pogosto ne zavedajo, da te stvari niso tako preproste, sploh, če program ni že v izhodišču zasnovan večjezično. Orange je star že skoraj trideset let in vedno je govoril le en jezik. Predvsem pa morajo v večjezičnih programih programerji ves čas paziti na to, da v kodo ne pišejo besedil v angleščini (ali kateremkoli že jeziku), temveč se stalno sklicujejo na sporočila iz neke zbirke sporočil. Temu smo se želeli na vsak način izogniti: želeli smo, da bi Orange govoril slovensko, ne da bi morali programerji o tem sploh razmišljati.

Za prevajanje Oranga smo zato razvili novo programsko opremo, ki smo jo javno objavili pod primernim imenom Trubar. Trubar omogoča prevajanje na čisto nov način: iz obstoječega programa izlušči vsa sporočila. Ko jih prevajalec prevede, Trubar predela izvirno programsko kodo tako, da jemlje sporočila iz zbirke prevodov in omogoča preklapljanje med jeziki - po ponovnem zagonu.

Za dodatno zabavo je poskrbela pregibnost slovenskega jezika: ker smo natančni in imamo radi svoj jezik, smo poskrbeli, da pravilno delujejo tudi skloni in števila. Šele takrat, ko se človek loti takšnega dela, se človek prvič zave, kako zapleten jezik govorimo.

Takole je videti košček Trubarjeve dokumentacije o uporabi funkcije, ki vstavi primerno obliko besede glede na število:

    - Four plural forms:
        f'{nfilt} {plsi(n, "filter|filtra|filtri|filtrov")}'

    - Four forms, multiple words conjugated:
        f'V tabeli je {n} {plsi(n, "učni primer|učna primera|učni primeri|učnih primerov")}'

    - Three forms (non-nominative):
        f'Datoteka z {n} {plsi(n, "primerom|primeroma|primeri")}'

    - Single form, feminine, using pattern
        f'Najdena {nvars} {plsi(nvars, "spremenljivka")}'

    - Single form, masculine, using pattern
        f'Vsebina: {n} {plsi(n, "primer")'

    - Plural form used twice
        f'{plsi(n, "Ostal je|Ostala sta|Ostali so|Ostalo je še")} še {n} {plsi(n, "primer")}'

Nato se je bilo potrebno lotiti prevajanja. Prevesti je bilo potrebno okrog 5000 sporočil, 7600 pa jih je bilo potrebno označiti kot interna besedila znotraj programa, ki niso namenjena uporabniku in se ne smejo prevajati. Gre torej za ogromno delo.

Sledilo je previdno testiranje in prilagajanje namestitvenih programov.

Pred nekaj dnevi je bilo delo končno zaključeno. Orange 3.38, prva uradna različica programa, ki deluje tudi v slovenščini, je na voljo spletni strani projekta Orange.