Skip to content

Commit 0878b99

Browse files
authored
🌐 Language Import/Export (#25889)
1 parent 1bc155e commit 0878b99

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+2757
-2476
lines changed

.gitignore

+2-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,8 @@ genpages.exe
2626
marlin_config.json
2727
mczip.h
2828
language*.csv
29-
csv-out/
29+
out-csv/
30+
out-language/
3031
*.gen
3132
*.sublime-workspace
3233

Marlin/src/feature/pause.cpp

+5-1
Original file line numberDiff line numberDiff line change
@@ -546,7 +546,11 @@ void wait_for_confirmation(const bool is_reload/*=false*/, const int8_t max_beep
546546

547547
TERN_(HOST_PROMPT_SUPPORT, hostui.prompt_do(PROMPT_USER_CONTINUE, GET_TEXT_F(MSG_HEATER_TIMEOUT), GET_TEXT_F(MSG_REHEAT)));
548548

549-
TERN_(EXTENSIBLE_UI, ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_HEATER_TIMEOUT)));
549+
#if ENABLED(TOUCH_UI_FTDI_EVE)
550+
ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_FTDI_HEATER_TIMEOUT));
551+
#elif ENABLED(EXTENSIBLE_UI)
552+
ExtUI::onUserConfirmRequired(GET_TEXT_F(MSG_HEATER_TIMEOUT));
553+
#endif
550554

551555
TERN_(HAS_RESUME_CONTINUE, wait_for_user_response(0, true)); // Wait for LCD click or M108
552556

Marlin/src/lcd/e3v2/proui/dwin.h

+2-2
Original file line numberDiff line numberDiff line change
@@ -47,8 +47,8 @@ namespace GET_LANG(LCD_LANGUAGE) {
4747
#define _MSG_PREHEAT(N) \
4848
LSTR MSG_PREHEAT_##N = _UxGT("Preheat ") PREHEAT_## N ##_LABEL; \
4949
LSTR MSG_PREHEAT_## N ##_SETTINGS = _UxGT("Preheat ") PREHEAT_## N ##_LABEL _UxGT(" Conf");
50-
#if PREHEAT_COUNT > 3
51-
REPEAT_S(4, PREHEAT_COUNT, _MSG_PREHEAT)
50+
#if PREHEAT_COUNT > 1
51+
REPEAT_S(2, INCREMENT(PREHEAT_COUNT), _MSG_PREHEAT)
5252
#endif
5353
}
5454

Marlin/src/lcd/extui/ftdi_eve_touch_ui/language/language_en.h

+2
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,8 @@ namespace Language_en {
147147
LSTR MSG_MOVE_Z_TO_TOP = u8"Raise Z to Top";
148148
LSTR MSG_MAX_SPEED_NO_UNITS = u8"Max Speed";
149149

150+
//LSTR MSG_FTDI_HEATER_TIMEOUT = u8"Idle timeout, temperature decreased. Press Okay to reheat and again to resume.";
151+
150152
#if ENABLED(TOUCH_UI_LULZBOT_BIO)
151153
LSTR MSG_MOVE_TO_HOME = u8"Move to Home";
152154
LSTR MSG_RAISE_PLUNGER = u8"Raise Plunger";

Marlin/src/lcd/language/language_an.h

+49-44
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
#define DISPLAY_CHARSET_ISO10646_1
3232
#define NOT_EXTENDED_ISO10646_1_5X7
3333

34-
namespace Language_an {
34+
namespace LanguageNarrow_an {
3535
using namespace Language_en; // Inherit undefined strings from English
3636

3737
constexpr uint8_t CHARSIZE = 1;
@@ -55,23 +55,23 @@ namespace Language_an {
5555
LSTR MSG_LEVEL_BED_DONE = _UxGT("Nivelacion feita!");
5656
LSTR MSG_SET_HOME_OFFSETS = _UxGT("Achustar desfases");
5757
LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Desfase aplicau");
58-
#if HAS_PREHEAT
59-
LSTR MSG_PREHEAT_1 = _UxGT("Precalentar ") PREHEAT_1_LABEL;
60-
LSTR MSG_PREHEAT_1_H = _UxGT("Precalentar ") PREHEAT_1_LABEL " ~";
61-
LSTR MSG_PREHEAT_1_END = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Boquilla");
62-
LSTR MSG_PREHEAT_1_END_E = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Boquilla ~");
63-
LSTR MSG_PREHEAT_1_ALL = _UxGT("Precalentar ") PREHEAT_1_LABEL _UxGT(" Tot");
64-
LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Precalentar ") PREHEAT_1_LABEL _UxGT(" Base");
65-
LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Precalentar ") PREHEAT_1_LABEL _UxGT(" Conf");
66-
67-
LSTR MSG_PREHEAT_M = _UxGT("Precalentar $");
68-
LSTR MSG_PREHEAT_M_H = _UxGT("Precalentar $ ~");
69-
LSTR MSG_PREHEAT_M_END = _UxGT("Precal. $ Boquilla");
70-
LSTR MSG_PREHEAT_M_END_E = _UxGT("Precal. $ Boquilla ~");
71-
LSTR MSG_PREHEAT_M_ALL = _UxGT("Precalentar $ Tot");
72-
LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Precalentar $ Base");
73-
LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Precalentar $ Conf");
74-
#endif
58+
59+
LSTR MSG_PREHEAT_1 = _UxGT("Precalentar ") PREHEAT_1_LABEL;
60+
LSTR MSG_PREHEAT_1_H = _UxGT("Precalentar ") PREHEAT_1_LABEL " ~";
61+
LSTR MSG_PREHEAT_1_END = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Boquilla");
62+
LSTR MSG_PREHEAT_1_END_E = _UxGT("Precal. ") PREHEAT_1_LABEL _UxGT(" Boquilla ~");
63+
LSTR MSG_PREHEAT_1_ALL = _UxGT("Precalentar ") PREHEAT_1_LABEL _UxGT(" Tot");
64+
LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Precalentar ") PREHEAT_1_LABEL _UxGT(" Base");
65+
LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Precalentar ") PREHEAT_1_LABEL _UxGT(" Conf");
66+
67+
LSTR MSG_PREHEAT_M = _UxGT("Precalentar $");
68+
LSTR MSG_PREHEAT_M_H = _UxGT("Precalentar $ ~");
69+
LSTR MSG_PREHEAT_M_END = _UxGT("Precal. $ Boquilla");
70+
LSTR MSG_PREHEAT_M_END_E = _UxGT("Precal. $ Boquilla ~");
71+
LSTR MSG_PREHEAT_M_ALL = _UxGT("Precalentar $ Tot");
72+
LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Precalentar $ Base");
73+
LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Precalentar $ Conf");
74+
7575
LSTR MSG_COOLDOWN = _UxGT("Enfriar");
7676
LSTR MSG_SWITCH_PS_ON = _UxGT("Enchegar Fuent");
7777
LSTR MSG_SWITCH_PS_OFF = _UxGT("Amortar Fuent");
@@ -192,19 +192,11 @@ namespace Language_an {
192192
LSTR MSG_INFO_PROTOCOL = _UxGT("Protocolo");
193193
LSTR MSG_CASE_LIGHT = _UxGT("Luz");
194194

195-
#if LCD_WIDTH >= 20 || HAS_DWIN_E3V2
196-
LSTR MSG_INFO_PRINT_COUNT = _UxGT("Conteo de impresion");
197-
LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completadas");
198-
LSTR MSG_INFO_PRINT_TIME = _UxGT("Tiempo total d'imp.");
199-
LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Impresion mas larga");
200-
LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total d'extrusion");
201-
#else
202-
LSTR MSG_INFO_PRINT_COUNT = _UxGT("Impresions");
203-
LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completadas");
204-
LSTR MSG_INFO_PRINT_TIME = _UxGT("Total");
205-
LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Mas larga");
206-
LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extrusion");
207-
#endif
195+
LSTR MSG_INFO_PRINT_COUNT = _UxGT("Impresions");
196+
LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completadas");
197+
LSTR MSG_INFO_PRINT_TIME = _UxGT("Total");
198+
LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Mas larga");
199+
LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extrusion");
208200

209201
LSTR MSG_INFO_MIN_TEMP = _UxGT("Temperatura menima");
210202
LSTR MSG_INFO_MAX_TEMP = _UxGT("Temperatura maxima");
@@ -214,22 +206,35 @@ namespace Language_an {
214206
LSTR MSG_DAC_EEPROM_WRITE = _UxGT("Escri. DAC EEPROM");
215207
LSTR MSG_FILAMENT_CHANGE_OPTION_RESUME = _UxGT("Resumir imp.");
216208

217-
//
218-
// Filament Change screens show up to 3 lines on a 4-line display
219-
// ...or up to 2 lines on a 3-line display
220-
//
209+
// Up to 2 lines allowed
210+
LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_2_LINE("Aguardand iniciar", "d'o fil. cambear"));
211+
LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_2_LINE("Meta o filamento", "y prete lo boton"));
221212

213+
LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Aguardando a", "expulsar filament"));
214+
LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Aguardando a", "cargar filamento"));
215+
LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Aguardando impre.", "pa continar"));
216+
}
217+
218+
namespace LanguageWide_an {
219+
using namespace LanguageNarrow_an;
220+
#if LCD_WIDTH >= 20 || HAS_DWIN_E3V2
221+
LSTR MSG_INFO_PRINT_COUNT = _UxGT("Conteo de impresion");
222+
LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Completadas");
223+
LSTR MSG_INFO_PRINT_TIME = _UxGT("Tiempo total d'imp.");
224+
LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Impresion mas larga");
225+
LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total d'extrusion");
226+
#endif
227+
}
228+
229+
namespace LanguageTall_an {
230+
using namespace LanguageWide_an;
222231
#if LCD_HEIGHT >= 4
223-
// Up to 3 lines allowed
232+
// Filament Change screens show up to 3 lines on a 4-line display
224233
LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Aguardand iniciar", "d'o filamento", "cambear"));
225234
LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Meta o filamento", "y prete lo boton", "pa continar..."));
226-
#else // LCD_HEIGHT < 4
227-
// Up to 2 lines allowed
228-
LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_2_LINE("Aguardand iniciar", "d'o fil. cambear"));
229-
LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_2_LINE("Meta o filamento", "y prete lo boton"));
230-
#endif // LCD_HEIGHT < 4
235+
#endif
236+
}
231237

232-
LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Aguardando a", "expulsar filament"));
233-
LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Aguardando a", "cargar filamento"));
234-
LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Aguardando impre.", "pa continar"));
238+
namespace Language_an {
239+
using namespace LanguageTall_an;
235240
}

Marlin/src/lcd/language/language_bg.h

+34-17
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030

3131
#define DISPLAY_CHARSET_ISO10646_5
3232

33-
namespace Language_bg {
33+
namespace LanguageNarrow_bg {
3434
using namespace Language_en; // Inherit undefined strings from English
3535

3636
constexpr uint8_t CHARSIZE = 2;
@@ -44,23 +44,23 @@ namespace Language_bg {
4444
LSTR MSG_DISABLE_STEPPERS = _UxGT("Изкл. двигатели");
4545
LSTR MSG_AUTO_HOME = _UxGT("Паркиране");
4646
LSTR MSG_SET_HOME_OFFSETS = _UxGT("Задай Начало");
47-
#if HAS_PREHEAT
48-
LSTR MSG_PREHEAT_1 = _UxGT("Подгряване ") PREHEAT_1_LABEL;
49-
LSTR MSG_PREHEAT_1_H = _UxGT("Подгряване ") PREHEAT_1_LABEL " ~";
50-
LSTR MSG_PREHEAT_1_END = _UxGT("Подгряване ") PREHEAT_1_LABEL _UxGT(" Дюза");
51-
LSTR MSG_PREHEAT_1_END_E = _UxGT("Подгряване ") PREHEAT_1_LABEL _UxGT(" Дюза ~");
52-
LSTR MSG_PREHEAT_1_ALL = _UxGT("Подгр. ") PREHEAT_1_LABEL _UxGT(" Всички");
53-
LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Подгр. ") PREHEAT_1_LABEL _UxGT(" Легло");
54-
LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Настройки ") PREHEAT_1_LABEL;
5547

56-
LSTR MSG_PREHEAT_M = _UxGT("Подгряване $");
57-
LSTR MSG_PREHEAT_M_H = _UxGT("Подгряване $ ~");
58-
LSTR MSG_PREHEAT_M_END = _UxGT("Подгряване $ Дюза");
59-
LSTR MSG_PREHEAT_M_END_E = _UxGT("Подгряване $ Дюза ~");
60-
LSTR MSG_PREHEAT_M_ALL = _UxGT("Подгр. $ Всички");
61-
LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Подгр. $ Легло");
62-
LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Настройки $");
63-
#endif
48+
LSTR MSG_PREHEAT_1 = _UxGT("Подгряване ") PREHEAT_1_LABEL;
49+
LSTR MSG_PREHEAT_1_H = _UxGT("Подгряване ") PREHEAT_1_LABEL " ~";
50+
LSTR MSG_PREHEAT_1_END = _UxGT("Подгряване ") PREHEAT_1_LABEL _UxGT(" Дюза");
51+
LSTR MSG_PREHEAT_1_END_E = _UxGT("Подгряване ") PREHEAT_1_LABEL _UxGT(" Дюза ~");
52+
LSTR MSG_PREHEAT_1_ALL = _UxGT("Подгр. ") PREHEAT_1_LABEL _UxGT(" Всички");
53+
LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Подгр. ") PREHEAT_1_LABEL _UxGT(" Легло");
54+
LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Настройки ") PREHEAT_1_LABEL;
55+
56+
LSTR MSG_PREHEAT_M = _UxGT("Подгряване $");
57+
LSTR MSG_PREHEAT_M_H = _UxGT("Подгряване $ ~");
58+
LSTR MSG_PREHEAT_M_END = _UxGT("Подгряване $ Дюза");
59+
LSTR MSG_PREHEAT_M_END_E = _UxGT("Подгряване $ Дюза ~");
60+
LSTR MSG_PREHEAT_M_ALL = _UxGT("Подгр. $ Всички");
61+
LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Подгр. $ Легло");
62+
LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Настройки $");
63+
6464
LSTR MSG_COOLDOWN = _UxGT("Охлаждане");
6565
LSTR MSG_SWITCH_PS_ON = _UxGT("Вкл. захранване");
6666
LSTR MSG_SWITCH_PS_OFF = _UxGT("Изкл. захранване");
@@ -157,3 +157,20 @@ namespace Language_bg {
157157
LSTR MSG_DELTA_CALIBRATE_CENTER = _UxGT("Калибровка Център");
158158
LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("Неправилен принтер");
159159
}
160+
161+
namespace LanguageWide_bg {
162+
using namespace LanguageNarrow_bg;
163+
#if LCD_WIDTH >= 20 || HAS_DWIN_E3V2
164+
#endif
165+
}
166+
167+
namespace LanguageTall_bg {
168+
using namespace LanguageWide_bg;
169+
#if LCD_HEIGHT >= 4
170+
// Filament Change screens show up to 3 lines on a 4-line display
171+
#endif
172+
}
173+
174+
namespace Language_bg {
175+
using namespace LanguageTall_bg;
176+
}

Marlin/src/lcd/language/language_ca.h

+51-41
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
* LCD Menu Messages
2828
* See also https://marlinfw.org/docs/development/lcd_language.html
2929
*/
30-
namespace Language_ca {
30+
namespace LanguageNarrow_ca {
3131
using namespace Language_en; // Inherit undefined strings from English
3232

3333
constexpr uint8_t CHARSIZE = 2;
@@ -53,23 +53,23 @@ namespace Language_ca {
5353
LSTR MSG_LEVEL_BED_DONE = _UxGT("Anivellament fet!");
5454
LSTR MSG_SET_HOME_OFFSETS = _UxGT("Ajusta decalatge");
5555
LSTR MSG_HOME_OFFSETS_APPLIED = _UxGT("Decalatge aplicat");
56-
#if HAS_PREHEAT
57-
LSTR MSG_PREHEAT_1 = _UxGT("Preescalfa ") PREHEAT_1_LABEL;
58-
LSTR MSG_PREHEAT_1_H = _UxGT("Preescalfa ") PREHEAT_1_LABEL " ~";
59-
LSTR MSG_PREHEAT_1_END = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" End");
60-
LSTR MSG_PREHEAT_1_END_E = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" End ~");
61-
LSTR MSG_PREHEAT_1_ALL = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" Tot");
62-
LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" Llit");
63-
LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" Conf.");
64-
65-
LSTR MSG_PREHEAT_M = _UxGT("Preescalfa $");
66-
LSTR MSG_PREHEAT_M_H = _UxGT("Preescalfa $ ~");
67-
LSTR MSG_PREHEAT_M_END = _UxGT("Preescalfa $ End");
68-
LSTR MSG_PREHEAT_M_END_E = _UxGT("Preescalfa $ End ~");
69-
LSTR MSG_PREHEAT_M_ALL = _UxGT("Preescalfa $ Tot");
70-
LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Preescalfa $ Llit");
71-
LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Preescalfa $ Conf.");
72-
#endif
56+
57+
LSTR MSG_PREHEAT_1 = _UxGT("Preescalfa ") PREHEAT_1_LABEL;
58+
LSTR MSG_PREHEAT_1_H = _UxGT("Preescalfa ") PREHEAT_1_LABEL " ~";
59+
LSTR MSG_PREHEAT_1_END = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" End");
60+
LSTR MSG_PREHEAT_1_END_E = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" End ~");
61+
LSTR MSG_PREHEAT_1_ALL = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" Tot");
62+
LSTR MSG_PREHEAT_1_BEDONLY = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" Llit");
63+
LSTR MSG_PREHEAT_1_SETTINGS = _UxGT("Preescalfa ") PREHEAT_1_LABEL _UxGT(" Conf.");
64+
65+
LSTR MSG_PREHEAT_M = _UxGT("Preescalfa $");
66+
LSTR MSG_PREHEAT_M_H = _UxGT("Preescalfa $ ~");
67+
LSTR MSG_PREHEAT_M_END = _UxGT("Preescalfa $ End");
68+
LSTR MSG_PREHEAT_M_END_E = _UxGT("Preescalfa $ End ~");
69+
LSTR MSG_PREHEAT_M_ALL = _UxGT("Preescalfa $ Tot");
70+
LSTR MSG_PREHEAT_M_BEDONLY = _UxGT("Preescalfa $ Llit");
71+
LSTR MSG_PREHEAT_M_SETTINGS = _UxGT("Preescalfa $ Conf.");
72+
7373
LSTR MSG_COOLDOWN = _UxGT("Refreda");
7474

7575
LSTR MSG_EXTRUDE = _UxGT("Extrudeix");
@@ -183,19 +183,11 @@ namespace Language_ca {
183183
LSTR MSG_INFO_PROTOCOL = _UxGT("Protocol");
184184
LSTR MSG_CASE_LIGHT = _UxGT("Llum");
185185

186-
#if LCD_WIDTH >= 20 || HAS_DWIN_E3V2
187-
LSTR MSG_INFO_PRINT_COUNT = _UxGT("Total impressions");
188-
LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Acabades");
189-
LSTR MSG_INFO_PRINT_TIME = _UxGT("Temps imprimint");
190-
LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Treball mes llarg");
191-
LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total extrudit");
192-
#else
193-
LSTR MSG_INFO_PRINT_COUNT = _UxGT("Impressions");
194-
LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Acabades");
195-
LSTR MSG_INFO_PRINT_TIME = _UxGT("Total");
196-
LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Mes llarg");
197-
LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extrudit");
198-
#endif
186+
LSTR MSG_INFO_PRINT_COUNT = _UxGT("Impressions");
187+
LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Acabades");
188+
LSTR MSG_INFO_PRINT_TIME = _UxGT("Total");
189+
LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Mes llarg");
190+
LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Extrudit");
199191

200192
LSTR MSG_INFO_MIN_TEMP = _UxGT("Temp. mínima");
201193
LSTR MSG_INFO_MAX_TEMP = _UxGT("Temp. màxima");
@@ -208,23 +200,41 @@ namespace Language_ca {
208200
LSTR MSG_KILL_EXPECTED_PRINTER = _UxGT("Impressora incorrecta");
209201

210202
//
211-
// Filament Change screens show up to 3 lines on a 4-line display
212-
// ...or up to 2 lines on a 3-line display
203+
// Filament Change screens show up to 2 lines on a 3-line display
213204
//
205+
LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Espereu..."));
206+
LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Expulsant..."));
207+
LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Insereix i prem"));
208+
LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Escalfant..."));
209+
LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Carregant..."));
210+
LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Reprenent..."));
211+
}
212+
213+
namespace LanguageWide_ca {
214+
using namespace LanguageNarrow_ca;
215+
#if LCD_WIDTH >= 20 || HAS_DWIN_E3V2
216+
LSTR MSG_INFO_PRINT_COUNT = _UxGT("Total impressions");
217+
LSTR MSG_INFO_COMPLETED_PRINTS = _UxGT("Acabades");
218+
LSTR MSG_INFO_PRINT_TIME = _UxGT("Temps imprimint");
219+
LSTR MSG_INFO_PRINT_LONGEST = _UxGT("Treball mes llarg");
220+
LSTR MSG_INFO_PRINT_FILAMENT = _UxGT("Total extrudit");
221+
#endif
222+
}
223+
224+
namespace LanguageTall_ca {
225+
using namespace LanguageWide_ca;
214226
#if LCD_HEIGHT >= 4
227+
// Filament Change screens show up to 3 lines on a 4-line display
215228
LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_3_LINE("Esperant per", "iniciar el canvi", "de filament"));
216229
LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_2_LINE("Esperant per", "treure filament"));
217230
LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_3_LINE("Poseu filament", "i premeu el boto", "per continuar..."));
218231
LSTR MSG_FILAMENT_CHANGE_HEAT = _UxGT(MSG_2_LINE("Premeu boto per", "escalfar nozzle."));
219232
LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_2_LINE("Escalfant nozzle", "Espereu..."));
220233
LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_2_LINE("Esperant carrega", "de filament"));
221234
LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_2_LINE("Esperant per", "reprendre"));
222-
#else // LCD_HEIGHT < 4
223-
LSTR MSG_FILAMENT_CHANGE_INIT = _UxGT(MSG_1_LINE("Espereu..."));
224-
LSTR MSG_FILAMENT_CHANGE_UNLOAD = _UxGT(MSG_1_LINE("Expulsant..."));
225-
LSTR MSG_FILAMENT_CHANGE_INSERT = _UxGT(MSG_1_LINE("Insereix i prem"));
226-
LSTR MSG_FILAMENT_CHANGE_HEATING = _UxGT(MSG_1_LINE("Escalfant..."));
227-
LSTR MSG_FILAMENT_CHANGE_LOAD = _UxGT(MSG_1_LINE("Carregant..."));
228-
LSTR MSG_FILAMENT_CHANGE_RESUME = _UxGT(MSG_1_LINE("Reprenent..."));
229-
#endif // LCD_HEIGHT < 4
235+
#endif
236+
}
237+
238+
namespace Language_ca {
239+
using namespace LanguageTall_ca;
230240
}

0 commit comments

Comments
 (0)