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

List:       kde-i18n-doc
Subject:    Helper scripts/GUIs [Was: Rosetta for Edgy and KDE]
From:       Kevin Donnelly <kevin () dotmon ! com>
Date:       2006-07-13 10:16:06
Message-ID: 200607131116.06724.kevin () dotmon ! com
[Download RAW message or body]

On Wednesday 12 July 2006 10:59, Donatas G. wrote:
> Instead of the single program file you can also use a compendium of all
> rosetta translations that are extra to what is in the upstream, though
> first rosetta has to provide a convenient interface to get those updated
> strings. Instead of a single file you can apply this command then to the
> whole of the translation tree....
>
> I guess a Kommander script could be easily built to do that. Anyone
> interested in having it? I could make a script like that.

I'm not going to comment on Rosetta, because I already did so a couple of 
months ago - basically, I think it's a great idea, but the implementation (eg 
upstream integration, control, file segmentation etc) leaves a lot to be 
desired.  The Pootle/Debian collaboration seems a better bet.

But I was very interested in your idea of a script or scripts to apply changes 
to the whole translation tree.  For instance, if I have decided that a word 
is incorrect in a specific context, and needs to be replaced by another, what 
do I do?  At present, I just update it when I see it, which is not very 
efficient.  What do other teams do?

Far better would be some sort of interface (ideally GUI) which searches all 
files in the tree for this target word, and lists the msgids/msgstrs where it 
occurs.  You could then scan these, tick the msgstrs to replace, and have the 
word replaced globally, and the po files saved.  I can do File/Replace on a 
single file easily enough, but doing this over the whole tree is not worth 
it.  KFileReplace will do a global Find/Replace, but it is a blunt tool for 
this job, in that it only lists the words that were searched for, and not the 
context of the words.  A replace in these circumstances would be risky.  To 
look at the context, you have to open each file individually.  

Thierry Vignaud on the Breton team has done some amazing  scripts in Perl 
which basically look at any new commits, search for the exact same msgid in 
the whole tree, and write the exact same msgstr there if the msgstr is empty.  
The first time he ran this on the Welsh tree, nearly 10,000 translations were 
added just like that, a big boost for a minority language team (especially 
since the size of the KDE tree has grown 100% since we started in 2003). 
Unfortunately I don't know enough Perl to be able to develop the scripts 
further to allow the type of focussed search above, and some others.  

A couple of years ago, Pedro Morais on the Portuguese team did some useful 
scripts in Python which did basic checking (for example, that the msgstr of a 
msgid ending in a full stop also had a full stop).  Some of these duplicated 
some of the functionality in KBabel, but were still useful as standalones.

I wonder is there no way we as a project can leverage these little bits of 
brilliance that occasionally bubble up, so that the average plonker like me 
can take advantage of them?  A sort of Lionforge, where these things could be 
deposited, looked at/used, suggestions for improvements made, etc.  I would 
actually be willing to sponsor somebody to do 10 hours work on a tool if that 
means I can save 20 or 30, and it may be that others would too.  

If anyone else is vaguely interested in this idea, can we get a discussion 
going, so that at least one positive thing will have come out of Rosetta?

-- 
Pob hwyl / Best wishes

Kevin Donnelly

www.kyfieithu.co.uk - KDE yn Gymraeg
www.eurfa.org.uk - Geiriadur rhydd i'r Gymraeg
www.rhedadur.org.uk - Rhedeg berfau Cymraeg
www.cymrux.org.uk - Linux Cymraeg ar un CD
[prev in list] [next in list] [prev in thread] [next in thread] 

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