From a010df396cac2c0e4251937d06b9ec24fbff2d37 Mon Sep 17 00:00:00 2001 From: Bernardo Gonzalez Kriegel Date: Mon, 28 Mar 2022 00:50:01 -0300 Subject: [PATCH 4/4] Bug 30373: Enable translation of UNIMARC frameworks This patch adds a new translation file, *-installer-UNIMARC.po To test: 1. On top of all previous patches 2. Apply this patch 3. Create (or update) some language Ej. misc/translation/translate create xx-YY verify new file misc/translation/po/xx-YY-installer-UNIMARC.po 4. Install new language misc/translation/translate install xx-YY verify new dirs: installer/data/mysql/xx-YY/marcflavour/unimarc/{mandatory,optional} 5. Repeat install procedure selecting xx-YY language and UNIMARC verify all frameworks are present --- gulpfile.js | 9 +++++++++ misc/translator/LangInstaller.pm | 3 ++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/gulpfile.js b/gulpfile.js index bf1f5150ef..50efc6a717 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -131,6 +131,11 @@ const poTasks = { create: po_create_installer_marc21, update: po_update_installer_marc21, }, + 'installer-UNIMARC': { + extract: po_extract_installer_unimarc, + create: po_create_installer_unimarc, + update: po_update_installer_unimarc, + }, }; const poTypes = Object.keys(poTasks); @@ -242,6 +247,8 @@ function po_extract_installer_marc (type) { function po_extract_installer_marc21 () { return po_extract_installer_marc('MARC21') } +function po_extract_installer_unimarc () { return po_extract_installer_marc('UNIMARC') } + function po_create_type (type) { const access = util.promisify(fs.access); const exec = util.promisify(child_process.exec); @@ -270,6 +277,7 @@ function po_create_messages () { return po_create_type('messages') } function po_create_messages_js () { return po_create_type('messages-js') } function po_create_installer () { return po_create_type('installer') } function po_create_installer_marc21 () { return po_create_type('installer-MARC21') } +function po_create_installer_unimarc () { return po_create_type('installer-UNIMARC') } function po_update_type (type) { const msgmerge_opts = '--backup=off --quiet --sort-output --update'; @@ -291,6 +299,7 @@ function po_update_messages () { return po_update_type('messages') } function po_update_messages_js () { return po_update_type('messages-js') } function po_update_installer () { return po_update_type('installer') } function po_update_installer_marc21 () { return po_update_type('installer-MARC21') } +function po_update_installer_unimarc () { return po_update_type('installer-UNIMARC') } /** * Gulp plugin that executes xgettext-like command `cmd` on all files given as diff --git a/misc/translator/LangInstaller.pm b/misc/translator/LangInstaller.pm index df0da27e27..8ab863f605 100644 --- a/misc/translator/LangInstaller.pm +++ b/misc/translator/LangInstaller.pm @@ -126,7 +126,8 @@ sub new { # EN UNIMARC YAML installer files push @{$self->{installer}}, { name => "UNIMARC YAML installer files", - dirs => [ 'installer/data/mysql/en/marcflavour/unimarc/mandatory', ], + dirs => [ 'installer/data/mysql/en/marcflavour/unimarc/mandatory', + 'installer/data/mysql/en/marcflavour/unimarc/optional'], suffix => "-installer-UNIMARC.po", }; -- 2.25.1