[Koha-devel] Template::Toolkit and Translations
dcook at prosentient.com.au
dcook at prosentient.com.au
Tue Apr 27 01:44:47 CEST 2021
Hi Julian,
I like part of what you've suggested here. I still think that putting languages (with codes and name in native text) in the database is a good idea, as it allows the ability to add languages to Koha without a code change. Unless Koha is going to be perfectly comprehensive with languages, I think that libraries need to be able to add their own languages to the database.
But I'd be fine with putting the translations of languages into Perl rather than Template::Toolkit.
I've found the barrier to entry for Koha translations to be too high, so I can't keep track of all the different _(), __(), _t(), etc functions across the different file types, but if your suggestion for Koha::Languages works using that __() syntax, then I'm fine with it.
David Cook
Software Engineer
Prosentient Systems
Suite 7.03
6a Glen St
Milsons Point NSW 2061
Australia
Office: 02 9212 0899
Online: 02 8005 0595
-----Original Message-----
From: Koha-devel <koha-devel-bounces at lists.koha-community.org> On Behalf Of Julian Maurice
Sent: Monday, 26 April 2021 8:17 PM
To: koha-devel at lists.koha-community.org
Subject: Re: [Koha-devel] Template::Toolkit and Translations
Hi David,
I think that language descriptions would be best in a Perl module, so that they can be used everywhere (perl and templates).
For instance:
package Koha::Languages;
use Koha::I18N;
sub getLanguages {
return {
en => __('English'),
fr => __('French'),
}
}
And if the original description is needed, we can do the same but without the __() translation.
sub getLanguagesDescriptionsInTheirOwnLanguage {
return {
en => 'English',
fr => 'Français',
}
}
Le 26/04/2021 à 02:44, dcook at prosentient.com.au a écrit :
> Hi all,
>
> While I mostly work in English, I occasionally do support libraries in
> other languages like French, Arabic, and Chinese. And more recently
> I’ve been looking at the Languages dropdown in the OPAC advanced search.
>
> In the templates, I notice that we often translate HTML, but what if
> we translated strings for a Template::Toolkit data structure instead?
>
> Consider the following:
>
> [% BLOCK en %]Anglais[% END %]
>
> [% BLOCK fr %]Français[% END %]
>
> [% langs.en = INCLUDE en %]
>
> [% langs.fr = INCLUDE fr %]
>
> I suppose it’s not very beautiful, but the translation process should
> be simple and in the end we have a re-usable hash map rather than static HTML.
>
> As I commented on Bug 12017
> (https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=12017
> <https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=12017>), we
> could have a database table of language codes with native language
> names, and then iterate through that and use the hash map of
> translations to provide the translations. Since we’re not producing
> HTML, we could flexibly reuse this language data in various different
> contexts. Whether it’s the Languages dropdown in the OPAC advanced
> search, the language selector, or whatever.
>
> We could probably use this concept in other places as well where we
> need translations but we don’t want to be bound to HTML.
>
> What do people think? I’m not wedded to the idea, but it’s something
> that crossed my mind this morning, when I looked at the large switch
> statements at
> https://bugs.koha-community.org/bugzilla3/page.cgi?id=splinter.html&bu
> g=12017&attachment=40285
> <https://bugs.koha-community.org/bugzilla3/page.cgi?id=splinter.html&bug=12017&attachment=40285>.
>
>
> (To that end, I would also suggest a theme-independent
> Template::Toolkit include directory, but that’s another story…)
>
> David Cook
>
> Software Engineer
>
> Prosentient Systems
>
> Suite 7.03
>
> 6a Glen St
>
> Milsons Point NSW 2061
>
> Australia
>
> Office: 02 9212 0899
>
> Online: 02 8005 0595
>
>
> _______________________________________________
> Koha-devel mailing list
> Koha-devel at lists.koha-community.org
> https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel
> website : https://www.koha-community.org/ git :
> https://git.koha-community.org/ bugs :
> https://bugs.koha-community.org/
>
--
Julian Maurice
BibLibre
_______________________________________________
Koha-devel mailing list
Koha-devel at lists.koha-community.org
https://lists.koha-community.org/cgi-bin/mailman/listinfo/koha-devel
website : https://www.koha-community.org/ git : https://git.koha-community.org/ bugs : https://bugs.koha-community.org/
More information about the Koha-devel
mailing list