From b2551f6a2209b8a11b42834cb0d63f5c03a2b95f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Diego=20Mart=C3=ADnez?= Date: Sat, 21 Jan 2017 01:04:03 -0300 Subject: Add support for gettext message catalogs. --- tools/xgettext.bat | 33 +++++++++++++++++++++++++++++++++ tools/xgettext.sh | 23 +++++++++++++++++++++++ 2 files changed, 56 insertions(+) create mode 100644 tools/xgettext.bat create mode 100755 tools/xgettext.sh (limited to 'tools') diff --git a/tools/xgettext.bat b/tools/xgettext.bat new file mode 100644 index 0000000..18403db --- /dev/null +++ b/tools/xgettext.bat @@ -0,0 +1,33 @@ +@echo off +setlocal + +set me=%~n0 + +rem # Uncomment the following line if gettext is not in your PATH. +rem # Value must be absolute and end in a backslash. +rem set gtprefix=C:\path\to\gettext\bin\ + +if "%1" == "" ( + echo Usage: %me% FILE... 1>&2 + exit 1 +) + +set xgettext=%gtprefix%xgettext.exe +set msgmerge=%gtprefix%msgmerge.exe + +md locale > nul 2>&1 +echo Generating template... 1>&2 +echo %xgettext% --from-code=UTF-8 -kS -kNS:1,2 -k_ -o locale/template.pot %* +%xgettext% --from-code=UTF-8 -kS -kNS:1,2 -k_ -o locale/template.pot %* +if %ERRORLEVEL% neq 0 goto done + +cd locale + +for %%f in (*.po) do ( + echo Updating %%f... 1>&2 + %msgmerge% --update %%f template.pot +) + +echo DONE! 1>&2 + +:done diff --git a/tools/xgettext.sh b/tools/xgettext.sh new file mode 100755 index 0000000..6de353c --- /dev/null +++ b/tools/xgettext.sh @@ -0,0 +1,23 @@ +#! /bin/bash + +me=$(basename "${BASH_SOURCE[0]}"); + +if [[ $# -lt 1 ]]; then + echo "Usage: $me FILE..." >&2; + exit 1; +fi + +mkdir -p locale; +echo "Generating template..." >&2; +xgettext --from-code=UTF-8 -kS -kNS:1,2 -k_ \ + -o locale/template.pot "$@" \ + || exit; + +cd locale; + +for file in *.po; do + echo "Updating $file..." >&2; + msgmerge --update "$file" template.pot; +done + +echo "DONE!" >&2; -- cgit v1.2.3