L10n:Mercurial guide

Quick guide: (detaljeret beskrivelse neden for)

# hent
hg pull
hg pull bitbucket
hg update --check

hg pull (i mozilla-aurora og comm-aurora)
hg update --check (i mozilla-aurora og comm-aurora)

# lav rettelser
# ... rediger filerne ...
hg add <filnavn> # hvis nye filer
hg remove <filnavn> # hvis slettede filer

# kontroller
hg status
hg diff

# færdiggør (hent igen først)
hg commit -m"Beskrivelse af ændringerne" -u"Dit Navn <din@mailadresse.dk>"

# kontroller
hg outgoing
hg outgoing bitbucket

# send
hg push # hvis du har adgang
hg push bitbucket

# andre kommandoer
hg add filnavn; hg remove filnavn; hg addremove
hg heads; hg update 123; hg merge 456; hg commit ...

Installation af mercurial

På Windows

  • Download og installer MozillaBuild herfra (lad være med at læse noget på den side og lad være med at downloade andet end MozillaBuild)
  • Lad være med at ændre installationsmappen (vigtigt)
  • Et terminalvindue kan åbnes ved at dobbeltklikke på start-l10n.bat i mappen C:\mozilla-build
  • For at kopiere tekst i vinduet:
    • Vælg L10n-Thunderbird3 Guide-cmd-menu.png -> Rediger -> Marker (engelsk: Edit -> Mark)
      L10n-Thunderbird3 Guide-edit-mark.png
    • Marker teksten med musen
    • Afslut med højreklik
  • For at indsætte tekst i vinduet:
    • Sæt markøren det ønskede sted
    • Vælg L10n-Thunderbird3 Guide-cmd-menu.png -> Rediger -> Indsæt (engelsk: Edit -> Paste)
      L10n-Thunderbird3 Guide-edit-paste.png

På Linux

  • Åbn et terminalvindue
  • Skriv sudo apt-get install mercurial

Bitbucket

Brug af Mercurial

  • Alle Mercurial-kommandoer skal udføres fra et terminalvindue. Se afsnittet om installation ovenfor for hvordan et MozillaBuild-terminalvindue åbnes på Windows
  • Brug kommandoen cd til at skifte mellem mapperne
  • Jeg vil anbefale at du lægger de forskellige Mercurial-repositories i hver deres undermappe under en fælles mappe (lad os kalde den "arbejdsmappen")
  • Tip: Man kan tilføje -R <mappe> for at udføre en kommando uden at skulle skifte til undermappen

Hent første gang

  • Brug cd til at skifte til en mappe, som du vil lave oversættelsen i. De danske og de engelske oversættelser vil blive placeret i forskellige undermapper til denne mappe.
  • Hent de engelske tekster for Firefox (desktop), Firefox (Android) og Toolkit ved at skrive hg clone http://hg.mozilla.org/releases/mozilla-aurora/ mozilla-aurora
  • Hent de engelske tekster for Thunderbird, Lightning og SeaMonkey ved at skrive hg clone http://hg.mozilla.org/releases/comm-aurora/ comm-aurora
  • Hent de engelske tekster for Firefox OS ved at skrive hg clone http://hg.mozilla.org/gaia-l10n/en-US/ gaia-en-US
  • Hent de den danske oversættelse af Firefox (desktop), Firefox (mobil), Thunderbird, Lightning, SeaMonkey og Toolkit ved at skrive hg clone http://hg.mozilla.org/releases/l10n/mozilla-aurora/da/ da-aurora
  • Hent de den danske oversættelse af Firefox OS ved at skrive hg clone http://hg.mozilla.org/gaia-l10n/da/ gaia-da
  • Bemærkninger:
    • Adresser for gamle versioner er dokumenteret på siden L10n:Hg.
    • "Toolkit" er navnet på de tekststrenge, som alle programmerne har til fælles.
    • Alle de ovenstående kommandoer udføres fra samme mappe. Alle efterfølgende kommandoer udføres fra de enkelte undermapper.
    • Billedet herunder er ikke opdateret
      L10n-Thunderbird3 Guide-hg-clone.png
  • Åbn filen da-aurora/.hg/hgrc i en tekst editor
    • Tilføj følgende linje:bitbucket = https://bitbucket.org/mozilladanmark/mozilla-dk
    • Du kan også bruge https://brugernavn:adgangskode@bitbucket.org/mozilladanmark/mozilla-dk og undgå at skrive brugernavn og adgangskode hver gang
    • Følgende gælder kun hvis du skal push'e til repositoriet:
      • Lav en kopi af linjen default, omdøb den til default-push og ret http til ssh. Her er et eksempel:[paths]
        default = http://hg.mozilla.org/releases/l10n/mozilla-aurora/da/
        default-push = ssh://hg.mozilla.org/releases/l10n/mozilla-aurora/da/
        bitbucket = https://bitbucket.org/mozilladanmark/mozilla-dk
  • Åbn filen gaia-da/.hg/hgrc og foretag tilsvarende ændringer som ovenfor:[paths]
    default = http://hg.mozilla.org/releases/l10n/mozilla-aurora/da/
    default-push = ssh://hg.mozilla.org/releases/l10n/mozilla-aurora/da/
    bitbucket = https://bitbucket.org/mozilladanmark/gaia-da

Hent efterfølgende opdateringer

  • Brug cd til at skifte til den mappe, du vil opdatere, fx da-aurora, mozilla-aurora, comm-aurora, gaia-da eller gaia-en-US.
  • Skriv hg pull for at hente de nyeste ændringer fra Mozillas repository til dit lokale repository
  • Skriv hg pull bitbucket for at hente de nyeste ændringer fra Bitbuckets repository til dit lokale repository (gælder kun da-aurora og gaia-da, ikke mozilla-aurora, comm-aurora og gaia-en-US)
  • Skriv hg update for at hente ændringerne fra dit lokale repository ud til dine filer
    • Nogen gange kan det være nødvendigt at bruge hg update --check, specielt i repositoriet med de engelske strenge
  • Du kan lave en fil til at gøre arbejdet for dig.
    • Lav en fil med navnet pull.sh i arbejdsmappen (den som også indeholder da-aurora, mozila-aurora, comm-aurora, gaia-da og gaia-en-US), åbn den i en tekst editor og indsæt: hg pull --repository mozilla-aurora
      hg update --check --repository mozilla-aurora
      hg pull --repository comm-aurora
      hg update --check --repository comm-aurora
      hg pull --repository da-aurora
      hg pull bitbucket --repository da-aurora
      hg update --check --repository da-aurora
      hg pull --repository gaia-da
      hg pull bitbucket --repository gaia-da
      hg update --check --repository gaia-da
      hg pull --repository gaia-en-US
      hg update --check --repository gaia-en-US
    • Du kan nu hente opdateringer ved at skrive ./pull.sh

Se dine ændringer

  • Skriv hg status for at se en oversigt over filerne.
    • M betyder ændring, D betyder slettet og A betyder tilføjet
    • ! betyder du har slettet en fil men endnu ikke fortalt Mercurial om det
    • ? betyder du har tilføjet en fil men endnu ikke fortalt Mercurial om det
  • Skriv hg diff for at få mere detaljeret information om hvad du har ændret. Det kan være en fordel at skrive hg diff > rettelser.diff og åbne filen rettelser.diff i en tekst editor i stedet, da diff-formatet kan være svært at læse i et terminalvindue.

Tilføjede og slettede filer

Hvis en fil er tilføjet eller slettet skal den også registreres eller afregistreres i hg før hg diff og hg commit.

Tilføj en fil
hg add <filnavn> - filen skal allerede være oprettet
Slet en fil
hg remove <filnavn> - hg sletter selv filen

Alternativt hvis hg status ikke rapporterer andet end de filer man vil tilføje og slette (samt modificerede filer), kan man i stedet bruge hg addremove (intet filnavn), som tilføjer alle ukendte filer og sletter alle manglende filer. Men man skal passe på med denne kommando, hvis man har lokale filer liggende, som man ikke vil have med (fx rettelser.diff).

Send ændringer

  • Vigtigt: Sørg for at du er fuldt opdateret med hg pull, hg pull bitbucket og hg update som beskrevet i afsnittet #Hent efterfølgende opdateringer, ellers kan det gå helt i baglås
  • Kontroller hvad du er ved at sende som beskrevet i afsnittet #Se dine ændringer
  • Skriv hg commit -m"Beskrivelse af ændringerne" -u"Dit Navn <din@mailadresse.dk>", hvor teksterne er erstattet med hvad der nu passer, for at sende ændringerne fra dine lokale filer til dit lokale repository
  • Skriv hg outgoing (eller hg outgoing bitbucket) for at se hvad du er ved at sende. Der skulle gerne kun være den ændring du lige har lavet med dit hg commit ....
  • Skriv hg push bitbucket for at sende ændringerne fra dit lokale repository til Bitbuckets repository.
  • Skriv hg push for at sende ændringerne fra dit lokale repository til Mozillas repository. (ignorer dette trin, hvis du ikke har adgang)

Hvis hg push fejler har du sandsynligvis glemt første trin. Du kan rette op på det således:

  • Kontroller at du har alle ændringer med hg pull og hg pull bitbucket
  • Kontroller der ikke er nogen ændringer, der mangler at blive committet, med hg status
  • Skriv hg heads default
    • Hvis der er ét head, kan du pushe med hg push -f
    • Hvis der er to heads, bemærk deres ID, som står på linjen changeset (enten tallet før eller hex-tallet efter kolonet kan bruges)
      • Skriv hg update 123 hvor 123 er ID'et på det ene head
      • Skriv hg merge 456 hvor 456 er ID'et på det andet head
      • Lav et hg commit som beskrevet oven for og prøv at pushe igen

Note: Før du kan lave hg push skal du have adgang og have sat ssh op, men det vil jeg ikke beskrive her - se [1][2]

Hvis du skal overføre noget til Mozillas repository, som er lavet af en person der kun har adgang til Bitbuckets repository, skal du skrive hg pull bitbucket efterfulgt af hg push

Fejl

Hvis der er noget der ikke virker, så skriv til mig. Det er nemmere at hjælpe, hvis du fortæller hvilken kommando der fejler, samt hvad outputtet fra disse kommandoer er:

  • hg status
  • hg parents
  • hg heads default
  • hg outgoing

Tekst editor

  • Du skal bruge en tekst editor lignende Notepad (Notepad kan ikke bruges)
  • Sæt din tekst editor til at åbne og gemme filer i UTF-8 - 99,9% af alle tekst editorer bruger ISO-8859-1 som standard
  • Sæt din tekst editor til ikke at gemme et Byte Order Mark i begyndelsen af filen (vigtigt) - 99.9% af alle tekst editorer gemmer som standard et Byte Order Mark, hvis man har valgt UTF-8 (Dette er umuligt at ændre i Notepad - derfor kan den ikke bruges)
  • Sæt din tekst editor op til at bruge LF som linjeskift - de fleste tekst editorer til Windows bruger CRLF som standard, mens de fleste tekst editorer til Linux bruger LF som standard (nogle filer i Thunderbird, som stammer tilbage fra Thunderbird 2, bruger CRLF, så vi har en blanding af LF or CRLF)
  • Spørg hvis du har brug for hjælp - jeg (Jesper) ved hvordan man gør i SciTE
  • AlleyKat om http://notepad-plus.sourceforge.net/ : Indstillinger > Præferencer.. -> faneblad Nyt dokument > sektion Nyt dokument > undersektion Kodning > vælg UTF-8 (uden BOM) og (dette er det vigtige!) markér underfeltet "Anvend når ANSI-fil åbnes".
    NotepadPlusPlus-indstilling.png

Oversæt

  • Husk at aftale med de andre først
  • Åbn dashboard og klik derefter på C i kolonnen H/C (lad være med at bogmærke siden C, da adressen ændres hver gang der er en opdatering)
  • Siden viser en oversigt over tilføjede, slettede og ændrede filer. For ændrede filer vises tilføjede og slettede tekststrenge i en kasse. Spørg eventuelt for hjælp til hvordan siden skal læses
  • Vælg en fil
  • Find filen i de to mapper arbejdsmappe/mozilla-aurora/arbejdsmappe/comm-aurora og arbejdsmappe/da-aurora (mappestrukturen i dashboard matcher den i da-aurora, men ikke helt den i mozilla-aurora/comm-aurora, kan du ikke finde en fil, så spørg)
  • Åbn de to filer i en teksteditor (se oven for)
  • Så er det i gang med at oversætte - spørg hvis du ikke forstår filformaterne
  • Er du i tvivl om en oversættelse, kan du spørge i forum

Tips til oversættelse

  • Sådan finder du flere oplysninger om en streng link.
  • Transvision er et stærk hjælpeværktøj, hvor du kan slå ord og strenge op og se, hvad de tidligere er oversat som. link.
  • Hvis en streng indeholder en variabel, og variablen ikke skal bruges, kan du i en properties-fil erstatte den med %1$0.S (link)


Hjælp

  • i forummet
  • På messenger: dikrib()jabber.dk
  • På mail: mozilla()jesperkristensen.dk