On Sunday 28 August 2005 18:32, Rowan Collins wrote:
On 28/08/05, Nikola Smolenski smolensk@eunet.yu wrote:
Maybe it would be possible to make a list of strings which are expected to be customised, and which are not. For example, "From Wikipedia, the free encyclopedia" will always be customised while "Article", "Discussion", "Edit", "Recent Changes"... will never be. Then, LanguageXx.php could periodically be refreshed with only "safe" strings filled in. Language files for Navajo and other languages which only have translations in MediaWiki namespace could be created from scratch in this way.
Nice idea, but I'm not sure such a distinction can really be made - projects may have all sorts of reason for inserting particular jargon, links, or just plain style in various parts of the interface, and it seems a shame to deny them the right to do this. In fact, MediaWiki:edit is a case in point - the English default is "edit", but the English Wikipedia uses "edit this page", because lots of descriptions elsewhere refer to "clicking the edit this page link".
Well, that's not really custom - other wikis might well use it and it will still be understandable. Either way, it could only be used for initial building of language files, and then for suggesting changes, nothing needs to be done automatically.
I think a better idea would be to have a collaborative tool for translations (be it wiki-style or anything else) which was able to compare current default messages with custom messages from a particular wiki, and allow users (who can understand the language in question) to manually "merge" the changes which are appropriate for the distributed default. Ideally, there should also be a way of flagging which messages have been changed in the English "master" version and/or a way of comparing with a "parent" language (so, for instance, Catalan might be worth comparing against both Castillian Spanish and English).
I haven't time right now to see if any existing tools could be adapted for this purpose - tempting though a wiki-based system seems, a permissive setup of an existing l10n tool might be more suitable.
I see two ways of doing this: either converting language files to something (be it TMX, .po or something else), editing them, and converting them back to .php, or converting MediaWiki to use gettext and .po files directly. The latter might even be faster for smaller installations (and availability of gettext is not a problem now that php-gettext exists) - should it be done?