Providing git in localized version is a good step for general adoption of the tool. But as of now, if one needs to refer to the manual pages, they are still confronted to english. The aim is to provide documentation to users in their own language. signed-off-by: Jean-Noel Avila <jn.avila@xxxxxxx> --- Documentation/Makefile | 23 +++++++++++++++++++++-- Documentation/po4a.conf | 5 +++++ 2 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 Documentation/po4a.conf diff --git a/Documentation/Makefile b/Documentation/Makefile index b5be2e2d3..1f71c0b80 100644 --- a/Documentation/Makefile +++ b/Documentation/Makefile @@ -1,4 +1,5 @@ # Guard against environment variables +MAN1_L10N_TXT = MAN1_TXT = MAN5_TXT = MAN7_TXT = @@ -10,6 +11,7 @@ OBSOLETE_HTML = MAN1_TXT += $(filter-out \ $(addsuffix .txt, $(ARTICLES) $(SP_ARTICLES)), \ $(wildcard git-*.txt)) +MAN1_L10N_TXT += $(wildcard po/*/man1/git-*.txt) MAN1_TXT += git.txt MAN1_TXT += gitk.txt MAN1_TXT += gitremote-helpers.txt @@ -86,6 +88,7 @@ DOC_HTML += $(patsubst %,%.html,$(ARTICLES) $(SP_ARTICLES)) DOC_MAN1 = $(patsubst %.txt,%.1,$(MAN1_TXT)) DOC_MAN5 = $(patsubst %.txt,%.5,$(MAN5_TXT)) DOC_MAN7 = $(patsubst %.txt,%.7,$(MAN7_TXT)) +DOC_MAN1_L10N = $(patsubst %.txt,%.1,$(MAN1_L10N_TXT)) prefix ?= $(HOME) bindir ?= $(prefix)/bin @@ -209,6 +212,7 @@ endif ifneq ($(findstring $(MAKEFLAGS),s),s) ifndef V + QUIET_PO4A = @echo ' ' PO4A $@; QUIET_ASCIIDOC = @echo ' ' ASCIIDOC $@; QUIET_XMLTO = @echo ' ' XMLTO $@; QUIET_DB2TEXI = @echo ' ' DB2TEXI $@; @@ -229,11 +233,20 @@ all: html man html: $(DOC_HTML) -man: man1 man5 man7 +man: man1 man5 man7 man_l10n man1: $(DOC_MAN1) man5: $(DOC_MAN5) man7: $(DOC_MAN7) +man_l10n: po4a man1_p_l10n +po4a: po4a.conf + $(QUIET_PO4A)po4a po4a.conf + +man1_p_l10n: po4a + $(MAKE) man1_l10n + +man1_l10n: $(DOC_MAN1_L10N) + info: git.info gitman.info pdf: user-manual.pdf @@ -247,6 +260,11 @@ install-man: man $(INSTALL) -m 644 $(DOC_MAN1) $(DESTDIR)$(man1dir) $(INSTALL) -m 644 $(DOC_MAN5) $(DESTDIR)$(man5dir) $(INSTALL) -m 644 $(DOC_MAN7) $(DESTDIR)$(man7dir) + $(MAKE) install-man-l10n + +install-man-l10n: $(DOC_MAN1_L10N) + $(INSTALL) -d -m 755 $(DESTDIR)$(mandir)/$(firstword $(subst /man1/, ,$(subst po/,,$<)))/man1 + $(INSTALL) -m 644 $< $(DESTDIR)$(mandir)$(subst po,,$<) install-info: info $(INSTALL) -d -m 755 $(DESTDIR)$(infodir) @@ -323,6 +341,7 @@ clean: $(RM) technical/*.html technical/api-index.txt $(RM) $(cmds_txt) $(mergetools_txt) *.made $(RM) manpage-base-url.xsl + $(RM) po/*/*.1 po/*/*.txt $(MAN_HTML): %.html : %.txt asciidoc.conf $(QUIET_ASCIIDOC)$(RM) $@+ $@ && \ @@ -339,7 +358,7 @@ manpage-base-url.xsl: manpage-base-url.xsl.in %.1 %.5 %.7 : %.xml manpage-base-url.xsl $(QUIET_XMLTO)$(RM) $@ && \ - $(XMLTO) -m $(MANPAGE_XSL) $(XMLTO_EXTRA) man $< + $(XMLTO) -m $(MANPAGE_XSL) $(XMLTO_EXTRA) -o $(dir $<) man $< %.xml : %.txt asciidoc.conf $(QUIET_ASCIIDOC)$(RM) $@+ $@ && \ diff --git a/Documentation/po4a.conf b/Documentation/po4a.conf new file mode 100644 index 000000000..b6ee8b4a6 --- /dev/null +++ b/Documentation/po4a.conf @@ -0,0 +1,5 @@ +[po4a_langs] fr +[po4a_paths] po/documentation.pot $lang:po/documentation.$lang.po +[options] opt: " -k 80" + +[type: asciidoc] ./git-add.txt $lang:./po/$lang/man1/git-add.txt -- 2.12.0