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 \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 @@ + + + @ARDOUR_EXEC@.desktop + CC0-1.0 + GPL-2.0+ + Ardour + + + + Digital Audio Workstation + +

+ Ardour is a multi-channel digital audio workstation, allowing you to + record, edit, mix and master audio and MIDI projects. +

+

+ It is targeted at audio engineers, musicians, soundtrack editors and + composers. +

+
+ http://ardour.org + + + http://community.ardour.org/files/images/ardour-editor-window-1600x900.png + The Editor window where you can arrange audio and MIDI data along a timeline + + + http://community.ardour.org/files/images/ardour-mixer-window-1600x900.png + The Mixer window which includes channel strips for each track and bus + + +
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) diff --git a/tools/as-metainfo.its b/tools/as-metainfo.its new file mode 100644 index 0000000000..d2530d40c9 --- /dev/null +++ b/tools/as-metainfo.its @@ -0,0 +1,8 @@ + + + +