diff options
Diffstat (limited to 'install/po')
-rw-r--r-- | install/po/Makefile.in | 22 | ||||
-rw-r--r-- | install/po/README | 16 |
2 files changed, 34 insertions, 4 deletions
diff --git a/install/po/Makefile.in b/install/po/Makefile.in index 9a3dde78a..bc91a933b 100644 --- a/install/po/Makefile.in +++ b/install/po/Makefile.in @@ -14,6 +14,7 @@ MSGFMT = @MSGFMT@ MSGINIT = @MSGINIT@ MSGMERGE = @MSGMERGE@ MSGCMP = @MSGCMP@ +MSGATTRIB = @MSGATTRIB@ TX = @TX@ IPA_TEST_I18N = ../../tests/i18n.py @@ -67,7 +68,7 @@ C_POTFILES = $(C_FILES) $(H_FILES) .SUFFIXES: .SUFFIXES: .po .mo -.PHONY: all create-po update-po update-pot install mostlyclean clean distclean test mo-files debug +.PHONY: all create-po update-po update-pot install mostlyclean clean distclean test mo-files debug strip-po merge-po $(po_files) all: @@ -86,6 +87,19 @@ $(po_files): $(DOMAIN).pot echo Merging $(DOMAIN).pot into $@; \ $(MSGMERGE) --no-fuzzy-matching -o $@ $@ $(DOMAIN).pot +strip-po: + @for po_file in $(po_files); do \ + echo Stripping $$po_file; \ + $(MSGATTRIB) --translated --no-fuzzy --no-location $$po_file > $$po_file.tmp; \ + mv $$po_file.tmp $$po_file; \ + done + @export FILES_TO_REMOVE=`find . -name '*.po' -empty`; \ + if [ "$$FILES_TO_REMOVE" != "" ]; then \ + echo Removing empty translation files; \ + rm -v $$FILES_TO_REMOVE; \ + echo; echo Please remove the deleted files from LINGUAS!; echo; \ + fi + create-po: $(DOMAIN).pot @for po_file in $(po_files); do \ if [ ! -e $$po_file ]; then \ @@ -98,10 +112,14 @@ create-po: $(DOMAIN).pot pull-po: cd ../..; $(TX) pull -f + $(MAKE) strip-po -update-po: update-pot +merge-po: update-pot $(MAKE) $(po_files) +update-po: merge-po + $(MAKE) strip-po + update-pot: @rm -f $(DOMAIN).pot.update @pushd ../.. ; \ diff --git a/install/po/README b/install/po/README index ada7df40e..6894a0633 100644 --- a/install/po/README +++ b/install/po/README @@ -6,10 +6,17 @@ A: Edit Makefile.in and add the source file to the appropriate *_POTFILES list. NOTE: Now this i only necessary for python files that lack the .py extension. All .py, .c and .h files are automatically sourced. +Q: Untranslated strings and file locations are missing from my .po file. + How do I add them? + +A: make merge-po + Untranslated strings are left out of the files in SCM. The merge-po command + runs msgmerge to add them again. + Q: How do I pick up new strings to translate from the source files after the source have been modified? -A: make update-po +A: make merge-po This regenerates the pot template file by scanning all the source files. Then the new strings are merged into each .po file from the new pot file. @@ -18,6 +25,11 @@ Q: How do I just regenerate the pot template file without regenerating all the A: make update-pot +Q: I am done translating. How do I commit my changes? + +A: Run `make strip-po` to remove unneeded information from the po files, then + add your changes to SCM. + Q: How do I add a new language for translation? A: Edit the LINGUAS file and add the new language. Then run "make create-po". @@ -27,7 +39,7 @@ A: Edit the LINGUAS file and add the new language. Then run "make create-po". http://www.gnu.org/software/hello/manual/gettext/Plural-forms.html However, if this line is wrong, it is often an indicator that the locale value is incorrect. For example, using 'jp' for Japanese in stead of 'ja' - will result in an invailid Plural's line. + will result in an invalid Plurals line. Q: What files must be under source code control? |