[recipes] Add a script to generate the .pot file



commit 7d7a52090f4a8f2be3c3c183f10953a6bd6c3922
Author: Matthias Clasen <mclasen redhat com>
Date:   Tue Jan 3 14:48:32 2017 -0500

    Add a script to generate the .pot file
    
    This is heavily inspired by a similar script in GTK+.

 make-pot |   68 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 68 insertions(+), 0 deletions(-)
---
diff --git a/make-pot b/make-pot
new file mode 100755
index 0000000..ed776c6
--- /dev/null
+++ b/make-pot
@@ -0,0 +1,68 @@
+#! /bin/bash
+
+# This script extracts the typical xgettext invokation out of
+# po/Makefile.in.in, in order for it to be available as a shell
+# command without the need to autogen first. This is needed for
+# translation tools such as the damn lies website.
+#
+# Call this from your checkout directory, like this:
+#
+#   ./make-pot
+#
+# to generate po/recipes.pot
+#
+# Various things can be passed in by environment variables, which
+# are heavily inspired by the variables used in po/Makefile.in.in:
+#
+# SED - path to the sed binary
+# XGETTEXT - path of the xgettext binary
+# top_srcdir - the location of the GTK+ checkout
+# srcdir - the directory where POTFILES.in is located (defaults to
+#          $top_srcdir/po or $top_srcdir/po-properties)
+# GETTEXT_PACKAGE - the gettext domain, used for naming the resulting
+#          .pot file (defaults to gtk40 or gtk40-properties)
+# XGETTEXT_KEYWORDS - --keyword arguments to pass to xgettext
+
+
+SED="${SED:-sed}"
+XGETTEXT="${XGETTEXT:-xgettext}"
+top_srcdir="${top_srcdir:-.}"
+
+srcdir="${srcdir:-$top_srcdir/po}"
+GETTEXT_PACKAGE="${GETTEXT_PACKAGE:-recipes}"
+XGETTEXT_KEYWORDS="${XGETTEXT_KEYWORDS:- --keyword=_ --keyword=N_ --keyword=C_:1c,2 --keyword=NC_:1c,2 
--keyword=g_dngettext:2,3 }"
+
+$SED -e 's/^\(.*\)$$/     N_("\1"),/' $top_srcdir/data/ingredients.list > $top_srcdir/src/ingredients.c
+$SED -e 's/^\(.*\)$$/     N_("no \1"),/' $top_srcdir/data/ingredients.list > $top_srcdir/src/no-ingredients.c
+$SED -e 's/^\(.*\)$$/     N_("\1"),/' $top_srcdir/data/segments.list > $top_srcdir/src/segments.c
+
+$XGETTEXT --default-domain="$GETTEXT_PACKAGE" \
+          --directory="$top_srcdir" \
+          --add-comments \
+          $XGETTEXT_KEYWORDS \
+          --from-code=utf-8 \
+          --flag=g_dngettext:2:pass-c-format \
+          --flag=g_strdup_printf:1:c-format \
+          --flag=g_string_printf:2:c-format \
+          --flag=g_string_append_printf:2:c-format \
+          --flag=g_error_new:3:c-format \
+          --flag=g_set_error:4:c-format \
+          --flag=g_markup_printf_escaped:1:c-format \
+          --flag=g_log:3:c-format \
+          --flag=g_print:1:c-format \
+          --flag=g_printerr:1:c-format \
+          --flag=g_printf:1:c-format \
+          --flag=g_fprintf:2:c-format \
+          --flag=g_sprintf:2:c-format \
+          --flag=g_snprintf:3:c-format \
+          --flag=g_scanner_error:2:c-format \
+          --flag=g_scanner_warn:2:c-format \
+          --flag=gtk_message_dialog_format_secondary_markup:2:c-format \
+          --flag=gtk_message_dialog_format_secondary_text:2:c-format \
+          --flag=gtk_message_dialog_new:5:c-format \
+          --flag=gtk_message_dialog_new_with_markup:5:c-format \
+          --files-from="$srcdir/POTFILES.in" \
+        && test ! -f "$GETTEXT_PACKAGE.po" \
+           || ( rm -f "$srcdir/$GETTEXT_PACKAGE.pot" \
+                && mv "$GETTEXT_PACKAGE.po" "$srcdir/$GETTEXT_PACKAGE.pot" )
+


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]