Until now, updating the translation template file is disconnected from
the releasing process, which means that a dev or translator must
1- run 'po-replace',
2- embed lilypond.pot headers,
3- eliminate all po files that have been moved upwards from po/out to
po/
4- commit the new lilypond.pot
5- run 'make dist' to have a tarball,
6- notify the Free Translation Project where to pick up that tarbal.
The first three steps may already be reduced to one single step by
embedding lilypond.pot directly (with specific options and some 'sed'
when creating) and moving it only in po/, what does this patch.
A second step would be to have a call to po-replace when the Release
Meister enters the dance.
We then will have the same unique tarball to refer, directly from
linuxaudio.
robot; you can also see LilyPond page on FTP.
robot; you can also see LilyPond page on FTP.
-2) updating lilypond.pot: run 'make po-replace' at toplevel, clean up
-lilypond.pot header to make it look like its previous state, commit
-only lilypond.pot to Git and reset all .po files, roll a tarball with
-'make dist', upload it somewhere on the web (or wait for the release),
-and send a notification to FTP coordinator with a link to the tarball.
-
+2) updating lilypond.pot: run 'make po-replace' at toplevel, commit
+lilypond.pot to Git, roll a tarball with 'make dist', upload it
+somewhere on the web (or wait for the release), and send a notification
+to FTP coordinator with a link to the tarball.
+Running 'po-update' at top-level and opening either po/out/fr.po or
+po/out/es.po gives you an idea of the changes that have affected
+the sources (number of fuzzy and untranslated stings).
+XGETTEXT_OPTIONS = \
+ --default-domain=$(package) \
+ --from-code=UTF-8 \
+ --join \
+ --add-comments \
+ --msgid-bugs-address="http://post.gmane.org/post.php?group=gmane.comp.gnu.lilypond.bugs" \
+ --package-name=$(package) \
+ --package-version=$(VERSION)
+
+sed-header = \# Translation of LilyPond\n\# Copyright \(C\) 1998--2012 Han-Wen Nienhuys, Jan Nieuwenhuizen.\n\# This file is distributed under the same license as the LilyPond package.
+sed-content = "Content-Type: text\/plain; charset=UTF-8\\n"
local-po:
ifneq ($(strip $(ALL_PO_SOURCES)),)
@echo $(ALL_PO_SOURCES)
local-po:
ifneq ($(strip $(ALL_PO_SOURCES)),)
@echo $(ALL_PO_SOURCES)
- xgettext --default-domain=$(package) --join \
- --output-dir=$(po-dir)/$(outdir) --add-comments \
+ xgettext $(XGETTEXT_OPTIONS) --output-dir=$(po-dir)/$(outdir) \
--keyword=_ --keyword=_f --keyword=_i \
$(XGETTEXT_FLAGS) $(ALL_PO_SOURCES)
endif
endif
--keyword=_ --keyword=_f --keyword=_i \
$(XGETTEXT_FLAGS) $(ALL_PO_SOURCES)
endif
endif
+ sed -i '1,2d' $(po-dir)/$(outdir)/$(package).po
+ sed -i -e 's/^\# This file is distributed.*/$(sed-header)/' $(po-dir)/$(outdir)/$(package).po
+ sed -i -e 's/^\"Content-Type: text\/plain.*/$(sed-content)/' $(po-dir)/$(outdir)/$(package).po
po-replace: po-update
mv $(outdir)/$(package).po $(package).pot
po-replace: po-update
mv $(outdir)/$(package).po $(package).pot