From f9a19f1d130a6ca42519c672544318041aa5f9c3 Mon Sep 17 00:00:00 2001 From: jean-pierre charras Date: Tue, 3 Nov 2020 11:47:28 +0100 Subject: [PATCH] Language selection: do not disallow switching to English language when the English dictionnary is missing. It is not mandatory because all messages are in English, just restricted to ASCII7 chars Fixes #6261 https://gitlab.com/kicad/code/kicad/issues/6261 --- common/pgm_base.cpp | 9 ++++++--- pcb_calculator/eserie_help.h | 30 ++++++++++++------------------ 2 files changed, 18 insertions(+), 21 deletions(-) diff --git a/common/pgm_base.cpp b/common/pgm_base.cpp index 8db4d4c061..5fab1e0304 100644 --- a/common/pgm_base.cpp +++ b/common/pgm_base.cpp @@ -3,7 +3,7 @@ * * Copyright (C) 2004-2015 Jean-Pierre Charras, jp.charras at wanadoo.fr * Copyright (C) 2008 Wayne Stambaugh - * Copyright (C) 1992-2018 KiCad Developers, see AUTHORS.txt for contributors. + * Copyright (C) 1992-2020 KiCad Developers, see AUTHORS.txt for contributors. * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -642,8 +642,11 @@ bool PGM_BASE::SetLanguage( wxString& aErrMsg, bool first_time ) if( !m_locale->IsLoaded( dictionaryName ) ) m_locale->AddCatalog( dictionaryName ); - // Verify the dictionary was loaded properly - if( !m_locale->IsLoaded( dictionaryName ) ) + // Verify the Kicad dictionary was loaded properly + // However, for the English language, the dictionnary is not mandatory, as + // all messages are already in English, just restricted to ASCII7 chars, + // the verification is skipped. + if( !m_locale->IsLoaded( dictionaryName ) && m_language_id != wxLANGUAGE_ENGLISH ) { wxLogTrace( traceLocale, "Unable to load dictionary %s.mo in %s", dictionaryName, m_locale->GetName() ); diff --git a/pcb_calculator/eserie_help.h b/pcb_calculator/eserie_help.h index fbcab160be..190bfcb806 100644 --- a/pcb_calculator/eserie_help.h +++ b/pcb_calculator/eserie_help.h @@ -1,33 +1,27 @@ // Do not edit this file, it is autogenerated by CMake from the .md file _HKI( "E-series defined in IEC 60063 are a widely accepted system of preferred\n" "numbers for electronic components. Available values are approximately\n" -"equally spaced in a logarithmic scale. Although E-series are used for\n" -"Zener diodes, inductors and other components, this calculator is mainly\n" -"intended for resistors.\n" +"equally spaced in a logarithmic scale.\n" "\n" " E12: 1,0 1,2 1,5 1,8 2,2 2,7 3,3 3,9 4,7 5,6 6,8 8,2\n" " E6: 1,0 - 1,5 - 2,2 - 3,3 - 4,7 - 6,8 -\n" " E3: 1,0 - - - 2,2 - - - 4,7 - - -\n" " E1: 1,0 - - - - - - - - - - -\n" -"If your design requires any resistor value which is not readily available,\n" -"this calculator will find a combination of standard E-series components to\n" -"create it. You can enter the required resistance from 0,0025 to 4000 kOhm. \n" -"Solutions using 3 or 4 resistors are given if a better match can be found. \n" -"The 4R checkbox option will take longer to process is considered for the E12\n" -"series only. Optionally it is possible to exclude up to two additional\n" -"values from the solution for the reason of being not available. If a\n" -"E-series value is entered to the required input field, it is always excluded\n" -"from any solution as it is assumed that this value is unavailable.\n" +"\n" +"This calculator finds combinations of standard E-series components to\n" +"create arbitrary values. You can enter the required resistance from 0,0025 to 4000 kOhm. \n" +"Solutions using up to 3 components are given. \n" +"\n" +"If a closer solutions is needed, the 4R checkbox option will give solutions \n" +"using 4 components for the E12 series only. This option\n" +"may take longer to compute. \n" +"\n" +"It is also possible to specify up to two values to exclude from the solution if these\n" +"component values are not available\n" "\n" "Solutions are given in the following formats:\n" "\n" " R1 + R2 +...+ Rn resistors in series\n" " R1 | R2 |...| Rn resistors in parallel\n" " R1 + (R2|R3)... any combination of the above\n" -"__Example:__ Voltage dividers, commonly used for 1:10 range selection\n" -"require resistor ratio values 1:9. Unfortunately the \"9\" is a value, what\n" -"is not even in the E192 series available. Deviation of 1% and more is yet\n" -"unacceptable for 8 bit accuracy. For a required resistor value of 9 kOhm,\n" -"the calculator suggests the E6 values 2k2 + 6k8 in series as a possible\n" -"exact solution.\n" "" );