[gtk+] gtkbuilder: Install gettext ITS files
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+] gtkbuilder: Install gettext ITS files
- Date: Thu, 7 Jan 2016 23:08:45 +0000 (UTC)
commit f9e6ccd59256ef86bdfa3bfe9810df35f7ee00fe
Author: Daiki Ueno <dueno src gnome org>
Date: Wed Jan 6 18:09:04 2016 +0900
gtkbuilder: Install gettext ITS files
Recent gettext has a feature to allow consumer projects to supply their
own string extraction rules for XML files, in ITS format.
Gettext still ships the rule for *.ui, but it would be better
maintained in the upstream project.
https://bugzilla.gnome.org/show_bug.cgi?id=760202
gtk/Makefile.am | 5 +++++
gtk/gtkbuilder.its | 23 +++++++++++++++++++++++
gtk/gtkbuilder.loc | 6 ++++++
3 files changed, 34 insertions(+), 0 deletions(-)
---
diff --git a/gtk/Makefile.am b/gtk/Makefile.am
index c851656..48815fe 100644
--- a/gtk/Makefile.am
+++ b/gtk/Makefile.am
@@ -1114,6 +1114,11 @@ pkgdata_DATA = gtkbuilder.rng
EXTRA_DIST += gtkbuilder.rnc gtkbuilder.rng
+itsdir = $(datadir)/gettext/its
+its_DATA = gtkbuilder.loc gtkbuilder.its
+
+EXTRA_DIST += $(its_DATA)
+
templates = \
$(inspector_templates) \
ui/gtkapplication-quartz.ui \
diff --git a/gtk/gtkbuilder.its b/gtk/gtkbuilder.its
new file mode 100644
index 0000000..689ef0d
--- /dev/null
+++ b/gtk/gtkbuilder.its
@@ -0,0 +1,23 @@
+<?xml version="1.0"?>
+<its:rules xmlns:its="http://www.w3.org/2005/11/its"
+ xmlns:gt="https://www.gnu.org/s/gettext/ns/its/extensions/1.0"
+ version="2.0">
+ <its:translateRule selector="/interface" translate="no"/>
+ <its:translateRule selector="/interface//*[ translatable = 'yes']"
+ translate="yes"/>
+
+ <!-- The 'comment' attribute should be extracted as a translator comment. -->
+ <its:locNoteRule selector="/interface//*[ comments]"
+ locNotePointer="@comments"
+ locNoteType="alert"/>
+ <gt:escapeRule selector="/interface//@comments" escape="no"/>
+
+ <!-- The 'context' attribute should be extracted as msgctxt. -->
+ <gt:contextRule selector="/interface//*[ context]" contextPointer="@context"/>
+
+ <its:preserveSpaceRule selector="/interface" space="preserve"/>
+
+ <!-- Extracted strings are consumed by the library and are never
+ merged back; we don't want to escape special characters. -->
+ <gt:escapeRule selector="/interface" escape="no"/>
+</its:rules>
diff --git a/gtk/gtkbuilder.loc b/gtk/gtkbuilder.loc
new file mode 100644
index 0000000..5d77e48
--- /dev/null
+++ b/gtk/gtkbuilder.loc
@@ -0,0 +1,6 @@
+<?xml version="1.0"?>
+<locatingRules>
+ <locatingRule name="GtkBuilder" pattern="*.ui">
+ <documentRule localName="interface" target="gtkbuilder.its"/>
+ </locatingRule>
+</locatingRules>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]