[PATCH 0 of 9 STABLE? V2] make i18n man and html
Takumi IINO
trot.thunder at gmail.com
Thu May 23 12:13:35 CDT 2013
Hi Martin.
2013/5/23 Martin Geisler <martin at geisler.net>
> Takumi IINO <trot.thunder at gmail.com> writes:
>
> Hi Takumi,
>
> > This patch series aim is make i18n man and html.
>
> Thanks for working on this! I'm really bad at taking time for Mercurial
> work these days, but I wanted to reply since I once played with the same
> idea... I've just updated my old patch to make it work with the default
> branch. The version seems to work.
>
I applied your patch and tried to generate translated html with GNU Make
3.81 on mac os x 10.8.3,
but I could not generate html:
% hg log -r qparent --template "{node}\n"
865beb8497208ee8e719c939035a6bb5cd9238fc
% LANGUAGE=da make clean all 2>&1 | tail
python runrst hgmanpage --halt warning \
--strip-elements-with-class htmlonly hgrc.5.txt hgrc.5
python runrst html --halt warning \
--link-stylesheet --stylesheet-path style.css hg.1.txt hg.1.html
python runrst html --halt warning \
--link-stylesheet --stylesheet-path style.css hgignore.5.txt
hgignore.5.html
python runrst html --halt warning \
--link-stylesheet --stylesheet-path style.css hgrc.5.txt
hgrc.5.html
make[1]: *** No rule to make target `hg.1.da.html', needed by `html'.
Stop.
make: *** [doc] Error 2
i have a mistake or use older version?
I think it is simpler than your patch series, but maybe my patch is
> missing something? Could you take a look at it and see if it produces
> okay output for you?
>
HTML, which is translated in Japanese partially exists.
- http://mercurial.selenic.com/wiki/TranslatedManPages
The goal is to translate all.
I seem your patch dose not output translation of these files as html:
- doc/common.txt
- content of doc/hgignore.5.txt (mercurial/help/hgignore.txt)
- content of doc/hgrc.5.txt (mercurial/help/config.txt)
Regards.
>
> The ignore file needs to be updated and I think the Makefile can be
> further improved -- there is a hard-coded list of locales to generate
> and there is some redundancy with the patch below. But it was just a
> quick attempt :)
>
> Btw, the extra newlines after the ..note directives were needed to make
> Docutils like the input. I forget the details, but I seem to recall that
> this changed between Docutils versions, i.e., that a newer version
> required the newline.
>
>
> # HG changeset patch
> # User Martin Geisler <martin at geisler.net>
> # Date 1369259619 -7200
> # Wed May 22 23:53:39 2013 +0200
> # Node ID f225f9e1316fff783d06a837c497a06cf56b8c0c
> # Parent 0ec31231afad3fc171f882226aae50d4737559b5
> [mq]: translate-manpages
>
> diff --git a/Makefile b/Makefile
> --- a/Makefile
> +++ b/Makefile
> @@ -9,7 +9,7 @@
> PYTHON=python
> PURE=
> PYFILES:=$(shell find mercurial hgext doc -name '*.py')
> -DOCFILES=mercurial/help/*.txt
> +DOCFILES=mercurial/help/*.txt doc/hg.1.txt doc/hgignore.5.txt
> doc/hgrc.5.txt
>
> # Set this to e.g. "mingw32" to use a non-default compiler.
> COMPILER=
> diff --git a/doc/Makefile b/doc/Makefile
> --- a/doc/Makefile
> +++ b/doc/Makefile
> @@ -7,16 +7,16 @@
> MANDIR=$(PREFIX)/share/man
> INSTALL=install -c -m 644
> PYTHON=python
> +LOCALES=da
> RSTARGS=
>
> -export LANGUAGE=C
> -export LC_ALL=C
> +export HGENCODING=UTF-8
>
> all: man html
>
> man: $(MAN)
>
> -html: $(HTML)
> +html: $(HTML) $(foreach lang,$(LOCALES),$(HTML:%.html=%.$(lang).html))
>
> hg.1.txt: hg.1.gendoc.txt
> touch hg.1.txt
> @@ -29,6 +29,19 @@
>
> hgrc.5.html: ../mercurial/help/config.txt
>
> +hg.1.%.txt: hg.1.gendoc.txt ../i18n/%.po $(GENDOC)
> + LANGUAGE=$* ${PYTHON} gendoc.py > hg.1.gendoc.txt
> + LANGUAGE=$* $(PYTHON) translate.py < hg.1.txt > $@
> +
> +hgignore.5.%.txt: hgignore.5.txt
> + LANGUAGE=$* $(PYTHON) translate.py < $< > $@
> +
> +hgrc.5.%.txt: hgrc.5.txt
> + LANGUAGE=$* $(PYTHON) translate.py < $< > $@
> +
> +hg.5.%.txt: hg.5.txt
> + LANGUAGE=$* $(PYTHON) translate.py < $< > $@
> +
> %: %.txt common.txt
> $(PYTHON) runrst hgmanpage $(RSTARGS) --halt warning \
> --strip-elements-with-class htmlonly $*.txt $*
> diff --git a/doc/gendoc.py b/doc/gendoc.py
> --- a/doc/gendoc.py
> +++ b/doc/gendoc.py
> @@ -7,7 +7,7 @@
> from mercurial import encoding
> from mercurial import minirst
> from mercurial.commands import table, globalopts
> -from mercurial.i18n import _
> +from mercurial.i18n import _, gettext
> from mercurial.help import helptable
> from mercurial import extensions
> from mercurial import util
> @@ -16,6 +16,7 @@
> if not docstr:
> return "", ""
> # sanitize
> + docstr = gettext(docstr)
> docstr = docstr.strip("\n")
> docstr = docstr.rstrip()
> shortdesc = docstr.splitlines()[0].strip()
> diff --git a/doc/translate.py b/doc/translate.py
> new file mode 100644
> --- /dev/null
> +++ b/doc/translate.py
> @@ -0,0 +1,6 @@
> +
> +import sys
> +from mercurial.i18n import gettext
> +
> +if __name__ == "__main__":
> + sys.stdout.write(gettext(sys.stdin.read()))
> diff --git a/i18n/da.po b/i18n/da.po
> --- a/i18n/da.po
> +++ b/i18n/da.po
> @@ -11990,7 +11990,7 @@
> msgstr "Datoformater"
>
> msgid "File Name Patterns"
> -msgstr "Mønstre for filnavne"
> +msgstr ""
>
> msgid "Environment Variables"
> msgstr "Miljøvariable"
> diff --git a/mercurial/commands.py b/mercurial/commands.py
> --- a/mercurial/commands.py
> +++ b/mercurial/commands.py
> @@ -396,6 +396,7 @@
> changes and the merged result is left uncommitted.
>
> .. note::
> +
> backout cannot be used to fix either an unwanted or
> incorrect merge.
>
> @@ -933,6 +934,7 @@
> """set or show the current branch name
>
> .. note::
> +
> Branch names are permanent and global. Use :hg:`bookmark` to
> create a
> light-weight bookmark instead. See :hg:`help glossary` for more
> information about named branches and bookmarks.
> @@ -2675,6 +2677,7 @@
> Differences between files are shown using the unified diff format.
>
> .. note::
> +
> diff may generate unexpected results for merges, as it will
> default to comparing against the working directory's first
> parent changeset if no revisions are specified.
> @@ -2764,6 +2767,7 @@
> comment.
>
> .. note::
> +
> export may generate unexpected diff output for merge
> changesets, as it will compare the merge changeset against its
> first parent only.
> @@ -2896,6 +2900,7 @@
> continued with the -c/--continue option.
>
> .. note::
> +
> The -c/--continue option does not reapply earlier options.
>
> .. container:: verbose
> @@ -3944,12 +3949,14 @@
> changed files and full commit message are shown.
>
> .. note::
> +
> log -p/--patch may generate unexpected diff output for merge
> changesets, as it will only compare the merge changeset against
> its first parent. Also, only files different from BOTH parents
> will appear in files:.
>
> .. note::
> +
> for performance reasons, log FILE may omit duplicate changes
> made on branches and will not show deletions. To see all
> changes including duplicates and deletions, use the --removed
> @@ -4934,6 +4941,7 @@
> """restore files to their checkout state
>
> .. note::
> +
> To check out earlier revisions, you should use :hg:`update REV`.
> To cancel an uncommitted merge (and lose your changes), use
> :hg:`update --clean .`.
> @@ -5257,6 +5265,7 @@
> unless explicitly requested with -u/--unknown or -i/--ignored.
>
> .. note::
> +
> status may appear to disagree with diff if permissions have
> changed or a merge has occurred. The standard diff format does
> not report permission changes and diff only reports changes
>
>
>
>
> --
> Martin Geisler
>
--
Takumi IINO
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://selenic.com/pipermail/mercurial-devel/attachments/20130524/06d32cc8/attachment.html>
More information about the Mercurial-devel
mailing list