Stage scripts

This commit is contained in:
jpirnay
2026-03-30 18:12:52 +02:00
parent 474dfe5490
commit c8b166606e
4 changed files with 9459 additions and 5909 deletions
+143 -47
View File
@@ -3,27 +3,48 @@
// THIS FILE IS AUTO-GENERATED BY gen_i18n.py. DO NOT EDIT.
// Forward declaration for string arrays
// Forward declarations for flat string data blobs and offset tables
namespace i18n_strings {
extern const char* const STRINGS_EN[];
extern const char* const STRINGS_ES[];
extern const char* const STRINGS_FR[];
extern const char* const STRINGS_DE[];
extern const char* const STRINGS_CS[];
extern const char* const STRINGS_PO[];
extern const char* const STRINGS_RU[];
extern const char* const STRINGS_SV[];
extern const char* const STRINGS_RO[];
extern const char* const STRINGS_CA[];
extern const char* const STRINGS_UK[];
extern const char* const STRINGS_BE[];
extern const char* const STRINGS_IT[];
extern const char* const STRINGS_PL[];
extern const char* const STRINGS_FI[];
extern const char* const STRINGS_DA[];
extern const char* const STRINGS_NL[];
extern const char* const STRINGS_TR[];
extern const char* const STRINGS_KK[];
extern const char STRINGS_EN_DATA[];
extern const uint16_t OFFSETS_EN[];
extern const char STRINGS_ES_DATA[];
extern const uint16_t OFFSETS_ES[];
extern const char STRINGS_FR_DATA[];
extern const uint16_t OFFSETS_FR[];
extern const char STRINGS_DE_DATA[];
extern const uint16_t OFFSETS_DE[];
extern const char STRINGS_CS_DATA[];
extern const uint16_t OFFSETS_CS[];
extern const char STRINGS_PO_DATA[];
extern const uint16_t OFFSETS_PO[];
extern const char STRINGS_RU_DATA[];
extern const uint16_t OFFSETS_RU[];
extern const char STRINGS_SV_DATA[];
extern const uint16_t OFFSETS_SV[];
extern const char STRINGS_RO_DATA[];
extern const uint16_t OFFSETS_RO[];
extern const char STRINGS_CA_DATA[];
extern const uint16_t OFFSETS_CA[];
extern const char STRINGS_UK_DATA[];
extern const uint16_t OFFSETS_UK[];
extern const char STRINGS_BE_DATA[];
extern const uint16_t OFFSETS_BE[];
extern const char STRINGS_IT_DATA[];
extern const uint16_t OFFSETS_IT[];
extern const char STRINGS_PL_DATA[];
extern const uint16_t OFFSETS_PL[];
extern const char STRINGS_FI_DATA[];
extern const uint16_t OFFSETS_FI[];
extern const char STRINGS_DA_DATA[];
extern const uint16_t OFFSETS_DA[];
extern const char STRINGS_NL_DATA[];
extern const uint16_t OFFSETS_NL[];
extern const char STRINGS_TR_DATA[];
extern const uint16_t OFFSETS_TR[];
extern const char STRINGS_KK_DATA[];
extern const uint16_t OFFSETS_KK[];
extern const char STRINGS_PT_DATA[];
extern const uint16_t OFFSETS_PT[];
} // namespace i18n_strings
// Language enum
@@ -33,7 +54,7 @@ enum class Language : uint8_t {
FR = 2,
DE = 3,
CS = 4,
PT = 5,
PO = 5,
RU = 6,
SV = 7,
RO = 8,
@@ -47,6 +68,7 @@ enum class Language : uint8_t {
NL = 16,
TR = 17,
KK = 18,
PT = 19,
_COUNT
};
@@ -126,6 +148,7 @@ enum class StrId : uint16_t {
STR_IMAGES_DISPLAY,
STR_IMAGES_PLACEHOLDER,
STR_IMAGES_SUPPRESS,
STR_CREATE_FALLBACK_FOR_INVALID_TOC,
STR_SHORT_PWR_BTN,
STR_ORIENTATION,
STR_SIDE_BTN_LAYOUT,
@@ -138,6 +161,43 @@ enum class StrId : uint16_t {
STR_HYPHENATION,
STR_TIME_TO_SLEEP,
STR_SHOW_HIDDEN_FILES,
STR_USE_CLOCK,
STR_CLOCK_SETTINGS,
STR_CLOCK_SETTINGS_WARNING,
STR_CLOCK,
STR_CLOCK_FORMAT,
STR_TIMEZONE,
STR_24H,
STR_12H,
STR_TZ_UTC,
STR_TZ_CET,
STR_TZ_EET,
STR_TZ_EST,
STR_TZ_CST,
STR_TZ_MST,
STR_TZ_PST,
STR_TZ_AEST,
STR_TZ_NZST,
STR_TZ_MSK,
STR_TZ_UTC_MINUS3,
STR_TZ_UTC_PLUS4,
STR_TZ_IST,
STR_TZ_UTC_PLUS7,
STR_TZ_UTC_PLUS8,
STR_TZ_UTC_PLUS9,
STR_SYNC_TIME,
STR_DETECT_TIMEZONE,
STR_SYNCING_CLOCK,
STR_DETECTING_TIMEZONE,
STR_TIME_SYNCED,
STR_TIME_SYNC_FAILED,
STR_CLOCK_DRIFT,
STR_LAST_NTP_SYNC,
STR_TIMEZONE_DETECTED,
STR_TIMEZONE_DETECT_FAILED,
STR_DST_ACTIVE,
STR_DST_INACTIVE,
STR_DST_UNKNOWN,
STR_REFRESH_FREQ,
STR_KOREADER_SYNC,
STR_CHECK_UPDATES,
@@ -159,6 +219,11 @@ enum class StrId : uint16_t {
STR_KOREADER_AUTH,
STR_SYNC_READY,
STR_AUTH_FAILED,
STR_REGISTER,
STR_REGISTERING,
STR_REGISTER_SUCCESS,
STR_REGISTER_FAILED,
STR_USERNAME_TAKEN,
STR_DONE,
STR_CLEAR_CACHE_WARNING_1,
STR_CLEAR_CACHE_WARNING_2,
@@ -286,6 +351,8 @@ enum class StrId : uint16_t {
STR_REMAP_FRONT_BUTTONS,
STR_OPDS_BROWSER,
STR_COVER_CUSTOM,
STR_PAGE_OVERLAY,
STR_RECENTS,
STR_MENU_RECENT_BOOKS,
STR_NO_RECENT_BOOKS,
STR_CALIBRE_DESC,
@@ -310,6 +377,7 @@ enum class StrId : uint16_t {
STR_SYNC_PROGRESS,
STR_DELETE_CACHE,
STR_DELETE,
STR_REMOVE,
STR_DISPLAY_QR,
STR_CHAPTER_PREFIX,
STR_PAGES_SEPARATOR,
@@ -320,6 +388,8 @@ enum class StrId : uint16_t {
STR_CALC_HASH,
STR_HASH_FAILED,
STR_FETCH_PROGRESS,
STR_MAPPING_REMOTE,
STR_MAPPING_LOCAL,
STR_UPLOAD_PROGRESS,
STR_NO_CREDENTIALS_MSG,
STR_KOREADER_SETUP_HINT,
@@ -346,6 +416,10 @@ enum class StrId : uint16_t {
STR_SCREENSHOT_BUTTON,
STR_AUTO_TURN_ENABLED,
STR_AUTO_TURN_PAGES_PER_MIN,
STR_INFO,
STR_AUTHOR,
STR_SERIES,
STR_FILE_SIZE,
STR_SLEEP_COVER_OVERLAY,
STR_OVERLAY_WHITE,
STR_OVERLAY_GRAY,
@@ -354,53 +428,76 @@ enum class StrId : uint16_t {
STR_OVERLAY_READING_PROGRESS,
STR_OVERLAY_READING_PROGRESS_NO_TOTAL,
STR_OVERLAY_CHAPTER_PAGE_SUFFIX,
STR_SYSTEM_INFO,
STR_LOAD_XTC_FAILED,
STR_LOAD_EPUB_FAILED,
STR_FW_VERSION,
STR_CHIP,
STR_CPU,
STR_MHZ,
STR_FREE_RAM,
STR_MIN_FREE,
STR_MAX_BLOCK,
STR_FLASH_USED,
STR_UPTIME,
STR_CHARGING,
STR_GATHERING_DATA,
STR_READING,
// Sentinel - must be last
_COUNT
};
// Helper function to get string array for a language
inline const char* const* getStringArray(Language lang) {
// Holds a flat string blob and its offset table for one language
struct LangStrings {
const char* data;
const uint16_t* offsets;
};
// Helper function to get string data for a language
inline LangStrings getLanguageStrings(Language lang) {
switch (lang) {
case Language::EN:
return i18n_strings::STRINGS_EN;
return {i18n_strings::STRINGS_EN_DATA, i18n_strings::OFFSETS_EN};
case Language::ES:
return i18n_strings::STRINGS_ES;
return {i18n_strings::STRINGS_ES_DATA, i18n_strings::OFFSETS_ES};
case Language::FR:
return i18n_strings::STRINGS_FR;
return {i18n_strings::STRINGS_FR_DATA, i18n_strings::OFFSETS_FR};
case Language::DE:
return i18n_strings::STRINGS_DE;
return {i18n_strings::STRINGS_DE_DATA, i18n_strings::OFFSETS_DE};
case Language::CS:
return i18n_strings::STRINGS_CS;
case Language::PT:
return i18n_strings::STRINGS_PO;
return {i18n_strings::STRINGS_CS_DATA, i18n_strings::OFFSETS_CS};
case Language::PO:
return {i18n_strings::STRINGS_PO_DATA, i18n_strings::OFFSETS_PO};
case Language::RU:
return i18n_strings::STRINGS_RU;
return {i18n_strings::STRINGS_RU_DATA, i18n_strings::OFFSETS_RU};
case Language::SV:
return i18n_strings::STRINGS_SV;
return {i18n_strings::STRINGS_SV_DATA, i18n_strings::OFFSETS_SV};
case Language::RO:
return i18n_strings::STRINGS_RO;
return {i18n_strings::STRINGS_RO_DATA, i18n_strings::OFFSETS_RO};
case Language::CA:
return i18n_strings::STRINGS_CA;
return {i18n_strings::STRINGS_CA_DATA, i18n_strings::OFFSETS_CA};
case Language::UK:
return i18n_strings::STRINGS_UK;
return {i18n_strings::STRINGS_UK_DATA, i18n_strings::OFFSETS_UK};
case Language::BE:
return i18n_strings::STRINGS_BE;
return {i18n_strings::STRINGS_BE_DATA, i18n_strings::OFFSETS_BE};
case Language::IT:
return i18n_strings::STRINGS_IT;
return {i18n_strings::STRINGS_IT_DATA, i18n_strings::OFFSETS_IT};
case Language::PL:
return i18n_strings::STRINGS_PL;
return {i18n_strings::STRINGS_PL_DATA, i18n_strings::OFFSETS_PL};
case Language::FI:
return i18n_strings::STRINGS_FI;
return {i18n_strings::STRINGS_FI_DATA, i18n_strings::OFFSETS_FI};
case Language::DA:
return i18n_strings::STRINGS_DA;
return {i18n_strings::STRINGS_DA_DATA, i18n_strings::OFFSETS_DA};
case Language::NL:
return i18n_strings::STRINGS_NL;
return {i18n_strings::STRINGS_NL_DATA, i18n_strings::OFFSETS_NL};
case Language::TR:
return i18n_strings::STRINGS_TR;
return {i18n_strings::STRINGS_TR_DATA, i18n_strings::OFFSETS_TR};
case Language::KK:
return i18n_strings::STRINGS_KK;
return {i18n_strings::STRINGS_KK_DATA, i18n_strings::OFFSETS_KK};
case Language::PT:
return {i18n_strings::STRINGS_PT_DATA, i18n_strings::OFFSETS_PT};
default:
return i18n_strings::STRINGS_EN;
return {i18n_strings::STRINGS_EN_DATA, i18n_strings::OFFSETS_EN};
}
}
@@ -408,9 +505,8 @@ inline const char* const* getStringArray(Language lang) {
constexpr uint8_t getLanguageCount() { return static_cast<uint8_t>(Language::_COUNT); }
// Sorted language indices by code (auto-generated by gen_i18n.py)
// Order: English, Беларуская, Català, Čeština, Dansk, Deutsch, Español, Suomi, Français, Italiano
// Қазақша, Nederlands, Polski, Português (Brasil), Română, Русский, Svenska, Türkçe, Українська
constexpr uint8_t SORTED_LANGUAGE_INDICES[] = {0, 11, 9, 4, 15, 3, 1, 14, 2, 12, 18, 16, 13, 5, 8, 6, 7, 17, 10};
// Order: English, Беларуская, Català, Čeština, Dansk, Deutsch, Español, Suomi, Français, Italiano, Қазақша, Nederlands, Polski, Português (Brasil), Português (Portugal), Română, Русский, Svenska, Türkçe, Українська
constexpr uint8_t SORTED_LANGUAGE_INDICES[] = {0, 11, 9, 4, 15, 3, 1, 14, 2, 12, 18, 16, 13, 5, 19, 8, 6, 7, 17, 10};
static_assert(sizeof(SORTED_LANGUAGE_INDICES) / sizeof(SORTED_LANGUAGE_INDICES[0]) == getLanguageCount(),
"SORTED_LANGUAGE_INDICES size mismatch");
+8893 -5727
View File
File diff suppressed because it is too large Load Diff
+40 -21
View File
@@ -1,30 +1,49 @@
#pragma once
#include <string>
#include "I18nKeys.h"
// THIS FILE IS AUTO-GENERATED BY gen_i18n.py. DO NOT EDIT.
namespace i18n_strings {
extern const char* const STRINGS_EN[];
extern const char* const STRINGS_ES[];
extern const char* const STRINGS_FR[];
extern const char* const STRINGS_DE[];
extern const char* const STRINGS_CS[];
extern const char* const STRINGS_PO[];
extern const char* const STRINGS_RU[];
extern const char* const STRINGS_SV[];
extern const char* const STRINGS_RO[];
extern const char* const STRINGS_CA[];
extern const char* const STRINGS_UK[];
extern const char* const STRINGS_BE[];
extern const char* const STRINGS_IT[];
extern const char* const STRINGS_PL[];
extern const char* const STRINGS_FI[];
extern const char* const STRINGS_DA[];
extern const char* const STRINGS_NL[];
extern const char* const STRINGS_TR[];
extern const char* const STRINGS_KK[];
extern const char STRINGS_EN_DATA[];
extern const uint16_t OFFSETS_EN[];
extern const char STRINGS_ES_DATA[];
extern const uint16_t OFFSETS_ES[];
extern const char STRINGS_FR_DATA[];
extern const uint16_t OFFSETS_FR[];
extern const char STRINGS_DE_DATA[];
extern const uint16_t OFFSETS_DE[];
extern const char STRINGS_CS_DATA[];
extern const uint16_t OFFSETS_CS[];
extern const char STRINGS_PO_DATA[];
extern const uint16_t OFFSETS_PO[];
extern const char STRINGS_RU_DATA[];
extern const uint16_t OFFSETS_RU[];
extern const char STRINGS_SV_DATA[];
extern const uint16_t OFFSETS_SV[];
extern const char STRINGS_RO_DATA[];
extern const uint16_t OFFSETS_RO[];
extern const char STRINGS_CA_DATA[];
extern const uint16_t OFFSETS_CA[];
extern const char STRINGS_UK_DATA[];
extern const uint16_t OFFSETS_UK[];
extern const char STRINGS_BE_DATA[];
extern const uint16_t OFFSETS_BE[];
extern const char STRINGS_IT_DATA[];
extern const uint16_t OFFSETS_IT[];
extern const char STRINGS_PL_DATA[];
extern const uint16_t OFFSETS_PL[];
extern const char STRINGS_FI_DATA[];
extern const uint16_t OFFSETS_FI[];
extern const char STRINGS_DA_DATA[];
extern const uint16_t OFFSETS_DA[];
extern const char STRINGS_NL_DATA[];
extern const uint16_t OFFSETS_NL[];
extern const char STRINGS_TR_DATA[];
extern const uint16_t OFFSETS_TR[];
extern const char STRINGS_KK_DATA[];
extern const uint16_t OFFSETS_KK[];
extern const char STRINGS_PT_DATA[];
extern const uint16_t OFFSETS_PT[];
} // namespace i18n_strings