summaryrefslogtreecommitdiff
path: root/gtk2_ardour
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2015-11-23 08:42:23 -0500
committerPaul Davis <paul@linuxaudiosystems.com>2015-11-23 08:42:23 -0500
commit4d599b3da1ff8fa5fa172be32fbd14d0ba25b915 (patch)
tree661fe82e1b44120534d758aab5bea675031dd0d6 /gtk2_ardour
parent0e3c2af69aba177725870532e9a79e176c4b5dc4 (diff)
parent85fe8e9feeccfde9444ff3256a71069a45c87ed1 (diff)
Merge branch 'nphilipp-master--nphilipp'
Diffstat (limited to 'gtk2_ardour')
-rw-r--r--gtk2_ardour/appdata/po/de.po58
-rw-r--r--gtk2_ardour/ardour.appdata.xml.in.in32
-rw-r--r--gtk2_ardour/wscript57
3 files changed, 146 insertions, 1 deletions
diff --git a/gtk2_ardour/appdata/po/de.po b/gtk2_ardour/appdata/po/de.po
new file mode 100644
index 0000000000..bb8029e8c0
--- /dev/null
+++ b/gtk2_ardour/appdata/po/de.po
@@ -0,0 +1,58 @@
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"POT-Creation-Date: 2015-11-06 11:59+0100\n"
+"PO-Revision-Date: 2015-11-06 16:00+0100\n"
+"Last-Translator: Nils Philippsen <nils@tiptoe.de>\n"
+"Language-Team: \n"
+"Language: de\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Poedit 1.8.5\n"
+"X-Poedit-SourceCharset: UTF-8\n"
+
+# Intentionally left untranslated.
+#. (itstool) path: component/name
+#: /home/nils/src/ardour/gtk2_ardour/ardour.appdata.xml.in.in:6
+msgid "Ardour"
+msgstr ""
+
+# Intentionally left untranslated.
+#. (itstool) path: component/summary
+#: /home/nils/src/ardour/gtk2_ardour/ardour.appdata.xml.in.in:8
+msgid "Digital Audio Workstation"
+msgstr ""
+
+#. (itstool) path: description/p
+#: /home/nils/src/ardour/gtk2_ardour/ardour.appdata.xml.in.in:10
+msgid ""
+"Ardour is a multi-channel digital audio workstation, allowing you to record, "
+"edit, mix and master audio and MIDI projects."
+msgstr ""
+"Ardour ist eine mehrkanalige Digital Audio Workstation (DAW), die es Ihnen "
+"erlaubt, Audio- und MIDI-Projekte aufzunehmen, zu bearbeiten, zu mischen und "
+"zu mastern."
+
+#. (itstool) path: description/p
+#: /home/nils/src/ardour/gtk2_ardour/ardour.appdata.xml.in.in:14
+msgid ""
+"It is targeted at audio engineers, musicians, soundtrack editors and "
+"composers."
+msgstr ""
+"Es ist für Toningenieure, Musiker, Bearbeiter von Soundtracks und "
+"Komponisten gedacht."
+
+#. (itstool) path: screenshot/caption
+#: /home/nils/src/ardour/gtk2_ardour/ardour.appdata.xml.in.in:23
+msgid ""
+"The Editor window where you can arrange audio and MIDI data along a timeline"
+msgstr ""
+"Das Editorfenster, in dem Sie Audio- und Midi-Daten entlang einer Zeitachse "
+"anordnen können"
+
+#. (itstool) path: screenshot/caption
+#: /home/nils/src/ardour/gtk2_ardour/ardour.appdata.xml.in.in:27
+msgid "The Mixer window which includes channel strips for each track and bus"
+msgstr "Das Mixerfenster, das die Kanalzüge für alle Spuren und Busse enthält"
diff --git a/gtk2_ardour/ardour.appdata.xml.in.in b/gtk2_ardour/ardour.appdata.xml.in.in
new file mode 100644
index 0000000000..1b2b940fb7
--- /dev/null
+++ b/gtk2_ardour/ardour.appdata.xml.in.in
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<component type="desktop">
+ <id>@ARDOUR_EXEC@.desktop</id>
+ <metadata_license>CC0-1.0</metadata_license>
+ <project_license>GPL-2.0+</project_license>
+ <name>Ardour</name>
+ <releases>
+ <release version="@VERSION@" />
+ </releases>
+ <summary>Digital Audio Workstation</summary>
+ <description>
+ <p>
+ Ardour is a multi-channel digital audio workstation, allowing you to
+ record, edit, mix and master audio and MIDI projects.
+ </p>
+ <p>
+ It is targeted at audio engineers, musicians, soundtrack editors and
+ composers.
+ </p>
+ </description>
+ <url type="homepage">http://ardour.org</url>
+ <screenshots>
+ <screenshot type="default">
+ <image>http://community.ardour.org/files/images/ardour-editor-window-1600x900.png</image>
+ <caption>The Editor window where you can arrange audio and MIDI data along a timeline</caption>
+ </screenshot>
+ <screenshot>
+ <image>http://community.ardour.org/files/images/ardour-mixer-window-1600x900.png</image>
+ <caption>The Mixer window which includes channel strips for each track and bus</caption>
+ </screenshot>
+ </screenshots>
+</component>
diff --git a/gtk2_ardour/wscript b/gtk2_ardour/wscript
index 19c092fa3d..34bf3f04eb 100644
--- a/gtk2_ardour/wscript
+++ b/gtk2_ardour/wscript
@@ -9,6 +9,8 @@ import re
import time
from waflib.Task import Task
from waflib.Tools import winres
+import subprocess
+import glob
# Mandatory variables
top = '.'
@@ -672,7 +674,8 @@ def build(bld):
# Freedesktop
freedesktop_subst_dict = {
'ARDOUR_EXEC' : str (bld.env['lwrcase_dirname']),
- 'ARDOUR_ICON' : str (bld.env['lwrcase_dirname'])
+ 'ARDOUR_ICON' : str (bld.env['lwrcase_dirname']),
+ 'VERSION': str (bld.env['VERSION']),
}
if bld.env['FREEDESKTOP']:
@@ -688,6 +691,16 @@ def build(bld):
obj.target = 'ardour.xml'
obj.chmod = Utils.O644
+ # build appdata with translations
+ appdata_i18n_mo(bld)
+ appdata_i18n_xmlin(bld)
+ obj = bld(features = 'subst')
+ obj.source = 'ardour.appdata.xml.in'
+ obj.target = str (bld.env['lwrcase_dirname']) + '.appdata.xml'
+ obj.chmod = Utils.O644
+ obj.dict = freedesktop_subst_dict
+ set_subst_dict(obj, freedesktop_subst_dict)
+
# Keybindings
# 'SAE-de-keypad', 'SAE-de-nokeypad', 'SAE-us-keypad',
@@ -743,18 +756,60 @@ def i18n(bld):
I18N_PACKAGE = 'gtk2_ardour' + bld.env['MAJOR']
autowaf.build_i18n(bld, top, 'gtk2_ardour', I18N_PACKAGE, gtk2_ardour_sources,
'Paul Davis')
+ appdata_i18n_pot(bld)
+ appdata_i18n_po(bld)
def i18n_pot(bld):
I18N_PACKAGE = 'gtk2_ardour' + bld.env['MAJOR']
autowaf.build_i18n_pot(bld, top, 'gtk2_ardour', I18N_PACKAGE, gtk2_ardour_sources,
'Paul Davis')
+ appdata_i18n_pot(bld)
def i18n_po(bld):
I18N_PACKAGE = 'gtk2_ardour' + bld.env['MAJOR']
autowaf.build_i18n_po(bld, top, 'gtk2_ardour', I18N_PACKAGE, gtk2_ardour_sources,
'Paul Davis')
+ appdata_i18n_po(bld)
def i18n_mo(bld):
I18N_PACKAGE = 'gtk2_ardour' + bld.env['MAJOR']
autowaf.build_i18n_mo(bld, top, 'gtk2_ardour', I18N_PACKAGE, gtk2_ardour_sources,
'Paul Davis')
+
+def appdata_i18n_pot(bld):
+ potfile = os.path.join(bld.top_dir, 'gtk2_ardour', 'appdata',
+ 'ardour.appdata.pot')
+ if bld.cmd == 'build':
+ Logs.info('Generating pot file from Ardour appdata')
+ itsfile = os.path.join(bld.top_dir, 'tools', 'as-metainfo.its')
+ adsource = os.path.join(bld.top_dir, 'gtk2_ardour',
+ 'ardour.appdata.xml.in.in')
+ Logs.info('Updating ' + potfile)
+ subprocess.call(('itstool', '-i', itsfile, '-o', potfile, adsource))
+ elif bld.cmd == 'clean' and os.path.exists(potfile):
+ Logs.info('Removing Ardour appdata pot file')
+ os.remove(potfile)
+
+def appdata_i18n_po(bld):
+ autowaf.build_i18n_po(bld, bld.top_dir, os.path.join(
+ 'gtk2_ardour', 'appdata'), 'ardour.appdata', 'dummy', 'dummy')
+
+def appdata_i18n_mo(bld):
+ autowaf.build_i18n_mo(bld, bld.top_dir, os.path.join(
+ 'gtk2_ardour', 'appdata'), 'ardour.appdata', 'dummy', 'dummy')
+
+def appdata_i18n_xmlin(bld):
+ adxmlinfile = os.path.join(bld.top_dir, 'gtk2_ardour',
+ 'ardour.appdata.xml.in')
+ if bld.cmd == 'build':
+ itsfile = os.path.join(bld.top_dir, 'tools', 'as-metainfo.its')
+ adxmlininfile = os.path.join(bld.top_dir, 'gtk2_ardour',
+ 'ardour.appdata.xml.in.in')
+ mo_glob = os.path.join(bld.top_dir, 'gtk2_ardour', 'appdata', 'po', '*.mo')
+ mo_files = glob.glob(mo_glob)
+ Logs.info('Generating ' + adxmlinfile)
+ subprocess.call(['itstool', '-i', itsfile, '-o', adxmlinfile,
+ '-j', adxmlininfile] + mo_files)
+ elif bld.cmd == 'clean' and os.path.exists(adxmlinfile):
+ Logs.info('Removing ' + adxmlinfile)
+ os.remove(adxmlinfile)