Support forum of the software localization tool Sisulizer


.NET, Delphi, ... - Sisulizer Localization Tool Support Home

Get in contact with the makers of Sisulizer.
Our forum is open for all questions around Sisulizer from customers and prospects.
Don't hesitate to register and ask. The Sisulizer team will answer ASAP.

Search     Help Home Sisulizer Website Download
Search by username
Not logged in - Login | Register 

 Moderated by: Renate.Reinartz, Markus.Kreisel, Jaakko.Salmenius, Ilkka.Salmenius
New Topic Reply Printer Friendly
Duplicate strings after building sources for a language - Bugs and Quirks in Sisulizer - Technical Support (You need to be registered at the forum to write) - .NET, Delphi, ... - Sisulizer Localization Tool Support
AuthorPost
 Posted: Thu Aug 26th, 2010 10:59 am
PM Private Upload Quote Reply
Methathron
Member
 

Joined: Thu Feb 19th, 2009
Location: Pfarrkirchen, Germany
Posts: 41
Status: 
Offline
Hi,

after completing the translation of a language (based on our current sources) we were "Building All Sources in selected Language". When finishing this process we recognized that the 100% completion of our project (translation statistics) changed to 99%. We found two strings which were added to the project with status "Not translated" and a "...[2]" at the end of the "context" string marking the duplicate occurence of these strings. The original strings appear with "unused" row status, but the duplicate ones with "new" row status (image 1). The major problem is, that the builded sources do not contain translations for these strings.

Now there are several ways to handle this situation in Sisulizer with different results:
1. When rescanning the sources for changes without translating these duplicate rows or doing anything else the duplicate rows disappear, the translation status of the project turns to 100% and everything is fine.
2. When translating these duplicate rows for getting a 100% translated project without removing these unused items the completion status of the project stays at 100% and no new rows are added after building the sources.
3. When translating these duplicate rows for getting a 100% translated project with removing these unused items (the ...[1] strings are removed) no new rows are added after building the sources. But when scanning for changes now the original rows (with ...[1]) are added to the project as new rows and the duplicate ones are marked as unused... as you can see in image 2.

How can we handle this problem?

Best greetings,

Stefan



Attachment: Images.jpg (Downloaded 23 times)

Back To Top PM Private Upload Quote Reply

 Posted: Thu Aug 26th, 2010 11:16 am
PM Private Upload Quote Reply
Markus.Kreisel
Administrator


Joined: Sat Apr 8th, 2006
Location: Monschau, Germany
Posts: 2115
Status: 
Offline
Hi,

You should use Project - Translate Duplicates to re-use the translations for the new rows and use Project - remove unused Items to get rid of the unused ones.

With every build there is a scan of the project to make sure to create a build on the newest data available. Since the order of your list entries is changed this is needed.
Else the translated version would use the old list order what would be a problem.

Hope this helps

Markus




____________________
http://www.sisulizer.com - Three simple steps to localize
Back To Top PM Private Upload Quote Reply

 Posted: Thu Aug 26th, 2010 12:19 pm
PM Private Upload Quote Reply
Methathron
Member
 

Joined: Thu Feb 19th, 2009
Location: Pfarrkirchen, Germany
Posts: 41
Status: 
Offline
Hi Markus,

the workaround to translate the new appearing strings would not be a major problem since there are only two strings which appear as duplicates after building the sources. In this case i would do the copying manually from the "...[1]" strings. When trying to use Project - Translate Duplicates Sisulizer tries to translate all duplicates in all languages (until now 7) which is hard work with skipping until i would reach the two strings shown above...
The major problem is, that the built sources do not contain translations for the two duplicate strings, they contain original language! This error would not be solved by your workaround, since i also made a scan for changes before building the sources.

Greetings,

Stefan

Back To Top PM Private Upload Quote Reply

 Posted: Thu Aug 26th, 2010 12:30 pm
PM Private Upload Quote Reply
Janusz Grzybek
Super Moderator


Joined: Fri Dec 1st, 2006
Location: Zabrze, Poland
Posts: 2542
Status: 
Offline
Hello,

Could you check following setting?
"Tools" menu -> "General" -> "Translations" tab -> "How to select duplicate strings"
If your setting is "By Original and Context", try change it to "By Original".
More information about Translate Duplicate settings you can find in this article http://www.the-localization-tool.com/?p=124 on our blog.

Janusz



____________________
http://www.sisulizer.com - Three simple steps to localize
Back To Top PM Private Upload Quote Reply

 Posted: Thu Aug 26th, 2010 12:40 pm
PM Private Upload Quote Reply
Markus.Kreisel
Administrator


Joined: Sat Apr 8th, 2006
Location: Monschau, Germany
Posts: 2115
Status: 
Offline
Hi,

If Scan for Changes for Changes does finds new strings then they do not have a translations. In this case Sisulizer uses the original string. This is the normal behavior.

I guess, that in your case there is a list and the original order was changed. In this case there is not a real context since the list entries do not have an ID. All we have in such case is a running number.
The only way to make a good match in this case is by value (e.g. using Translate Duplicates) or if you do not trust that re-translate manually. Above will happen to entries with a list of strings sharing one context. The [1] and [2] are the running numbers. If you change the original order for entries without a trustful context the system checks by value check. Since the original value is changed there is no more match possible. If context and value change there is no more link between original and translation. The same is true for rows where the value changes and there is no context by design. It results in one "New" and one "Unused" row.

If you want to overcome that problem, then you have to avoid resource entries with multiple lines (lists). You could give every entry an own resource entry and build the list, e.g. for combo boxes etc. at runtime. Then every list entry would have its own name and context. Then you can change the value and there is still a link. Changes would show as "Changed".

Hope this helps

Markus



____________________
http://www.sisulizer.com - Three simple steps to localize
Back To Top PM Private Upload Quote Reply

Current time is 08:22 am  
.NET, Delphi, ... - Sisulizer Localization Tool Support > Technical Support (You need to be registered at the forum to write) > Bugs and Quirks in Sisulizer > Duplicate strings after building sources for a language



WowUltra modified by Sisulizer Copyright © 2007-09 by Jim Hale - Based on WowBB Copyright © 2003-2006 Aycan Gulez

Sisulizer software localization tool - Three simple steps to localize