ITT suggestions

Where developers, translators, and users meet...
fenixproductions
Posts: 183
Joined: 15 Nov 2012 22:48
Contact:

ITT suggestions

Post by fenixproductions »

Hi

I have noticed that search filter in ITT is not as easy for use as it could bem so I have decided two write down two small suggestions:

1. add a mode to ignore & character in strings, so even if I type Copy it will show &Copy BUT with taking into consideration string length: so &copy will show up before Copy selected items.

2. allow to filter strings with & character, i.e. &>Copy could mean showing only Copy strings which contain ampersand (&Copy, C&opy, etc.).

3. allow exact match (little combination of two from above)

4. provide some way to track shortcut keys conflicts (ALT+letter)

admin
Site Admin
Posts: 60357
Joined: 22 May 2004 16:48
Location: Win8.1 @100%, Win10 @100%
Contact:

Re: ITT suggestions

Post by admin »

I see, but unfortunately none of this is possible (unless with unreasonable effort). :|

Borut
Posts: 1412
Joined: 19 Oct 2010 19:29

Re: ITT suggestions

Post by Borut »

I would find the suggestions made by fenix useful too. However, not worth the great effort.

On the other hand, Don, are you thinking about some quality assurance function? For instance:

- Flagging all those having an '&' in the original, but not in the translation (and vice versa)
- Flagging all those having some pending or trailing blanks, but not the same number of them in the translation

Regards,
Borut
Win 10 Pro 64bit

admin
Site Admin
Posts: 60357
Joined: 22 May 2004 16:48
Location: Win8.1 @100%, Win10 @100%
Contact:

Re: ITT suggestions

Post by admin »

That would be possible.

Generally, accelerators (&) is a bug unsolved problem. There is no way to programmatically determine which elements are visible at the same time (i.e. which can have accelerator collisions. This info could only be added manually in some way, but only a crazy person would do this work.

All I could do is to provide automatic accelerators for translations that have none yet AND contain the same accelerator letter as the original.

fenixproductions
Posts: 183
Joined: 15 Nov 2012 22:48
Contact:

Re: ITT suggestions

Post by fenixproductions »

@admin
admin wrote:This info could only be added manually in some way, but only a crazy person would do this work.
I don't want to sound rude but such crazy people exist (i.e. Total Commander has small tool for checking such collisions) but I know that: more language strings you have the bigger is work it takes.

I'd like to truly appreciate your effort though: there are only few applications with custom built translation tools I am aware of (i.e. Advanced Renamer). And it is pretty original to have multiple plurals implemented. This is very, very neat.

Edited: I've just had an idea which I need to test with some of my old tools: INI switch which will cut off all letters from strings on load except the ones with '& prefix'. It will look awkward but may provide good enough visual indication. I need to check it…

admin
Site Admin
Posts: 60357
Joined: 22 May 2004 16:48
Location: Win8.1 @100%, Win10 @100%
Contact:

Re: ITT suggestions

Post by admin »

fenixproductions wrote:@admin
admin wrote:This info could only be added manually in some way, but only a crazy person would do this work.
I don't want to sound rude but such crazy people exist (i.e. Total Commander has small tool for checking such collisions) but I know that: more language strings you have the bigger is work it takes.

I'd like to truly appreciate your effort though: there are only few applications with custom built translation tools I am aware of (i.e. Advanced Renamer). And it is pretty original to have multiple plurals implemented. This is very, very neat.

Edited: I've just had an idea which I need to test with some of my old tools: INI switch which will cut off all letters from strings on load except the ones with '& prefix'. It will look awkward but may provide good enough visual indication. I need to check it…
Interesting. I currently cannot see how such a tool could work. But then I don't now TC. I'll find a solution one day.

EDIT: I just added a remark on accelerators to the Translation Guide (http://www.xyplorer.com/xyfc/viewtopic. ... 557#p78557) with the basic message: Don't worry, I'll find a solution.

Borut
Posts: 1412
Joined: 19 Oct 2010 19:29

When we are speaking about accelerators...

Post by Borut »

When we are speaking about accelerators...

I have noticed (many?) cases, where the original English string in Reference.lng does not have accelerator, while the translation (the "same" English string) does! Example:

Code: Select all

kc.0192=00|Exit|--|E&xit
Few days ago there were many such strings and I am afraid that there are still many. I first thought that it is a glitch in the ITT, but apparently it is the Reference.lng itself, if I am not wrong.

How to proceed? :? :?:

Also, since you are already presenting the current line as a hint when hovering over the score bar, it would be nice to define some handy functions for double clicking and left/right clicking the score bar, that would copy some strings into clipboard, for instance like the following ones (of which the first one is being inspired by the daily reports of pseudoz on this forum):

Code: Select all

Français [ 2012-11-27 13:03 - LF 7.6 - 3567/5210 (68,46%) ]
kc.0192=00|Exit|--|E&xit
Exit
E&xit
Win 10 Pro 64bit

fenixproductions
Posts: 183
Joined: 15 Nov 2012 22:48
Contact:

Re: ITT suggestions

Post by fenixproductions »

@admin
I know it is not easy to do it from running application but you have sources

So maybe, just maybe:
1. take source code parts responsible for generating GUI
2. parse them to get parent -> children information.
3. save it to CSV file in the form of:
ParentControlName;ChildrenControlName;ParentControlTranslationId;ChildrenControlTranslationId.
where:
ParentControlName - control name or id used by XYplorer (internal purpose),
ChildrenControlName - control name or id used by XYplorer (internal purpose),
ParentControlTranslationId - used for notifications,
ChildrenControlTranslationId - used to get translated text with & characters and notifications.

Now ITT tool could use such file:
1. check all strings for children from the same parent,
2. notify about accelerator conflicts: "<ParentControlTranslationId.Text> has conflicting accelerator keys:\n<list of children strings with ChildrenControlTranslationId >"
3. maybe even provide info: "You have following letters left…" - who knows.

I am aware that some controls are meant for grouping (GroupBox, Panel) so sometimes you would need to use grandparent instead.

I hope I did not complicate it too much ;)

admin
Site Admin
Posts: 60357
Joined: 22 May 2004 16:48
Location: Win8.1 @100%, Win10 @100%
Contact:

Re: When we are speaking about accelerators...

Post by admin »

Borut wrote:When we are speaking about accelerators...

I have noticed (many?) cases, where the original English string in Reference.lng does not have accelerator, while the translation (the "same" English string) does! Example:

Code: Select all

kc.0192=00|Exit|--|E&xit
Few days ago there were many such strings and I am afraid that there are still many. I first thought that it is a glitch in the ITT, but apparently it is the Reference.lng itself, if I am not wrong.

How to proceed? :? :?:

Also, since you are already presenting the current line as a hint when hovering over the score bar, it would be nice to define some handy functions for double clicking and left/right clicking the score bar, that would copy some strings into clipboard, for instance like the following ones (of which the first one is being inspired by the daily reports of pseudoz on this forum):

Code: Select all

Français [ 2012-11-27 13:03 - LF 7.6 - 3567/5210 (68,46%) ]
kc.0192=00|Exit|--|E&xit
Exit
E&xit
Exit|--|E&xit -- oh, bug. I fixed that now. No worries, your translations will not be touched by upgrading.

Daily reports of pseudoz? :) Where?

Right clicking the score bar: okay, but the last two items are original and translation, right? You already got those commands in another context menu (item list, and apply button).

Borut
Posts: 1412
Joined: 19 Oct 2010 19:29

Re: When we are speaking about accelerators...

Post by Borut »

admin wrote:Exit|--|E&xit -- oh, bug. I fixed that now. No worries, your translations will not be touched by upgrading.
Good, thanks. I was spending yesterday some time deleting the "&" from a lot of translations. I'll probably have to put them back, I guess. As I wrote, a simple QA reporting on strings that have/don't have "&" in original and don't have/have it in translation would be helpful, I think. BTW, I am surprised that no German, French, Portuguese... translators are reporting any such problems, but only I do. Hope you do not mind.
admin wrote:Daily reports of pseudoz? :) Where?
Multilingual support area. He/she is just changing the title of the thread each day. Look at thread titles there. - Today it is over 73% already.
admin wrote:Right clicking the score bar: okay, but the last two items are original and translation, right? You already got those commands in another context menu (item list, and apply button).
OK, yes, I agree. Was just thinking that it would be cool having them at one place via different clicks. But, never mind.
Win 10 Pro 64bit

admin
Site Admin
Posts: 60357
Joined: 22 May 2004 16:48
Location: Win8.1 @100%, Win10 @100%
Contact:

Re: When we are speaking about accelerators...

Post by admin »

QA reporting on strings ...
I might do something with filters...
He/she is just changing the title of the thread each day.
Oh, I never noted that! Wow, 73%! He really wants that t-shirt! :)

I packed all those new copy commands in one place now.

admin
Site Admin
Posts: 60357
Joined: 22 May 2004 16:48
Location: Win8.1 @100%, Win10 @100%
Contact:

Re: When we are speaking about accelerators...

Post by admin »

Borut wrote:
admin wrote:Exit|--|E&xit -- oh, bug. I fixed that now. No worries, your translations will not be touched by upgrading.
Good, thanks. I was spending yesterday some time deleting the "&" from a lot of translations. I'll probably have to put them back, I guess. As I wrote, a simple QA reporting on strings that have/don't have "&" in original and don't have/have it in translation would be helpful, I think. BTW, I am surprised that no German, French, Portuguese... translators are reporting any such problems, but only I do. Hope you do not mind.
Of course, I don't, I love feedback.

BTW, I only fixed this in the "kc" section. In "ms" (messages) it is on purpose that the accelerators are removed from the original. This is necessary for the way it is coded; ultimately to make it future-proof against changes in accelerators which can always happen without notice.

Borut
Posts: 1412
Joined: 19 Oct 2010 19:29

Re: When we are speaking about accelerators...

Post by Borut »

admin wrote:In "ms" (messages) it is on purpose that the accelerators are removed from the original. This is necessary for the way it is coded; ultimately to make it future-proof against changes in accelerators which can always happen without notice.
Oh, I see. Then the rule for translators is: as soon as an accelerator is in "translated" English string, it should be there in the real translation (if at all possible and translator has time for this). Thank you for clarification.
Win 10 Pro 64bit

admin
Site Admin
Posts: 60357
Joined: 22 May 2004 16:48
Location: Win8.1 @100%, Win10 @100%
Contact:

Re: When we are speaking about accelerators...

Post by admin »

Borut wrote:
admin wrote:In "ms" (messages) it is on purpose that the accelerators are removed from the original. This is necessary for the way it is coded; ultimately to make it future-proof against changes in accelerators which can always happen without notice.
Oh, I see. Then the rule for translators is: as soon as an accelerator is in "translated" English string, it should be there in the real translation (if at all possible and translator has time for this). Thank you for clarification.
Exactly.

admin
Site Admin
Posts: 60357
Joined: 22 May 2004 16:48
Location: Win8.1 @100%, Win10 @100%
Contact:

Re: ITT suggestions

Post by admin »

fenixproductions wrote:@admin
I know it is not easy to do it from running application but you have sources

So maybe, just maybe:
1. take source code parts responsible for generating GUI
2. parse them to get parent -> children information.
3. save it to CSV file in the form of:
ParentControlName;ChildrenControlName;ParentControlTranslationId;ChildrenControlTranslationId.
where:
ParentControlName - control name or id used by XYplorer (internal purpose),
ChildrenControlName - control name or id used by XYplorer (internal purpose),
ParentControlTranslationId - used for notifications,
ChildrenControlTranslationId - used to get translated text with & characters and notifications.

Now ITT tool could use such file:
1. check all strings for children from the same parent,
2. notify about accelerator conflicts: "<ParentControlTranslationId.Text> has conflicting accelerator keys:\n<list of children strings with ChildrenControlTranslationId >"
3. maybe even provide info: "You have following letters left…" - who knows.

I am aware that some controls are meant for grouping (GroupBox, Panel) so sometimes you would need to use grandparent instead.

I hope I did not complicate it too much ;)
Yes, I already thought along these lines, but it's complicated. Controls of different levels can be visible at the same time. Not only shared parents, but A's parent is B's grandparent is C's grandgrandparent, and all are visible at the same time. These constellations are hard to determine if at all. I'll find a way...

Post Reply