[SOLVED] PCBNew language bug

I noticed a new behavior with PCBNew today while using the footprint wizard.

My computer language is set to German, but I set KiCAD language to English, because of this the decimal separator turns from “,” to “.” and all the UI text is change to English. (all is good so far), but when closing and opening KiCAD and then PCBNew the UI text remain in English but the decimal separator reverts to “,”, I am not sure how long is it been like this, but I have noticed before, just, it didn’t disturbed me, nor I investigated any further.

Apparently, it has something to do with PCBNew, because, if I set the language to English in Eeschema, close KiCAD and open it again, then open Eeschema directly, the decimal separator is still “.”, but as soon as I open PCBNew, the decimal separator turns to “,”.

Open Eeschema:
image

Open PCBNew

Now Eeschema looks like this:
image

My KiCAD version is:

Application: Eeschema
Version: (5.1.5)-3, release build
Libraries:
    wxWidgets 3.0.4
    libcurl/7.66.0 OpenSSL/1.1.1d (Schannel) zlib/1.2.11 brotli/1.0.7 libidn2/2.2.0 libpsl/0.21.0 (+libidn2/2.1.1) nghttp2/1.39.2
Platform: Windows 8 (build 9200), 64-bit edition, 64 bit, Little endian, wxMSW
Build Info:
    wxWidgets: 3.0.4 (wchar_t,wx containers,compatible with 2.8)
    Boost: 1.71.0
    OpenCASCADE Community Edition: 6.9.1
    Curl: 7.66.0
    Compiler: GCC 9.2.0 with C++ ABI 1013

Build settings:
    USE_WX_GRAPHICS_CONTEXT=OFF
    USE_WX_OVERLAY=OFF
    KICAD_SCRIPTING=ON
    KICAD_SCRIPTING_MODULES=ON
    KICAD_SCRIPTING_PYTHON3=OFF
    KICAD_SCRIPTING_WXPYTHON=ON
    KICAD_SCRIPTING_WXPYTHON_PHOENIX=OFF
    KICAD_SCRIPTING_ACTION_MENU=ON
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=ON
    KICAD_USE_OCC=OFF
    KICAD_SPICE=ON

EDIT:
Bug report:
https://gitlab.com/kicad/code/kicad/issues/3830

Can you try to reproduce with the nightly build? There was a similar bug report here


but I did not take care for decimal point beside the language. The exact behaviour was different each version I tried and even 2 languages same time appeared in version before last stable. Pls. also try to switch something else beside English/German. Suprisingly it seemed to work in the master when I tried last week again.

Hello again, I set my Ubunu 18.04LTS to German system language and cannot reproduce your described behavior with master 5.99.0-807. I tried switching German/English/Portuguese an any sequence with and without closing Kicad and cannot find suspicious things in language and number format.

Did you use the German or Default (=(System)Voreinstellung) setup for Language ? Pls. note that system setup (Gnome as well as Windows) have own currency and number format setup beside the system language what may be set to non default values. Another thing you need to check, if English language support is installed for your Windows machine - what means you can change between the system languages without install. Kicad seems only to switch between languages what are installed also in the host system

1 Like

Hello Janvi,

unfortunately I haven’t been able to test with nighties, I still would like to try that.

I have installed a German version of (Win10) and when running KiCAD for the first time, the languages was German, I changed to English and the language and the decimal separator (locale) changed to English, all good.

The only problem is that it appears that PCBNew is not respecting the language change and somehow retrieves the locale (decimal separator, etc.) from the system.

I have a second language on the system (Spanish) to be able to change the keyboard layout, but besides that all the configurations are the default ones.

Is master 5.99.0-807 what is going to be v5.1.6 or is it what is going to be v6 ?

v6, as you would suspect from the .99. Packaging systems get upset when minor numbers go backwards say from .99 to .1 while the major number doesn’t change. Also if the other way what would you do for 5.1.7? 5.999?

Pls read again the end of my previous post. I cannot see English on the screendump of your “Bevorzugte Sprachen”. Please add this. This means windows system needs to have the language package installed but not activated to allow correct switching for Kicad to this language. IMHO any libs of Kicad request resources from windows to switch the language. If anything fails, Kicad switches to default what means the default OS language and not what you selected in menue. With other words: To allow Kicad switching correct between English/German you should have the English/German packages for this languages also installed in your Windows additional to your Mexican Spanish. Windows language not only contains keyboard layout switching.

To install the latest available Kicad master version you can use the CERN sevice for the moment
https://kicad-downloads.s3.cern.ch/index.html?prefix=windows/nightly/
This saves you many hours preparing the prerequisites for own compiling from source to test the latest efforts of the Kicad contributors. Take the last link at bottom of list what is typically only a few hours old. Avoid the lite versions as this may not contain full language support of i18n language files. Attention: This will overwrite your existing stable Kicad install. Therefore save your project to go back later to stable version. Lib+Schematic File formats are not compatible with the stable version.

Doing so, allows you to test if this issue is already solved. Kicad has a very talented group of core developers what are busy all the day and progress to improve goes on faster than expected. For today, the given download shows version 5.99.0-853 on my W10 machine what is very close to the latest master sources. If this version works on your machine (as it is working for the moment on my W10 machine here also) we can assume the problem as solved as it will appear automatically in the first V6 release. If it is not working we have to examine your W10 system setup again.

Hi Janvi,

i tested what you suggested today, I installed the English package of Win10 and ran KiCAD again (after doing the Windows system feature install dance: close, save, restart, etc.) however, there was no change on the odd behaviour of KiCAD.

That being said, I wanted to know exactly what screwed my installation, so I ran KiCAD with a clean user folder and start tracking what was happening, so I opened KiCAD, change the language, etc. This time however, the settings were saved, I was not changing back to “,” when I was setting the language to English, I compared both user folders, to see if there was anything missing or completly different between both, but could not notice anything :frowning:

Trying to reproduce the bug with some other language that is not installed in my computer (Korean uses “.” as a decimal separator and Russian “,”) didn’t work.

Thanks a bunch for your help.

Well, trying to restore my profile now, I did notice some differences, there are some decimal values being saved in PCBNew in the new profile, they are saved with “.” and in the old profile they are saved with “,” maybe that was what was messing KiCAD for me.

Doing some more testing I found out the culprit of this problem, I could narrowed it down to a plug-in that is somehow misbehaving: “InteractiveHtmlBom” by @qu1ck (I love this plug-in!)

If I delete the carpet from the user folder (“KiCad_v5_1_5\scripting\plugins\InteractiveHtmlBom”), the problem dissapears, if I restore the folder, the problems come back.

Thanks a lot, I hope this helps!

1 Like

I added code to check system locale as a fix for https://github.com/openscopeproject/InteractiveHtmlBom/issues/105
It has a side effect of switching to decimal separators of system locale for parent process. I’ll check if it can be mitigated but python’s api for working with locale is limited.

1 Like

Thanks a lot! Once again, thanks for your fine plug in!

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.