Opened 11 years ago

Closed 11 years ago

#1504 closed defect (fixed)

NVIZ shows only English Menu

Reported by: Venkat Owned by: grass-dev@…
Priority: major Milestone: 6.4.2
Component: Packaging Version: svn-trunk
Keywords: tcl/tk, nviz, i18n, wingrass Cc:
CPU: Unspecified Platform: MSWindows 7

Description

Tested with WinGRASS-6.4.SVN-r49327 and nviz2.2 (tcl/tk) menu is only in English despite changing locale to ja, de etc.

It seems that NVIZ (tcl/tk) is not i18N

Attachments (2)

grass64svn_nviz_in_japanese.jpg (175.4 KB ) - added by neteler 11 years ago.
NVIZ and wxGUI in Japanese
nviz_ja_win-7.png (98.7 KB ) - added by Venkat 11 years ago.

Download all attachments as: .zip

Change History (25)

comment:1 by hamish, 11 years ago

Component: DefaultTranslations
Keywords: tcl/tk nviz i18n wingrass added
Priority: blockermajor

the message files seem to exist at least,

http://grass.osgeo.org/devel/i18n.php#statistics

GRASS NVIZ messages (grassnviz)

PO-Files	Translated messages	Fuzzy translations	Untranslated messages
Japanese 	grassnviz_ja.po 	534 	 	0 
German 	 	grassnviz_de.po 	380 	151  	3 
Latvian 	grassnviz_lv.po 	348 	13  	0 
Italian 	grassnviz_it.po 	327 	0  	207 

?, Hamish

comment:2 by venkat, 11 years ago

Yes, the message filesdo exist, but nviv2.2 menu are displayed only in English even when I set language to Japanese, German etc.

by neteler, 11 years ago

NVIZ and wxGUI in Japanese

comment:3 by neteler, 11 years ago

I have switched my Linux box to Japanese and both NVIZ and wxGUI come up in Japanese nicely (see attachment).

Venka, how did you set the language on your system?

To developers: I still value #879 ("Add a "change language" option in GRASS GUI") highly relevant to overcome these problems.

by Venkat, 11 years ago

Attachment: nviz_ja_win-7.png added

comment:5 by Venkat, 11 years ago

nviz2.2 (tcl/tk) displays Japanese strings correctly (See attached image) with OSGeo4W (GRASS6.4.2RC2). I had to edit the apps/grass/grass-6.4.2RC2/etc/nviz2.2/msgs/ja.msg file and input Japanese UTF-8 as ascii string.

The same does not work with WinGRASS-6.4.SVN-r49327 which displays nviz2.2 menu only in English. My guess is that the problem maybe with the tcl/tk library in WinGRASS-6.4.SVN-r49327.

Hoping that solution can be found for helping nviz2.2 (tck/tk) translation in WinGRASS-6.4.SVN too.

comment:6 by marisn, 11 years ago

Component: TranslationsPackaging

This is a packaging issue, as my installed nightly native WinGRASS 6.4 lacks msgcat support and thus all tcl/tk should be only in English.

How to check that: go to C:\program files\grass 6.4 svn\tcl-tk\bin start tclsh.exe type in: "package require msgcat" (without quotes) if the answer is "can't find package", Your tcl/tk installation is missing it's core functionality.

comment:7 by Venkat, 11 years ago

MarisN, thanks for the insight. Yes, in the native WinGRASS-6.4.2RC2 "msgcat cannot be found". Hope msgcat support will be included in tcl/tk installation for WinGRASS-6.4.2.

comment:8 by neteler, 11 years ago

http://gnuwin32.sourceforge.net/packages/gettext.htm

http://sourceforge.net/projects/gnuwin32/files/gettext/ - 0.14.4 - 2005-05-07

Probably the gettext package is too old? I don't see much tck in there:

[neteler@north ~]$ unzip -l  gettext-0.14.4-bin.zip | grep tcl
        0  05-06-2005 23:54   contrib/gettext/0.14.4/gettext-0.14.4-src/gettext-tools/examples/hello-tcl/
      193  12-07-2003 13:43   contrib/gettext/0.14.4/gettext-0.14.4-src/gettext-tools/examples/hello-tcl/INSTALL
        0  05-06-2005 23:54   contrib/gettext/0.14.4/gettext-0.14.4-src/gettext-tools/examples/hello-tcl-tk/
      218  12-07-2003 13:43   contrib/gettext/0.14.4/gettext-0.14.4-src/gettext-tools/examples/hello-tcl-tk/INSTALL
[neteler@north ~]$ unzip -l  gettext-0.14.4-lib.zip | grep tcl
[neteler@north ~]$

Latest release is gettext-0.18.1.1.tar.gz. However:

neteler@north:~/gettext-0.18.1.1$ find . -name '*.tcl'
./gettext-tools/src/msgunfmt.tcl
./gettext-tools/examples/hello-tcl-tk/hello.tcl
./gettext-tools/examples/hello-tcl/hello.tcl

comment:9 by marisn, 11 years ago

Markus, gettext is OK. I can also see translated messages coming from the C part of GRASS. Issue is caused by a broken TCL version shipped with WinGRASS nightly. It lacks one of TCL core components - msgcat, that provides internationalization support for TCL code. It's easy to spot this issue - just ask for msgcat in any TCL script/shell like: "package require msgcat"

comment:10 by neteler, 11 years ago

To check, I have downloaded a snapshot from http://wingrass.fsv.cvut.cz/grass64/ and looked into C:\Programmi\GRASS 6.4.SVN\extrabin\ which contains the "msgcat.exe".

Don't you have it in GRASS 6.4.SVN\extrabin\? If yes, then the binary is there but not seen from Tcl.. (?)

in reply to:  10 ; comment:11 by marisn, 11 years ago

Markus, I repeat. There are no problems with gettext. msgcat.exe is provided by gettext and has nothing to do with this issue. This issue comes from the lack of msgcat-VERSION.tm file (present in ActiveState TCL). Replying to neteler:

To check, I have downloaded a snapshot from http://wingrass.fsv.cvut.cz/grass64/ and looked into C:\Programmi\GRASS 6.4.SVN\extrabin\ which contains the "msgcat.exe".

Don't you have it in GRASS 6.4.SVN\extrabin\? If yes, then the binary is there but not seen from Tcl.. (?)

comment:12 by neteler, 11 years ago

Then I would suggest to package winGRASS with Activestate TCL as it seems to be done in OSGeo4W.

in reply to:  12 ; comment:13 by Venkat, 11 years ago

Replying to neteler:

Then I would suggest to package winGRASS with Activestate TCL as it seems to be done in OSGeo4W.

MarisN, can you please clarify if this would help overcome "lack of msgcat-VERSION.tm" in winGRASS package.

Thanks in advance.

in reply to:  13 comment:14 by marisn, 11 years ago

Replying to Venkat:

Replying to neteler:

Then I would suggest to package winGRASS with Activestate TCL as it seems to be done in OSGeo4W.

MarisN, can you please clarify if this would help overcome "lack of msgcat-VERSION.tm" in winGRASS package.

Thanks in advance.

I'm not an expert on TCL packaging on Windows. I just checked that Activestate provided TCL version has msgcat support. Still it's strange that WinGRASS version doesn't as it is considered to be a part of TCL core functionality. Other option is to examine WinGRASS TCL packaging procedure to find out why msgcat is missing as normally it should be present.

in reply to:  12 ; comment:15 by jef, 11 years ago

Replying to neteler:

Then I would suggest to package winGRASS with Activestate TCL as it seems to be done in OSGeo4W.

OSGeo4W doesn't ship Activestate TCL - as they don't allow redistribution. IIRC I think I did an own build.

in reply to:  15 comment:16 by venkat, 11 years ago

Replying to jef:

Replying to neteler:

Then I would suggest to package winGRASS with Activestate TCL as it seems to be done in OSGeo4W.

OSGeo4W doesn't ship Activestate TCL - as they don't allow redistribution. IIRC I think I did an own build.

If you can suggest your build options for TCL on OSGeo4W, maybe rebuilding TCL will the same options for WinGRASS TCL should do the trick.

in reply to:  11 ; comment:17 by hellik, 11 years ago

Replying to marisn:

Markus, I repeat. There are no problems with gettext. msgcat.exe is provided by gettext and has nothing to do with this issue. This issue comes from the lack of msgcat-VERSION.tm file (present in ActiveState TCL).

just searched within my osgeo4w-build-tree here, there is

C:\OSGeo4W\lib\tcl8\8.5\msgcat-1.4.2.tm

would this be enough if included in osgeo4w-based-wingrass?

Helmut

in reply to:  17 comment:18 by hellik, 11 years ago

Replying to hellik:

Replying to marisn:

Markus, I repeat. There are no problems with gettext. msgcat.exe is provided by gettext and has nothing to do with this issue. This issue comes from the lack of msgcat-VERSION.tm file (present in ActiveState TCL).

just searched within my osgeo4w-build-tree here, there is

C:\OSGeo4W\lib\tcl8\8.5\msgcat-1.4.2.tm

would this be enough if included in osgeo4w-based-wingrass?

and where should msgcat-1.4.2.tm be in?

at the moment we have

i.e. C:\Program Files\GRASS 6.5.SVN\tcl-tk\lib\tcl8.5 C:\Program Files\GRASS 6.5.SVN\tcl-tk\lib\tk8.5

any hints?

Helmut

in reply to:  5 ; comment:19 by hellik, 11 years ago

Replying to Venkat:

Hoping that solution can be found for helping nviz2.2 (tck/tk) translation in WinGRASS-6.4.SVN too.

see wingrass65: r49793 attempt to fix #1504: NVIZ shows only English Menu

wingrass70: r49794 attempt to fix #1504: NVIZ shows only English Menu

not yet in wingrass64svn, please test with nightly builds >r49793:

http://wingrass.fsv.cvut.cz/grass65/ http://wingrass.fsv.cvut.cz/grass70/

Helmut

p.s. maybe there has to be opened another ticket, because here (winvista/win 7 german)

"GRASS 6.5.SVN with MSYS" => partly translated "GRASS 6.5.SVN" => more translated as above

in reply to:  19 comment:20 by hellik, 11 years ago

Replying to hellik:

p.s. maybe there has to be opened another ticket, because here (winvista/win 7 german)

"GRASS 6.5.SVN with MSYS" => partly translated "GRASS 6.5.SVN" => more translated as above

see ticket #1514

in reply to:  19 ; comment:21 by marisn, 11 years ago

Replying to hellik:

Replying to Venkat:

Hoping that solution can be found for helping nviz2.2 (tck/tk) translation in WinGRASS-6.4.SVN too.

see wingrass65: r49793 attempt to fix #1504: NVIZ shows only English Menu

wingrass70: r49794 attempt to fix #1504: NVIZ shows only English Menu

not yet in wingrass64svn, please test with nightly builds >r49793:

http://wingrass.fsv.cvut.cz/grass65/ http://wingrass.fsv.cvut.cz/grass70/

Helmut

Seems to work just fine. Please backport to 6.4 too.

in reply to:  21 comment:22 by hellik, 11 years ago

Replying to marisn:

Seems to work just fine. Please backport to 6.4 too.

done: r49805

please test.

Helmut

comment:23 by venkat, 11 years ago

Resolution: fixed
Status: newclosed

Works fine with WinGRASS-6.4.SVN-r49805 with Japanese local.

Helmut, many thanks for the GRASS-6.4 backport.

Note: See TracTickets for help on using tickets.