[meld/piotrdrag/meson-i18n] styles: Localize style files



commit c0dfd21e8b8ef0f87c6407e3428f04dcc1c63e76
Author: Piotr Drąg <piotrdrag gmail com>
Date:   Sat Sep 21 12:37:42 2019 +0200

    styles: Localize style files

 data/meson.build                                     | 20 ++++++++++++++------
 .../{meld-base.xml => meld-base.style-scheme.xml.in} |  0
 .../{meld-dark.xml => meld-dark.style-scheme.xml.in} |  0
 gettext/its/style-scheme.its                         |  6 ++++++
 gettext/its/style-scheme.loc                         |  6 ++++++
 po/POTFILES.in                                       |  4 ++--
 po/meson.build                                       |  2 +-
 7 files changed, 29 insertions(+), 9 deletions(-)
---
diff --git a/data/meson.build b/data/meson.build
index 249d23f0..e72b189c 100644
--- a/data/meson.build
+++ b/data/meson.build
@@ -82,13 +82,21 @@ if compile_schemas.found()
 endif
 
 # Install GtkSourceview style files
-install_data(
-    [
-        'styles/meld-base.xml',
-        'styles/meld-dark.xml'
-    ],
+styles = [
+          'meld-base.style-scheme.xml',
+          'meld-dark.style-scheme.xml'
+         ]
+
+foreach style : styles
+  i18n.merge_file(
+    input: join_paths('styles', style + '.in'),
+    output: style,
+    po_dir: podir,
+    data_dirs: itsdir,
+    install: true,
     install_dir: join_paths(pkgdatadir, 'styles')
-)
+  )
+endforeach
 
 # Install icons
 icon_sizes = ['scalable']
diff --git a/data/styles/meld-base.xml b/data/styles/meld-base.style-scheme.xml.in
similarity index 100%
rename from data/styles/meld-base.xml
rename to data/styles/meld-base.style-scheme.xml.in
diff --git a/data/styles/meld-dark.xml b/data/styles/meld-dark.style-scheme.xml.in
similarity index 100%
rename from data/styles/meld-dark.xml
rename to data/styles/meld-dark.style-scheme.xml.in
diff --git a/gettext/its/style-scheme.its b/gettext/its/style-scheme.its
new file mode 100644
index 00000000..bee6d157
--- /dev/null
+++ b/gettext/its/style-scheme.its
@@ -0,0 +1,6 @@
+<?xml version="1.0"?>
+<its:rules xmlns:its="http://www.w3.org/2005/11/its"; version="1.0">
+  <its:translateRule selector="/style-scheme" translate="no"/>
+  <its:translateRule selector="//style-scheme/@name" translate="yes"/>
+  <its:translateRule selector="//style-scheme/description" translate="yes"/>
+</its:rules>
diff --git a/gettext/its/style-scheme.loc b/gettext/its/style-scheme.loc
new file mode 100644
index 00000000..fa9170b1
--- /dev/null
+++ b/gettext/its/style-scheme.loc
@@ -0,0 +1,6 @@
+<?xml version="1.0"?>
+<locatingRules>
+  <locatingRule name="style-scheme" pattern="*.style-scheme.xml">
+    <documentRule localName="style-scheme" target="style-scheme.its"/>
+  </locatingRule>
+</locatingRules>
diff --git a/po/POTFILES.in b/po/POTFILES.in
index 2353fc50..fb03d7f2 100644
--- a/po/POTFILES.in
+++ b/po/POTFILES.in
@@ -3,8 +3,8 @@ data/org.gnome.meld.desktop.in
 data/org.gnome.meld.appdata.xml.in
 data/mime/org.gnome.meld.xml.in
 data/org.gnome.meld.gschema.xml
-data/styles/meld-base.xml
-data/styles/meld-dark.xml
+data/styles/meld-base.style-scheme.xml.in
+data/styles/meld-dark.style-scheme.xml.in
 meld/resources/gtk/help-overlay.ui
 meld/resources/gtk/menus.ui
 meld/resources/ui/about-dialog.ui
diff --git a/po/meson.build b/po/meson.build
index 5eab52ee..daed9fd5 100644
--- a/po/meson.build
+++ b/po/meson.build
@@ -1 +1 @@
-i18n.gettext(meson.project_name(), preset: 'glib')
\ No newline at end of file
+i18n.gettext(meson.project_name(), preset: 'glib', data_dirs: itsdir)


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