Page 1 of 5

Posted: Fri 03 Apr 2015, 17:38
by musher0
Hello again, mikeb.

On the French thread about this subject I posted some ROX-Filer related
URL's that you may find useful as starting points.
http://murga-linux.com/puppy/viewtopic. ... ost#838075

BFN.

musher0

Posted: Fri 03 Apr 2015, 17:43
by mikeb
ok getting onto the same page now and I am terrible at drawing...

Well Lucid quick test gave no locale error after I changed to fr_FR starting Rox ...it did without.... but the same lack of french comment of desktop.files.
To confuse that picture that is with my glib build but I doubt thats relevant..more likely Rox simply not handling desktop files that well as IIRC it was not included until later anyway.
Plus if gllb was the problem then my build would have cured it.

A play with the sources should confirm that.


mike

edit thanks for the link

edit 2...tested in slax...same behavoiur..and if memory serves rox was from debian not puppy.

Posted: Fri 03 Apr 2015, 19:31
by musher0
Hi, mike.

Many thanks for testing.

Well, that narrows it down quite a bit, doesn't it?

if your own compile of glibc didn't cure it and we have the same behavior
in slax with a Debian-flavoured ROX, then the problem is in the "innards"
of ROX-Filer, not its packaging, not the libC basis.

What does IIRC mean, please? Thanks.

BFN.

musher0

Posted: Fri 03 Apr 2015, 19:31
by musher0
Double. Sorry.

Posted: Fri 03 Apr 2015, 19:44
by SFR
musher0 wrote:What does IIRC mean, please? Thanks.
If I recall correctly it means if I recall correctly. :wink:

And Find'N'Run rulez, he he!
Greetings!

Posted: Fri 03 Apr 2015, 20:00
by mikeb
you have recalled correctly.... its a long phrase and i needed the loo :D

mike

Posted: Fri 03 Apr 2015, 20:45
by mikeb
Ok odd build system...even thats a rox like bunny... :)
stopped at
checking that shared-mime-info (version >= 0.14) is installed... no
configure: error: Package is not installed
but sources told me what I needed to know...

Ok the line is in filer.c

comment = get_value_from_desktop_file(full_path,
"Desktop Entry", "Comment", &error);

The called function does as it says.....

Basically it looks for the pattern 'Comment' to get the tooltip... no LANG anywhere near that section ......
It does not seem too hard to add it ie the pattern modified by the LANG value.
If other language support is there in general so the resultant tooltips will show I see little problem adding this... though I am not a great C coder others may breeze through it.

mike

Posted: Fri 03 Apr 2015, 22:47
by musher0
mikeb wrote:Ok odd build system...even thats a rox like bunny... :)
stopped at
checking that shared-mime-info (version >= 0.14) is installed... no
configure: error: Package is not installed
but sources told me what I needed to know...

Ok the line is in filer.c

comment = get_value_from_desktop_file(full_path,
"Desktop Entry", "Comment", &error);

The called function does as it says.....

Basically it looks for the pattern 'Comment' to get the tooltip... no LANG anywhere near that section ......
It does not seem too hard to add it ie the pattern modified by the LANG value.
If other language support is there in general so the resultant tooltips will show I see little problem adding this... though I am not a great C coder others may breeze through it.

mike
Wow. Great! Many thanks! You have a falcon's eye!

Now can we expand that filer.c line so it does the same as the bash-awk script here:
http://murga-linux.com/puppy/viewtopic. ... ost#837979

Can it be done? Many thanks in advance.

BFN.

musher0

Posted: Sat 04 Apr 2015, 06:56
by mikeb
Wow. Great! Many thanks! You have a falcon's eye!
actually it took a few seconds using searchmonkey...wonder why I recommend that tool??!! :D

Can it be done...don't see why not if I can get the weird thing to build...

Again c is not my strong point..its an ancient primative language thats still in common use... why is beyond me but ours is not to reason why...bit like why people love DOS.

I would assume one needs to find how to read a system variablie ie $LANG and then insert that info into the function with the [] added....a conditional statement to have just 'Comment' as a fallback. With pointers, ints, chars and all that crap thrown in there..

Escaping from this world for 2 days so watch this space unless someone else has an urge (puppy seems to lack c programmers I noticed hence all those slow scripts)

mike

ps yes lots of sarcasm in there :D

Posted: Sat 04 Apr 2015, 09:38
by mikeb
ok got shared mime info....
thanks to debian for changing their debs to xz which needs dpkg-deb that want glibc 2.11 even though the resultant debs do not...

ok it builds but fails as the configure says gtk 2.12 is ok but it actually needs 2.14 for the gui builder (the replacement for glade)... ah the joys of linux.

Ok time ran out so will revisit later..

MIke

Posted: Mon 06 Apr 2015, 10:32
by mikeb
Back from the land of mud and floating.....

Ok one to test.

Works here to show comment according to LANG and use the fallback plain Comment if nothing found.

Also removed running as user message but there may be other puppyisms that I am unaware of...plus had trouble getting Rox menus etc in a language...might have been my compiling steup problem though...INTL IS enabled.

Built and tried on lucid..older pups probably lack library versions needed for ROX 2.11 .

Just attached the main binary for a drop in test.

mike

Rox and desktop files: how to display translated Comment

Posted: Mon 06 Apr 2015, 13:32
by L18L
mikeb wrote:Ok one to test.

Works here to show comment according to LANG and use the fallback plain Comment if nothing found.
Tested.
Works as intended by you.

Fallback should have 2 steps.

example for French language:
If not found in Comment[fr_FR] use Comment[fr]
If not found in Comment[fr] use Comment.

Thanks.

Posted: Mon 06 Apr 2015, 17:23
by musher0
Hi, mikeb.

Thanks much for your time. However, drop-in replacement fails here. No
difference. EN comments only, same as before.

Or maybe I have to re-initialize ROX somehow? I went to black initial
console and came back to wm, but was that enough? Do I have to do
anything in addition to that?

BFN.

musher0

Posted: Mon 06 Apr 2015, 17:35
by LazY Puppy
drop-in replacement fails here. No
difference. EN comments only, same as before.
Me too.

Posted: Mon 06 Apr 2015, 17:44
by mikeb
Did you replace the existing rox-filer in /usr/local/apps/ROX-filer .

If its truly stopped including pinboard and LANG is set which it sounds like then hmmmm

well the previous post about extra fallbacks may apply. IE your specific LANG variable may not be in there ... utf8 should be ok but fr_FR will not find fr as it stands... editing a desktop file would be the test...echo $LANG and ensure there is an entry to match.
Every desktop file seems to have a different set of languages or none.

I used rox's own extraction and handling of LANG

I can fix but in any other language its a 20 second job but in the obtuse bitch known as c it will be half an hour for multiple rebuilds and tests. :D

mike

Posted: Mon 06 Apr 2015, 18:11
by ASRI éducation
Thank you mikeb!

My test:
1 - Replace the existing rox-filer in /usr/local/apps/ROX-filer.
2 - Restart X.
3 - Open /usr/share/applications, then try with file abiword.desktop.

Result:
- With Comment[fr_FR] it is ok.
- With Comment[fr] it is not ok (comment is in english).
This is the beginning of a solution. Alas, usually the desktop files indicate only the first two characters of the language: en, de, fr, es, it...

Regards

Posted: Mon 06 Apr 2015, 18:12
by augras
Hi mikeb
Thanks for your works.
I just try on tahrpup6.0.2 and it works with fr_FR in the .desktop file but not with just fr.
Unfortunately when there is a french comment it seems to be with just fr and not fr_FR. I just take a look on few files and it was always like this !
Thanks again.
Philippe

Posted: Mon 06 Apr 2015, 18:20
by LazY Puppy
With Comment[fr_FR] it is ok.
With Comment[fr] it is not ok (comment is in english).
Confirmed!

My .desktop files have only [de]. After changing some of them to [de_DE] it shows immediately comments in DE. No need at all to replace the original binary nor to restart X here. Just executed the extracted binary from its extraction directory for testing.

Posted: Mon 06 Apr 2015, 18:23
by musher0
mikeb wrote:Did you replace the existing rox-filer in /usr/local/apps/ROX-filer .

If its truly stopped including pinboard and LANG is set which it sounds like then hmmmm

well the previous post about extra fallbacks may apply. IE your specific LANG variable may not be in there ... utf8 should be ok but fr_FR will not find fr as it stands... editing a desktop file would be the test...echo $LANG and ensure there is an entry to match.
Every desktop file seems to have a different set of languages or none.

I used rox's own extraction and handling of LANG

I can fix but in any other language its a 20 second job but in the obtuse bitch known as c it will be half an hour for multiple rebuilds and tests. :D

mike
Hi, mikeb.

Thanks for these details.

FWIW... ;) I'm French-Canadian and these are the varioous LANG
variables that I insert in /etc/profile.local:

Code: Select all

export LANG="fr_CA.utf8"
export LANGUAGE="fr_CA.utf8"
export LC_CTYPE="fr_CA.utf8"
export LC_NUMERIC="fr_CA.utf8"
export LC_TIME="fr_CA.utf8"
export LC_DATE="fr_CA.utf8"
export LC_MONETARY="fr_CA.utf8"
export LC_MESSAGES="fr_CA.utf8"
export LC_PAPER="fr_CA.utf8"
export LC_NAME="fr_CA.utf8"
export LC_ADDRESS="fr_CA.utf8"
export LC_TELEPHONE="fr_CA.utf8"
export LC_MEASUREMENT="fr_CA.utf8"
export LC_IDENTIFICATION="fr_CA.utf8"
export LC_ALL=""
But < Comment[fr] > or < GenericName[fr] > in *.desktop files are
recognized by my system. (Hmmm... how would I know that?) In any
case I can use the French-from-France localization files OOTB.

If it may be a hindrance ;), here are the contents of file
aOOwriter.desktop. It has the most comments[xy] that I know of and it
probably holds the Guinness record of fattest *.desktop file.

I'll try a full reboot and see what that does.

BFN.

musher0

Posted: Mon 06 Apr 2015, 18:30
by mikeb
Ok so general consensus is the need to handle fr and fr_FR variation of LANG variables... ok will add that and post the result later.... not in Lucid at the moment and REALLY hungry...

Now what's the system definition of later?

if anyone wants this for older pups ROX 2.10 works ok...its before they changed from glade which is where the library changes are needed..just shout. Functionally there seems little difference in the two versions apart from this.


mike