Gnomen suomentajaryhmä

Gnomen kääntäminen
Jarkko Ranta (jjranta@cc.joensuu.fi) 6.6.2000
Päivitetty 22.08.2004

Tämän ohjeen tarkoitus on auttaa aloittelevia Gnomen suomentajia pääsemään alkuun käännöstyössään. Monesta erilaisesta tavasta suomentaa Gnomea tämä ohje neuvoo yksinkertaisimman ja yleisimmin käytetyn. Periaatteessa et tarvitse muuta kuin pääsyn jollekin koneelle johon on asennettu tekstieditori ja jossa on nettiyhteys. Tässä ohjeessa oletetaan kuitenkin että tämä kone on sinulla kotonasi ja siihen on asennettu Linux- tai jokin muu UNIX-pohjainen käyttöjärjestelmä.

Sisältö:

1. Alkuvalmistelut
2. Käännöstiedostojen hakeminen
3. Käännöstyön tekeminen
4. Käännöksen testaaminen
5. Käännöksen palauttaminen cvs-puuhun

1. Alkuvalmistelut

Jotta voisit alkaa kääntämisen, on sinun hyvä varmistaa että joitakin tiettyjä ohjelmia on asennettu järjestelmääsi. Asennustapa vaihtelee jakeluversiosta toiseen, joten sen neuvominen jää tämän ohjeen ulkopuolelle. Ohjeita saat esimerkiksi käyttämäsi jakeluversion dokumentaatiosta. Tämän lisäksi Gnomen suomentajissa on paljon Linux- ja UNIX-asiantuntijoita, joten voit kysyä myös meiltä apua (esimerkiksi ircnetin #gnome-fi -kanavallamme taikka SourceForgen postituslistallamme) ohjelmien asennuksesta järjestelmääsi.

Seuraavat ohjelmat olisi hyvä olla asennettuna järjestelmääsi:

  • cvs, gettext, intltool

    Varsinkin gettextin ja intltoolin versio on hyvä olla mahdollisimman tuore, ja onkin hyvä idea varmistaa kyseisten työkalujen virallisista lähteistä että käytössä on viimeisin vakaa versio. gettextin sivulle on linkki yllä ja intltoolin tuoreimman version saat hakemalla sen Gnomen cvs-puusta komentamalla:

    # cvs get intltool
    
    Tarkemmat ohjeet tähän löytyvät ohjeen kohdasta "Käännöstiedostojen hakeminen".

    Lisäksi tarvitset jonkun muokkaimen jolla itse suomennostyö tehdään. Tähän käy suosikkitekstieditorisi (esimerkiksi vi, gedit, pico, nano..) taikka esimerkiksi emacs johon saa asennettua kätevän kääntämiseen tarkoitetun lisäosan. Lisäksi on olemassa nimenomaan kääntämiseen tarkoitettuja graafisia ohjelmia kuten gtranslator ja kbabel.

    2. Käännöstiedostojen hakeminen

    Kun tarvittavat ohjelmat on asennettu, haetaan käännettävän ohjelman lähdekoodi Gnomen cvs-palvelimelta. Vaikka onkin olemassa erilaisia graafisia cvs-ohjelmia (kuten Pharmacy, LinCVS, Cervisia, Gruntspud ja tkCVS), on cvs:ää kuitenkin yksinkertaisinta käyttää Linuxin tekstikonsolin avulla.

    Ympäristömuuttujan asettaminen

    Ensin täytyy asettaa cvs-ympäristömuuttuja. Mikäli komentotulkkisi on esimerkiksi bash (kuten yleensä), tapahtuu tämä seuraavalla komennolla:

    # export CVSROOT=':pserver:anonymous@anoncvs.gnome.org:/cvs/gnome'

    Joillain muilla komentotulkeilla (csh, tcsh) export-komennon sijaan käytetään komentoa setenv, ja komento on kokonaisuudessaan seuraavanlainen:

    # setenv CVSROOT ':pserver:anonymous@anoncvs.gnome.org:/cvs/gnome'
    

    Jotta et joutuisi antamaan tätä komentoa joka kerta kun käynnistät komentotulkin, kannattaa se lisätä (ilman #-merkkiä) komentotulkin alustustiedostoon. Bash-komentotulkissa tiedosto on .bash_profile, csh:ssä .cshrc.

    Lähdekoodin hakeminen

    Tämän jälkeen voidaankin hakea itse lähdekoodi. Kun haet ensimmäistä kertaa cvs-palvelimelta tiedostoja, täytyy sinun ensin kirjautua sinne komentamalla:

    # cvs login

    Salasanaa kysyttäessä painetaan enteriä. Anonyymi kirjautuminen Gnomen cvs-palvelimeen ei vaadi salasanaa. Tämän jälkeen komennetaan:
    # cvs get paketin_nimi
    

    Jos sinulla on jo kyseisen ohjelman lähdekoodi, ja haluat vain päivittää uudistuneet kohdat siitä, komenna:

    # cvs update -Pd paketin_nimi
    

    Mikäli haluat päivittää kaikkien hakemiesi pakettien lähdekoodit, anna edellinen komento ilman paketin nimeä siinä hakemistossa johon olet paketit hakenut.

    Oletuksena cvs hakee lähdekoodit cvs-puun ns. HEAD-haarasta. Ohjelmien aktiivinen kehitystyö tapahtuu tässä haarassa, ja useimmiten se onkin oikea haara suomentamiselle. Joskus saattaa kuitenkin tulla tarve suomentaa jotain muuta (esim. vakaata) haaraa. Tämän vuoksi cvs:ää voi komentaa käsittelemään jotain tiettyä haaraa HEAD:n sijaan. Komento on tällöin esimerkiksi muotoa:

    # cvs get -r galeon-0-9 -d galeon-0-9 galeon
    

    Tämä komento hakisi galeonin lähdekoodin haarasta galeon-0-9 HEAD:n sijaan, ja antaisi hakemistolle nimen galeon-0-9 pelkän galeonin sijaan.

    Oikeat haarat saa selville Gnomen käännösten tilasivuilta osoitteesta http://developer.gnome.org/projects/gtp/status/
    Kunkin paketin haaratieto löytyy kun valitaan ensin Gnomen versio, sitten kieli ja lopulta pakettiryhmä. Haarojen nimet on lueteltu branch-sarakkeessa.

    3. Käännöstyön tekeminen

    Eräänä tärkeimmistä asioista Gnomen suomennosprojekti pitää käännöksen yhdenmukaisuutta. Tämän takia olemme luoneet (paljon kehutun) sanakirjan. Aina kun ensimmäistä kertaa suomennat jonkun sanan, tarkista sanakirjastamme mikä on GFTT:n valitsema suomennos sille. Mikäli sanakirjassa ei ole hakemallesi sanalle suomennosta, kysy asiasta postituslistallamme taikka ircissä.

    Linkkisivultamme löytyy useita kääntämisessä auttavia sivustoja. Täytyy kuitenkin muistaa ettei mitään sanakirjaa kannata noudattaa orjallisesti. Tärkeämpää on käyttää omaa päätään. Epäselvissä tapauksissa kannattaa tiedustella asiaa postituslistallamme.

    Yleisiä ohjeita

    • Käännä "GNOME" useimmiten muotoon "Gnome". Gnomesta on tullut lyhenteen sijaan erisnimi, minkä vuoksi isoja kirjaimia ei välttämättä kaivata.
    • Mikäli fi.po -tiedostossa on kohtia, jotka on merkitty tunnuksella "fuzzy", merkitsee tämä sitä, että käännöstyökalu on yrittänyt arvata oikeaa suomennosta. Tarkista nämä kohdat erityisen tarkasti ja poista sitten "fuzzy". Arvatut eli ns. 'sumeat' kohdat ovat lähes poikkeuksetta väärin.
    • fi.po -tiedostoa päivitettäessä tiedoston loppuun saattaa tulla myös kohtia, jotka alkavat [~]-merkillä. Nämä ovat vanhentuneita kohtia, joita ei ohjelman nykyisessä versiossa tarvita, mutta käännöstyökalu säilyttää ne varmuuden vuoksi. Niitä ei tarvitse poistaa, ellei tiedostokoko kasva niistä häiritsevän paljon.
    • Lisää fi.po -tiedoston about-dialogeja koskeviin suomennoksiin ylimääräinen tekstirivi (huomaa, että rivin alussa olevan välilyönnin ansiosta tämä rivi ei ole heti kiinni edellisessä suomennosrivissä, vaan näiden väliin tulee tyhje): " Suomennos: http://gnome-fi.org/"
    • Gnomen ohjelmissa on tapana noteerata kääntäjä erityisessä po-tiedoston kohdassa "translator-credits". Tähänkin on hyvä laittaa myös suomennosprojektin yhteystiedot. Kokonaisuudessaan kohta käännetään seuraavalla tavalla:
      msgid "translator-credits"
      msgstr ""
      "Jarkko Ranta, 2002-2003\n"
      "Johanna Makkonen, 2001-2002\n"
      "\n"
      "http://gnome-fi.org/"
      
      Huom! Suuri osa kehittäjistä käyttää vanhentunutta ja väärää tapaa merkitä kääntäjäkohta msgid:llä "translator_credits". Tästä voi huomauttaa kehittäjille virheraportin muodossa, sillä se voi haitata joidenkin käännös- ja muiden työkalujen automaattisia toimintoja, koska alaviivaa käytetään merkitsemään pikanäppäintä.

    Käännöstiedoston päivittäminen ajan tasalle

    Käännöstiedostot sijaitsevat lähdekoodin hakemistossa po/. Mikäli joku on jo joskus kääntänyt kyseistä ohjelmaa suomeksi, löytyy hakemistosta fi.po -niminen tiedosto. Mikäli ei löydy, täytyy se itse luoda komentamalla:

    # intltool-update -p
    Tämän jälkeen syntynyt paketin_nimi.pot kopioidaan fi.po -nimiseksi.

    Mikäli po/ -hakemistossa on jo fi.po -tiedosto, kannattaa siitä tehdä varmuuskopio. Tämän jälkeen tiedosto päivitetään ajan tasalle komentamalla:

    # intltool-update fi
    

    Intltool kertoo tämän jälkeen kuinka monta käännettyä (translated), kääntämätöntä (untranslated) ja sumeaa (fuzzy) kohtaa käännöstiedostossa on.

    Fi.po-tiedoston muokkaaminen

    po-tiedoston alussa on joitain otsikkotietoja, jotka on ensin laitettava ajan tasalle. Alla on esimerkki uuden po-tiedoston otsikkotiedoista:

       # SOME DESCRIPTIVE TITLE.
       # Copyright (C) YEAR Free Software Foundation, Inc.
       # FIRST AUTHOR , YEAR.
       #
       #, fuzzy
       msgid ""
       msgstr ""
       "Project-Id-Version: PACKAGE VERSION\n"
       "Report-Msgid-Bugs-To: \n"
       "POT-Creation-Date: 2000-06-06 16:16+0300\n"
       "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
       "Last-Translator: FULL NAME \n"
       "Language-Team: LANGUAGE \n"
       "MIME-Version: 1.0\n"
       "Content-Type: text/plain; charset=CHARSET\n"
       "Content-Transfer-Encoding: ENCODING\n"
    
       # example-program's Finnish translation.
       # Copyright (C) 2004 Free Software Foundation, Inc.
       # Erkki Esimerkki, 2004.
       #
       msgid ""
       msgstr ""
       "Project-Id-Version: example-program\n"
       "Report-Msgid-Bugs-To: \n"
       "POT-Creation-Date: 2000-06-06 16:16+0300\n"
       "PO-Revision-Date: 2004-08-12 11:13+0300\n"
       "Last-Translator: Erkki Esimerkki  <erkki@example.com.invalid>\n"
       "Language-Team: Finnish  <gnome-fi-laatu@lists.sourceforge.net>\n"
       "MIME-Version: 1.0\n"
       "Content-Type: text/plain; charset=UTF-8\n"
       "Content-Transfer-Encoding: 8bit\n"
       "Plural-Forms: nplurals=2; plural=(n != 1);\n"
    
  • Korvaa "SOME DESCRIPTIVE TITLE" tekstillä: "paketin_nimi Finnish Translation", esim "eog Finnish Translation"
  • Lisää tämän alle rivi "# Suomennos: http://gnome-fi.org/"
  • Korvaa "YEAR" nykyisellä vuodella.
  • Korvaa "FIRST AUTHOR , YEAR." omilla tiedoillasi (sähköpostiosoitteen kera, esimerkiksi "Jarkko Ranta, 2004 <jjranta@cc.joensuu.fi>". Mikäli tässä on jo jonkun kääntäjän tiedot, älä poista näitä, vaan lisää uusi rivi alle.
  • Poista "fuzzy"
  • Jos tiedät paketin nykyisen version, korvaa sillä "PACKAGE VERSION".
  • Laita kohtaan "PO-Revision-Date" tiedot siitä, milloin olet viimeiksi muuttanut tiedostoa, tai tarkastanut sen käännöksen.
  • Laita kohtaan "Last-Translator" aina omat tietosi.
  • Muuta kohdan "Language-Team" "LANGUAGE" muotoon "Finnish" ja sen perään sähköpostiosoite <gnome-fi-laatu@lists.sourceforge.net>.
  • Muuta kohtaan "CHARSET" seuraava: "UTF-8".
  • Muuta kohtaan "ENCODING" seuraava: "8bit".
  • Lisää otsikkotietojen loppuun "Plural-Forms: nplurals=2; plural=(n != 1);\n"

    Tämän jälkeen käännetään käännettävät kohdat. Käännettävät tekstit ovat seuraavassa muodossa:

    msgid "Text"
    msgstr "Teksti"
    
    Msgid voi sisältää erilaisia erikoiskomentoja (kuten esimerkiksi \n joka on rivinvaihto) jotka kopioidaan sellaisenaan. Näiden merkitykset oppii ajallaan.

    4. Käännöksen testaaminen

    Käännöstiedostot sisältävät usein kohtia joiden kontekstia on vaikea päätellä suoraan tiedostosta. Lisäksi käännökseen pääsee valitettavasti kirjoitusvirheitäkin. Tämän vuoksi voi olla syytä harjoittaa erilaisia laadunvalvontatoimia ennen kuin käännös julkaistaan.

    Käännöstiedoston rakenteen tarkistaminen

    Käännöstiedosto kannattaa tarkistaa vähintään siitä ettei siinä ole vaaditun gettext-muodon vastaisia muotoiluja (eli monasti kirjoitusvirheitä).

    Tämä on helppo tarkistaa komentamalla:

    # msgfmt -c fi.po
    
    Ohjelma ilmoittaa mahdollisista virheistä sekä näiden sijainnista.

    Käännöksen tarkistaminen ohjelmassa

    Kun olet mielestäsi saanut suomennoksen valmiiksi, olisi hyvä jos pystyisit testaamaan sitä käytännössä. Tämä onnistuu parhaiten mikäli käytössäsi on käännettävästä ohjelmasta mahdollisimman paljon cvs-versiota muistuttava versio. Käytännössä tämä tarkoittaa yleensä että testaat mahdollisimman uudella ohjelman versiolla.

    Seikkailunhaluiset voivat jopa yrittää kääntää ohjelman käyttöön juuri ladatuista cvs-lähdekoodeista. Tämä ei kuitenkaan aina onnistu, sillä cvs-lähdekoodi on paikka jossa ohjelman aktiivinen kehitystyö tehdään, ja sen ei ole aina tarkoituskaan olla siinä kunnossa että se kääntyisi suorituskelpoiseksi ohjelmaksi.

    Po-tiedosto saatetaan ohjelmien ymmärtämään mo-muotoon komentamalla po/ -hakemistossa seuraavasti:

    # msgfmt -c -o paketin_nimi.mo fi.po
    
    Jos fi.po -tiedostossa on virheitä, ilmoittaa msgfmt siitä. Korjaa virheet, ja yritä uudestaan. Tuloksena syntyvä mo-tiedosto kopioidaan tämän jälkeen käännöstiedostot sisältävään hakemistoon. Mikäli käytät jakeluversiosi mukana tulevaa ojelmaversiota, on tämä hakemisto
    /usr/share/locale/fi/LC_MESSAGES/
    
    Mikäli taas olet itse kääntänyt ohjelman lähdekoodeista, hakemisto on
    /usr/local/share/locale/fi/LC_MESSAGES/
    
    Käynnistä tämän jälkeen testattava ohjelma uudestaan (jos se oli käynnissä) ja uuden suomennoksen pitäisi olla nyt näkyvillä.

    Käännöksen tarkistuttaminen laadunvalvontalistalla

    Mitä useampi tarkistaja, sitä parempi suomennos. Jokaisella meillä on joitakin omintakeisia tapoja sanoa eri asioita, eivätkä nämä tavat ole aina niitä, jotka tavallisen käyttäjän silmissä ovat niitä selkeimpiä. Samaten käännökseen voi eksyä huonoa suomen kieltä ja jopa varsinaisia kirjoitusvirheitä.

    Tämän vuoksi käytämme monen muun suomennosprojektin kanssa yhteistä laadunvalvontaan keskittynyttä postituslistaa. Tälle listalle on tarkoitus lähettää valmistuneet suomennokset oikolukua varten. Suomennettu tiedosto liitetään osaksi viestirunkoa (ei siis erillisenä liitetiedostona), jotta listan tilaajien olisi mahdollisimman helppoa oikolukea se. Oikolukijat esittävät tämän jälkeen mahdollisia korjaus- ja parannusehdotuksia kääntäjälle, kääntäjän harkitessa mitkä ehdotuksista otetaan mukaan suomennokseen ja mitkä hylätään.

    Kokemus on osoittanut että laadunvalvontalistan käyttämisestä seuraa parempia suomennoksia.

    5. Käännöksen palauttaminen cvs-puuhun

    Mikäli sinulla on kirjoitusoikeudet gnomen cvs-palvelimelle, voit itse lähettää suomennoksesi sinne. Muussa tapauksessa kysy postituslistalta, kuka tarjoutuisi toimimaan välittäjänä. Kaikkien kääntäjien ei kannata yrittää hakea kirjoitusoikeuksia cvs-palvelimelle, sillä Gnomen kehittävät varovat hieman keille oikeudet antavat. Käytännössä kannattaa ainakin jonkin aikaa toimia välittäjien kautta, kunnes on vakiinnuttanut asemansa kääntäjänä.

    Mitä harvemmalla kääntäjällä nämä oikeudet ovat, sitä pienemmät ovat mahdollisuudet, että jotain menee vikaan ja cvs-puuhun tulee kirjoitetuksi jotain mitä ei pitäisi (mahdollisesti haitaten kehittäjien ja muiden kääntäjien työtä).

    Tällä hetkellä ainakin seuraavat henkilöt voivat lähettää suomennoksiasi cvs-puuhun:

    Jarkko Ranta (jjranta@cc.joensuu.fi)
    Sami Pesonen (spesonen@iki.fi)




  • menu
       Pääsivu
       Mitä uutta?
       Sanakirja
       Ohjeita
       Paketit
       Raportit
       Status
       Kuvia
       Linkit

    sourceforge
       Projektisivu
       Postituslistat




    [ Ylläpito ]   SourceForge Logo   [ Pääsivu ]