1. michilu
  2. mercurial-translation-ja


mercurial-translation-ja / README.en.txt

                  Japanese translation for Mercurial

This is the project to translate message file('i18n/ja.po') of
Mercurial distributed SCM(http://www.selenic.com/mercurial/wiki/).

* Terminology:

  - SRC      : Mercurial source tree
               (e.g.: extracted tarball, or cloned repo)
  - L10N-repo: translation working repo

* How to coordinate translation work in branches:

  - for translator:

    - work in 'default' branch of L10N-repo

      1. notify favorite translation part to maintainers and wait for
         acceptance of it

      2. translate corresponding part of 'i18n/ja.po'

      3. check translation result by:

           % msgfmt --check L10N-repo/ja.po

      4. resolve problems, if found

      5. create patch to update 'i18n/ja.po' and send it to
         maintainers, if not having public repository

      6. commit update of 'i18n/ja.po' and notify it to maintainers,
         if having public repository

      7. adjust translation, if needed
         (e.g.: update of source documentation, style unification, and so on)

      8. (completed)

  - for maintainer:

    - apply MERGE process on demand
    - apply CATCHUP process at short intervals(weekly ?)
    - apply IMPORT process at 'i18n/ja.po' update in SRC
    - apply EXPORT process at long intervals(bimonthly ?)
    - check '#, fuzzy' parts in 'i18n/ja.po' found in UPDATE process
      and coordinate re-translation of them

    * [MERGE] changeset from translators:

      1. apply received patch on head in 'default' branch of
         L10N-repo, if translation is received by patch form

      2. 'hg pull' from repository of translator(and resolve multiple
         heads), if translation is published via public repository

      3. (completed)

    * [UPDATE] 'ja.po' of L10N-repo by 'hg.pot' of SRC:

      1. check 'ja.po' content of L10N-repo by:

           % msgfmt --check L10N-repo/ja.po

      2. resolve problems found and commit result, if needed

      3. update SRC by downloading tarball or pull-n-update

      4. update 'hg.pot' in SRC by:

           % make update-pot

      5. update 'ja.po' of L10N-repo with updated 'hg.pot' in SRC by:

           % msgmerge --update --no-location L10N-repo/ja.po SRC/i18n/hg.pot

      6. resolve 'fuzzy' problems in updated 'ja.po', if needed

         DO NOT adjust translation part, even if it is very simple
         modification.  Keep '#, fuzzy' mark in 'ja.po' file to find
         target out easily for re-translation in 'default' branch.

      7. commit updated 'ja.po' in L10N-repo

      8. (completed)

    * [CATCHUP] update in SRC:

      1. apply UPDATE process on head in 'downstream-line' branch of

      2. merge UPDATE-ed revision into 'default' branch of L10N-repo

      3. (completed)

    * [IMPORT] from SRC into L10N-repo:

      1. update SRC by downloading tarball or pull-n-update

      2. over-write 'ja.po' in 'sync-line' branch head of L10N-repo by
         new one in SRC

      3. do below steps, only if there is any incoming update of 'ja.po'

      4. commit 'ja.po' update in 'sync-line' branch of L10N-repo

      5. merge above new revision into 'downstream-line' branch of

      6. apply UPDATE process on merged revision in
         'downstream-line' branch of L10N-repo

      7. merge UPDATE-ed revision into 'default' branch of L10N-repo

      8. (completed)

    * [EXPORT] from L10N-repo:

      0. finish CATCHUP process, and resolve all problems

      1. decide exported revision in 'default' branch of L10N-repo

      2. merge above revision into 'upstream-line' branch of L10N-repo

      3. get difference of 'ja.po' from head of 'sync-line' branch to
         head of 'upstream-line' branch

      4. send above difference as updating patch for 'i18n/ja.po' to
         mercurial-devel ML

      5. resolve minor problems in 'upstream-line' branch of L10N-repo
         and re-send patch, if needed(e.g.: typo and so on)

      6. merge above two heads into 'sync-line', when sent patch is
         imported into official repo

      7. (completed)

* Priority of translation:

  Translation targets are divides into two big groups.

    A. Mercurial core

        This is the group for source files under 'SRC/mercurial'.

        This group will be divided into some small groups not by file
        boundary, but by importance and seriousness of information for

          A-1. command help
          A-2. help topics
          A-3. option descriptions
          A-4. serious/interactive messages
                raise-ed messages, ui.warn(), ui.prompt()
          A-5. messages shown always
          A-6. suppressible information
          A-7. additional information
                  ui.note(), ui.debug()

    B. extensions

        This is the group for source files under 'SRC/hgext'.

        This group will be divided into some small groups by file

        Priority list shown below is decided by frequency in use,
        importance and amount of i18n-ed messages of extensions.
        'frequency' and 'importance' are based on personal impression
        of me, FUJIWARA Katsunori :-)

          B-1. mq
          B-2. patchbomb
          B-3. rebase, record, transplant, and so on ....

  Total priority may be:

    1. A-1 => done
    2. A-2 => done
    3. A-3
    4. A-4
    5. A-5
    6. B-1
    7. B-2
    8. B-3
    8. A-6, A-7, 

* Style of translation:

  Please see 'README.ja.txt' for detail, because I can not explain it
  well in English :-<