## Summary * **What is the goal of this PR?** Implements the Italian language translation for CrossPoint Reader. * **What changes are included?** * Added [lib/I18n/translations/italian.yaml] with Italian translations for all strings. * Generated the necessary C++ files by running the [gen_i18n.py] script. * Added myself to the [docs/translators.md] file under the Italian section. ## Additional Context --- ### AI Usage While CrossPoint doesn't have restrictions on AI tools in contributing, please be transparent about their usage as it helps set the right context for reviewers. Did you use AI tools to help write this code? _**< PARTIALLY >**_ --------- Co-authored-by: Zach Nelson <zach@zdnelson.com>
405 lines
8.7 KiB
C++
405 lines
8.7 KiB
C++
#pragma once
|
|
#include <cstdint>
|
|
|
|
// THIS FILE IS AUTO-GENERATED BY gen_i18n.py. DO NOT EDIT.
|
|
|
|
// Forward declaration for string arrays
|
|
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_CZ[];
|
|
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[];
|
|
} // namespace i18n_strings
|
|
|
|
// Language enum
|
|
enum class Language : uint8_t {
|
|
ENGLISH = 0,
|
|
SPANISH = 1,
|
|
FRENCH = 2,
|
|
GERMAN = 3,
|
|
CZECH = 4,
|
|
PORTUGUESE = 5,
|
|
RUSSIAN = 6,
|
|
SWEDISH = 7,
|
|
ROMANIAN = 8,
|
|
CATALAN = 9,
|
|
UKRAINIAN = 10,
|
|
BELARUSIAN = 11,
|
|
ITALIAN = 12,
|
|
_COUNT
|
|
};
|
|
|
|
// Language display names (defined in I18nStrings.cpp)
|
|
extern const char* const LANGUAGE_NAMES[];
|
|
|
|
// Character sets for each language (defined in I18nStrings.cpp)
|
|
extern const char* const CHARACTER_SETS[];
|
|
|
|
// String IDs
|
|
enum class StrId : uint16_t {
|
|
STR_CROSSPOINT,
|
|
STR_BOOTING,
|
|
STR_SLEEPING,
|
|
STR_ENTERING_SLEEP,
|
|
STR_BROWSE_FILES,
|
|
STR_FILE_TRANSFER,
|
|
STR_SETTINGS_TITLE,
|
|
STR_CALIBRE_LIBRARY,
|
|
STR_CONTINUE_READING,
|
|
STR_NO_OPEN_BOOK,
|
|
STR_START_READING,
|
|
STR_BOOKS,
|
|
STR_NO_BOOKS_FOUND,
|
|
STR_SELECT_CHAPTER,
|
|
STR_NO_CHAPTERS,
|
|
STR_END_OF_BOOK,
|
|
STR_EMPTY_CHAPTER,
|
|
STR_INDEXING,
|
|
STR_MEMORY_ERROR,
|
|
STR_PAGE_LOAD_ERROR,
|
|
STR_EMPTY_FILE,
|
|
STR_OUT_OF_BOUNDS,
|
|
STR_LOADING,
|
|
STR_LOADING_POPUP,
|
|
STR_LOAD_XTC_FAILED,
|
|
STR_LOAD_TXT_FAILED,
|
|
STR_LOAD_EPUB_FAILED,
|
|
STR_SD_CARD_ERROR,
|
|
STR_WIFI_NETWORKS,
|
|
STR_NO_NETWORKS,
|
|
STR_NETWORKS_FOUND,
|
|
STR_SCANNING,
|
|
STR_CONNECTING,
|
|
STR_CONNECTED,
|
|
STR_CONNECTION_FAILED,
|
|
STR_CONNECTION_TIMEOUT,
|
|
STR_FORGET_NETWORK,
|
|
STR_SAVE_PASSWORD,
|
|
STR_REMOVE_PASSWORD,
|
|
STR_PRESS_OK_SCAN,
|
|
STR_PRESS_ANY_CONTINUE,
|
|
STR_SELECT_HINT,
|
|
STR_HOW_CONNECT,
|
|
STR_JOIN_NETWORK,
|
|
STR_CREATE_HOTSPOT,
|
|
STR_JOIN_DESC,
|
|
STR_HOTSPOT_DESC,
|
|
STR_STARTING_HOTSPOT,
|
|
STR_HOTSPOT_MODE,
|
|
STR_CONNECT_WIFI_HINT,
|
|
STR_OPEN_URL_HINT,
|
|
STR_OR_HTTP_PREFIX,
|
|
STR_SCAN_QR_HINT,
|
|
STR_CALIBRE_WIRELESS,
|
|
STR_CALIBRE_WEB_URL,
|
|
STR_CONNECT_WIRELESS,
|
|
STR_NETWORK_LEGEND,
|
|
STR_MAC_ADDRESS,
|
|
STR_CHECKING_WIFI,
|
|
STR_ENTER_WIFI_PASSWORD,
|
|
STR_ENTER_TEXT,
|
|
STR_TO_PREFIX,
|
|
STR_CALIBRE_DISCOVERING,
|
|
STR_CALIBRE_CONNECTING_TO,
|
|
STR_CALIBRE_CONNECTED_TO,
|
|
STR_CALIBRE_WAITING_COMMANDS,
|
|
STR_CONNECTION_FAILED_RETRYING,
|
|
STR_CALIBRE_DISCONNECTED,
|
|
STR_CALIBRE_WAITING_TRANSFER,
|
|
STR_CALIBRE_TRANSFER_HINT,
|
|
STR_CALIBRE_RECEIVING,
|
|
STR_CALIBRE_RECEIVED,
|
|
STR_CALIBRE_WAITING_MORE,
|
|
STR_CALIBRE_FAILED_CREATE_FILE,
|
|
STR_CALIBRE_PASSWORD_REQUIRED,
|
|
STR_CALIBRE_TRANSFER_INTERRUPTED,
|
|
STR_CALIBRE_INSTRUCTION_1,
|
|
STR_CALIBRE_INSTRUCTION_2,
|
|
STR_CALIBRE_INSTRUCTION_3,
|
|
STR_CALIBRE_INSTRUCTION_4,
|
|
STR_CAT_DISPLAY,
|
|
STR_CAT_READER,
|
|
STR_CAT_CONTROLS,
|
|
STR_CAT_SYSTEM,
|
|
STR_SLEEP_SCREEN,
|
|
STR_SLEEP_COVER_MODE,
|
|
STR_STATUS_BAR,
|
|
STR_HIDE_BATTERY,
|
|
STR_EXTRA_SPACING,
|
|
STR_TEXT_AA,
|
|
STR_SHORT_PWR_BTN,
|
|
STR_ORIENTATION,
|
|
STR_FRONT_BTN_LAYOUT,
|
|
STR_SIDE_BTN_LAYOUT,
|
|
STR_LONG_PRESS_SKIP,
|
|
STR_FONT_FAMILY,
|
|
STR_EXT_READER_FONT,
|
|
STR_EXT_CHINESE_FONT,
|
|
STR_EXT_UI_FONT,
|
|
STR_FONT_SIZE,
|
|
STR_LINE_SPACING,
|
|
STR_ASCII_LETTER_SPACING,
|
|
STR_ASCII_DIGIT_SPACING,
|
|
STR_CJK_SPACING,
|
|
STR_COLOR_MODE,
|
|
STR_SCREEN_MARGIN,
|
|
STR_PARA_ALIGNMENT,
|
|
STR_HYPHENATION,
|
|
STR_TIME_TO_SLEEP,
|
|
STR_REFRESH_FREQ,
|
|
STR_CALIBRE_SETTINGS,
|
|
STR_KOREADER_SYNC,
|
|
STR_CHECK_UPDATES,
|
|
STR_LANGUAGE,
|
|
STR_SELECT_WALLPAPER,
|
|
STR_CLEAR_READING_CACHE,
|
|
STR_CALIBRE,
|
|
STR_USERNAME,
|
|
STR_PASSWORD,
|
|
STR_SYNC_SERVER_URL,
|
|
STR_DOCUMENT_MATCHING,
|
|
STR_AUTHENTICATE,
|
|
STR_KOREADER_USERNAME,
|
|
STR_KOREADER_PASSWORD,
|
|
STR_FILENAME,
|
|
STR_BINARY,
|
|
STR_SET_CREDENTIALS_FIRST,
|
|
STR_WIFI_CONN_FAILED,
|
|
STR_AUTHENTICATING,
|
|
STR_AUTH_SUCCESS,
|
|
STR_KOREADER_AUTH,
|
|
STR_SYNC_READY,
|
|
STR_AUTH_FAILED,
|
|
STR_DONE,
|
|
STR_CLEAR_CACHE_WARNING_1,
|
|
STR_CLEAR_CACHE_WARNING_2,
|
|
STR_CLEAR_CACHE_WARNING_3,
|
|
STR_CLEAR_CACHE_WARNING_4,
|
|
STR_CLEARING_CACHE,
|
|
STR_CACHE_CLEARED,
|
|
STR_ITEMS_REMOVED,
|
|
STR_FAILED_LOWER,
|
|
STR_CLEAR_CACHE_FAILED,
|
|
STR_CHECK_SERIAL_OUTPUT,
|
|
STR_DARK,
|
|
STR_LIGHT,
|
|
STR_CUSTOM,
|
|
STR_COVER,
|
|
STR_NONE_OPT,
|
|
STR_FIT,
|
|
STR_CROP,
|
|
STR_NO_PROGRESS,
|
|
STR_FULL_OPT,
|
|
STR_NEVER,
|
|
STR_IN_READER,
|
|
STR_ALWAYS,
|
|
STR_IGNORE,
|
|
STR_SLEEP,
|
|
STR_PAGE_TURN,
|
|
STR_PORTRAIT,
|
|
STR_LANDSCAPE_CW,
|
|
STR_INVERTED,
|
|
STR_LANDSCAPE_CCW,
|
|
STR_FRONT_LAYOUT_BCLR,
|
|
STR_FRONT_LAYOUT_LRBC,
|
|
STR_FRONT_LAYOUT_LBCR,
|
|
STR_PREV_NEXT,
|
|
STR_NEXT_PREV,
|
|
STR_BOOKERLY,
|
|
STR_NOTO_SANS,
|
|
STR_OPEN_DYSLEXIC,
|
|
STR_SMALL,
|
|
STR_MEDIUM,
|
|
STR_LARGE,
|
|
STR_X_LARGE,
|
|
STR_TIGHT,
|
|
STR_NORMAL,
|
|
STR_WIDE,
|
|
STR_JUSTIFY,
|
|
STR_ALIGN_LEFT,
|
|
STR_CENTER,
|
|
STR_ALIGN_RIGHT,
|
|
STR_MIN_1,
|
|
STR_MIN_5,
|
|
STR_MIN_10,
|
|
STR_MIN_15,
|
|
STR_MIN_30,
|
|
STR_PAGES_1,
|
|
STR_PAGES_5,
|
|
STR_PAGES_10,
|
|
STR_PAGES_15,
|
|
STR_PAGES_30,
|
|
STR_UPDATE,
|
|
STR_CHECKING_UPDATE,
|
|
STR_NEW_UPDATE,
|
|
STR_CURRENT_VERSION,
|
|
STR_NEW_VERSION,
|
|
STR_UPDATING,
|
|
STR_NO_UPDATE,
|
|
STR_UPDATE_FAILED,
|
|
STR_UPDATE_COMPLETE,
|
|
STR_POWER_ON_HINT,
|
|
STR_EXTERNAL_FONT,
|
|
STR_BUILTIN_DISABLED,
|
|
STR_NO_ENTRIES,
|
|
STR_DOWNLOADING,
|
|
STR_DOWNLOAD_FAILED,
|
|
STR_ERROR_MSG,
|
|
STR_UNNAMED,
|
|
STR_NO_SERVER_URL,
|
|
STR_FETCH_FEED_FAILED,
|
|
STR_PARSE_FEED_FAILED,
|
|
STR_NETWORK_PREFIX,
|
|
STR_IP_ADDRESS_PREFIX,
|
|
STR_SCAN_QR_WIFI_HINT,
|
|
STR_ERROR_GENERAL_FAILURE,
|
|
STR_ERROR_NETWORK_NOT_FOUND,
|
|
STR_ERROR_CONNECTION_TIMEOUT,
|
|
STR_SD_CARD,
|
|
STR_BACK,
|
|
STR_EXIT,
|
|
STR_HOME,
|
|
STR_SAVE,
|
|
STR_SELECT,
|
|
STR_TOGGLE,
|
|
STR_CONFIRM,
|
|
STR_CANCEL,
|
|
STR_CONNECT,
|
|
STR_OPEN,
|
|
STR_DOWNLOAD,
|
|
STR_RETRY,
|
|
STR_YES,
|
|
STR_NO,
|
|
STR_STATE_ON,
|
|
STR_STATE_OFF,
|
|
STR_SET,
|
|
STR_NOT_SET,
|
|
STR_DIR_LEFT,
|
|
STR_DIR_RIGHT,
|
|
STR_DIR_UP,
|
|
STR_DIR_DOWN,
|
|
STR_CAPS_ON,
|
|
STR_CAPS_OFF,
|
|
STR_OK_BUTTON,
|
|
STR_ON_MARKER,
|
|
STR_SLEEP_COVER_FILTER,
|
|
STR_FILTER_CONTRAST,
|
|
STR_STATUS_BAR_FULL_PERCENT,
|
|
STR_STATUS_BAR_FULL_BOOK,
|
|
STR_STATUS_BAR_BOOK_ONLY,
|
|
STR_STATUS_BAR_FULL_CHAPTER,
|
|
STR_UI_THEME,
|
|
STR_THEME_CLASSIC,
|
|
STR_THEME_LYRA,
|
|
STR_THEME_LYRA_EXTENDED,
|
|
STR_SUNLIGHT_FADING_FIX,
|
|
STR_REMAP_FRONT_BUTTONS,
|
|
STR_OPDS_BROWSER,
|
|
STR_COVER_CUSTOM,
|
|
STR_RECENTS,
|
|
STR_MENU_RECENT_BOOKS,
|
|
STR_NO_RECENT_BOOKS,
|
|
STR_CALIBRE_DESC,
|
|
STR_FORGET_AND_REMOVE,
|
|
STR_FORGET_BUTTON,
|
|
STR_CALIBRE_STARTING,
|
|
STR_CALIBRE_SETUP,
|
|
STR_CALIBRE_STATUS,
|
|
STR_CLEAR_BUTTON,
|
|
STR_DEFAULT_VALUE,
|
|
STR_REMAP_PROMPT,
|
|
STR_UNASSIGNED,
|
|
STR_ALREADY_ASSIGNED,
|
|
STR_REMAP_RESET_HINT,
|
|
STR_REMAP_CANCEL_HINT,
|
|
STR_HW_BACK_LABEL,
|
|
STR_HW_CONFIRM_LABEL,
|
|
STR_HW_LEFT_LABEL,
|
|
STR_HW_RIGHT_LABEL,
|
|
STR_GO_TO_PERCENT,
|
|
STR_GO_HOME_BUTTON,
|
|
STR_SYNC_PROGRESS,
|
|
STR_DELETE_CACHE,
|
|
STR_CHAPTER_PREFIX,
|
|
STR_PAGES_SEPARATOR,
|
|
STR_BOOK_PREFIX,
|
|
STR_KBD_SHIFT,
|
|
STR_KBD_SHIFT_CAPS,
|
|
STR_KBD_LOCK,
|
|
STR_CALIBRE_URL_HINT,
|
|
STR_PERCENT_STEP_HINT,
|
|
STR_SYNCING_TIME,
|
|
STR_CALC_HASH,
|
|
STR_HASH_FAILED,
|
|
STR_FETCH_PROGRESS,
|
|
STR_UPLOAD_PROGRESS,
|
|
STR_NO_CREDENTIALS_MSG,
|
|
STR_KOREADER_SETUP_HINT,
|
|
STR_PROGRESS_FOUND,
|
|
STR_REMOTE_LABEL,
|
|
STR_LOCAL_LABEL,
|
|
STR_PAGE_OVERALL_FORMAT,
|
|
STR_PAGE_TOTAL_OVERALL_FORMAT,
|
|
STR_DEVICE_FROM_FORMAT,
|
|
STR_APPLY_REMOTE,
|
|
STR_UPLOAD_LOCAL,
|
|
STR_NO_REMOTE_MSG,
|
|
STR_UPLOAD_PROMPT,
|
|
STR_UPLOAD_SUCCESS,
|
|
STR_SYNC_FAILED_MSG,
|
|
STR_SECTION_PREFIX,
|
|
STR_UPLOAD,
|
|
STR_BOOK_S_STYLE,
|
|
STR_EMBEDDED_STYLE,
|
|
STR_OPDS_SERVER_URL,
|
|
STR_SCREENSHOT_BUTTON,
|
|
// Sentinel - must be last
|
|
_COUNT
|
|
};
|
|
|
|
// Helper function to get string array for a language
|
|
inline const char* const* getStringArray(Language lang) {
|
|
switch (lang) {
|
|
case Language::ENGLISH:
|
|
return i18n_strings::STRINGS_EN;
|
|
case Language::SPANISH:
|
|
return i18n_strings::STRINGS_ES;
|
|
case Language::FRENCH:
|
|
return i18n_strings::STRINGS_FR;
|
|
case Language::GERMAN:
|
|
return i18n_strings::STRINGS_DE;
|
|
case Language::CZECH:
|
|
return i18n_strings::STRINGS_CZ;
|
|
case Language::PORTUGUESE:
|
|
return i18n_strings::STRINGS_PO;
|
|
case Language::RUSSIAN:
|
|
return i18n_strings::STRINGS_RU;
|
|
case Language::SWEDISH:
|
|
return i18n_strings::STRINGS_SV;
|
|
case Language::ROMANIAN:
|
|
return i18n_strings::STRINGS_RO;
|
|
case Language::CATALAN:
|
|
return i18n_strings::STRINGS_CA;
|
|
case Language::UKRAINIAN:
|
|
return i18n_strings::STRINGS_UK;
|
|
case Language::BELARUSIAN:
|
|
return i18n_strings::STRINGS_BE;
|
|
case Language::ITALIAN:
|
|
return i18n_strings::STRINGS_IT;
|
|
default:
|
|
return i18n_strings::STRINGS_EN;
|
|
}
|
|
}
|
|
|
|
// Helper function to get language count
|
|
constexpr uint8_t getLanguageCount() { return static_cast<uint8_t>(Language::_COUNT); }
|