[prev in list] [next in list] [prev in thread] [next in thread] 

List:       koffice-devel
Subject:    Re: i18n errors in koffice
From:       Burkhard =?utf-8?q?L=C3=BCck?= <lueck () hube-lueck ! de>
Date:       2007-10-31 20:58:24
Message-ID: 200710312158.24904.lueck () hube-lueck ! de
[Download RAW message or body]

On Wednesday 31 October 2007 18:35:52 Thomas Zander wrote:
> On Wednesday 31 October 2007 18:02:16 Burkhard Lück wrote:
> > plugins/dockers/Messages.sh:2:$XGETTEXT *.cpp shapeselector/*.cpp -o
> > $podir/koffice-dockers.pot
> > This is a message catalog with only one msgid, which is nonsense from a
> > translators point of view.
>
> Less work is bad?

Translations for an application spread over a lot of small catalogs means more 
work to keep the translations consistent and fix bugs.

Developers (translators) avoid having duplicate code (translations of the same 
string), they use libraries (kdelibs4, koffice, one catalog for one app).
 
> The plugin is pretty empty, we are focussing on other functionality first,
> but i'm pretty sure it will eventually have more messages.

With plugin you mean 
plugins/dockers/Plugin.cpp:26:K_EXPORT_COMPONENT_FACTORY(kofficedockers, 
KGenericFactory<Plugin>( "Plugin" ) )?
Then this is untranslatable because "Plugin" != "koffice-dockers"

> Also relevant is that the apps should decide what to do with their dockers
> that other apps can reuse.  Some of them should be moved to this subdir. 
> But none of the app devs has actually done this so far.
>
> > Worse that a message catalog with the
> > name "koffice-dockers" is not used by any koffice application, so the
> > string "Shapes" can be translated, but the translations are not shown eg
> > in kword or kspread.
>
> How do I specify which 'message catalog' to load?

http://techbase.kde.org/Development/Tutorials/Localization/i18n_Build_Systems
kdelibs/kdecore/util/kpluginfactory.h

An Example:
plugins/textediting/spellcheck/SpellCheckPlugin.cpp:29:K_EXPORT_PLUGIN( 
SpellCheckPluginFactory("SpellCheckPlugin") )
"SpellCheckPlugin" is the name of the message catalog, a Messages.sh with 
extraction to this catalog was missing, I added it today.

Another one:
kspread/plugins/insertcalendar/InsertCalendar.cpp:49:K_EXPORT_COMPONENT_FACTORY( 
libkspreadinsertcalendar,  InsertCalendarFactory("kspreadinsertcalendar"))
"kspreadinsertcalendar" is the name of the message catalog.
The corresponding catalog "kspreadinsertcalendar" is extracted in 
kspread/plugins/insertcalendar/Messages.sh:2:$XGETTEXT rc.cpp *.cpp -o 
$podir/kspreadinsertcalendar.pot

The name in the macros have to match the catalog names defined in the 
Messages.sh and all strings in the plugin/component have to be extracted into 
these catalogs.

Nonmatching catalog name or misssing extraction to catalog -> untranslatable 
messages.
 >
> Do note that we are also still hoping we can find a volunteer to make the
> plugin-selector dialog where that one string will actually be shown.  In
> other words, the string will not be visible in any GUI yet until that
> happens.

Burkhard Lück
_______________________________________________
koffice-devel mailing list
koffice-devel@kde.org
https://mail.kde.org/mailman/listinfo/koffice-devel

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic