Skip to content

Commit

Permalink
Merge pull request #243 from MayanKoyote/develop-RT
Browse files Browse the repository at this point in the history
updated Russian localization
  • Loading branch information
solosky authored Apr 7, 2024
2 parents 47d6008 + e409cd4 commit db4adcb
Show file tree
Hide file tree
Showing 7 changed files with 2,292 additions and 2,186 deletions.
1 change: 1 addition & 0 deletions fw/application/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -305,6 +305,7 @@ SRC_FILES += \
$(PROJ_DIR)/i18n/nl_NL.c \
$(PROJ_DIR)/i18n/pt_BR.c \
$(PROJ_DIR)/i18n/pt_PT.c \
$(PROJ_DIR)/i18n/ru_RU.c \
$(PROJ_DIR)/i18n/language.c \
$(PROJ_DIR)/hal/hal_nfc_t2t.c \
$(PROJ_DIR)/amiidb/db_amiibo.c \
Expand Down
9 changes: 6 additions & 3 deletions fw/application/src/i18n/language.c
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,11 @@ typedef struct {
const LanguageData const languageData[LANGUAGE_COUNT] = {
[LANGUAGE_ZH_HANS] = {.strings = lang_zh_Hans}, [LANGUAGE_EN_US] = {.strings = lang_en_US},
[LANGUAGE_ZH_TW] = {.strings = lang_zh_TW}, [LANGUAGE_ES_ES] = {.strings = lang_es_ES},
[LANGUAGE_IT_IT] = {.strings = lang_it_IT}, [LANGUAGE_HU_HU] = {.strings = lang_hu_HU},
[LANGUAGE_DE_DE] = {.strings = lang_de_DE}, [LANGUAGE_FR_FR] = {.strings = lang_fr_FR},
[LANGUAGE_NL_NL] = {.strings = lang_nl_NL}, [LANGUAGE_PT_BR] = {.strings = lang_pt_BR},
[LANGUAGE_IT_IT] = {.strings = lang_it_IT}, [LANGUAGE_HU_HU] = {.strings = lang_hu_HU},
[LANGUAGE_DE_DE] = {.strings = lang_de_DE}, [LANGUAGE_FR_FR] = {.strings = lang_fr_FR},
[LANGUAGE_NL_NL] = {.strings = lang_nl_NL}, [LANGUAGE_PT_BR] = {.strings = lang_pt_BR},
[LANGUAGE_JA_JP] = {.strings = lang_ja_JP}, [LANGUAGE_PT_PT] = {.strings = lang_pt_PT},
[LANGUAGE_RU_RU] = {.strings = lang_ru_RU},
};

// 当前语言设置 (Current language setting)
Expand Down Expand Up @@ -55,6 +56,8 @@ const char *getLangDesc(Language lang) {
return "日本語";
} else if (lang == LANGUAGE_PT_PT) {
return "Português(Portugal)";
} else if (lang == LANGUAGE_RU_RU) {
return "Русский";
} else {
return "@@LANG@@";
}
Expand Down
2 changes: 2 additions & 0 deletions fw/application/src/i18n/language.h
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ typedef enum {
LANGUAGE_JA_JP,
LANGUAGE_PT_PT,
LANGUAGE_IT_IT,
LANGUAGE_RU_RU,
LANGUAGE_COUNT
} Language;

Expand All @@ -38,6 +39,7 @@ extern const char* lang_pt_BR[_L_COUNT];
extern const char* lang_ja_JP[_L_COUNT];
extern const char* lang_pt_PT[_L_COUNT];
extern const char* lang_it_IT[_L_COUNT];
extern const char* lang_ru_RU[_L_COUNT];

// 获取字符串的函数 (Get language string function)
const char* getLangString(L_StringID stringID);
Expand Down
170 changes: 170 additions & 0 deletions fw/application/src/i18n/ru_RU.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,170 @@
#include "string_id.h"
const char * const lang_ru_RU[_L_COUNT] = {
[_L_ON] = "Вкл",
[_L_OFF] = "Выкл",
[_L_ON_F] = "[Вкл]",
[_L_OFF_F] = "[Выкл]",
[_L_BACK] = "[Назад]",
[_L_ERR] = "Ошибка",
[_L_ERR_CODE] = "Код ошибки",
[_L_APP_AMIIBO] = "Эмулятор Amiibo",
[_L_APP_AMIIBOLINK] = "AmiiboLink",
[_L_APP_BLE] = "Передача файлов",
[_L_APP_BLE_TITLE] = "по Bluetooth",
[_L_APP_PLAYER] = "Видеоплеер",
[_L_APP_SET] = "Настройки",
[_L_APP_SET_VERSION] = "Версия",
[_L_APP_SET_STORAGE_USED] = "Занято",
[_L_APP_SET_STORAGE] = "Накопитель",
[_L_APP_SET_OLED_CONTRAST] = "Контрастность",
[_L_APP_SET_OLED_CONTRAST_TITLE] = "Контраст OLED",
[_L_APP_SET_LCD_BACKLIGHT] = "Подсветка",
[_L_APP_SET_LCD_BACKLIGHT_TITLE] = "Яркость подсветки",
[_L_APP_SET_ANIM] = "Анимация меню",
[_L_APP_SET_LIPO_BAT] = "Батарея LiPO",
[_L_APP_SET_SHOW_MEM_USAGE] = "Статус памяти",
[_L_APP_SET_HIBERNATE] = "Гибернация",
[_L_APP_SET_SLEEP_TIMEOUT] = "Таймаут сна",
[_L_APP_SET_LANGUAGE] = "Язык",
[_L_APP_SET_DFU] = "Обновление ПО",
[_L_APP_SET_REBOOT] = "Перезагрузка",
[_L_APP_SET_RESET_DEFAULT] = "Сброс настроек",
[_L_APP_SET_RESET_DEFAULT_SUCCESS] = "Сброс выполнен",
[_L_APP_SET_RESET_DEFAULT_CONFIRM] = "Выполнить?",
[_L_15S] = "15 секунд",
[_L_30S] = "30 секунд",
[_L_45S] = "45 секунд",
[_L_1MIN] = "1 минута",
[_L_2MIN] = "2 минуты",
[_L_3MIN] = "3 минуты",
[_L_AMIIBO_KEY_UNLOADED] = "Отсутствует файл ключа",
[_L_UPLOAD_KEY_RETAIL_BIN] = "Поместите key_retail.bin\n в корень накопителя",
[_L_KNOW] = "[Понятно]",
[_L_RANDOM_GENERATION] = "Сгенерировать UUID",
[_L_AUTO_RANDOM_GENERATION] = "Автогенерация",
[_L_SHOW_QRCODE] = "QR-код",
[_L_DELETE_TAG] = "Удалить тег",
[_L_DELETE_TAG_CONFIRM] = "Удалить %s?",
[_L_BACK_TO_DETAILS] = "[Назад к деталям]",
[_L_BACK_TO_FILE_LIST] = "[Назад к списку]",
[_L_BACK_TO_MAIN_MENU] = "[В главное меню]",
[_L_FORMAT] = "Отформатировать",
[_L_FORMAT_STORAGE] = "Форматирование",
[_L_DELETE_ALL_DATA] = "Это удалит все данные.\nВыполнить?",
[_L_DELETING_MESSAGE] = "Форматирование...",
[_L_MESSAGE] = "Сообщение",
[_L_CONFIRM] = "Да",
[_L_CANCEL] = "Отмена",
[_L_BACK_TO_LIST] = "[Назад к списку]",
[_L_NOT_MOUNTED] = "==[Не подключён]==",
[_L_MOUNTED_LFS] = "==Подключён[LFS]==",
[_L_MOUNTED_FFS] = "==Подключён[FFS]==",
[_L_TOTAL_SPACE] = "Ёмкость",
[_L_AVAILABLE_SPACE] = "Свободно",
[_L_NOT_AMIIBO_FILE] = "Этот файл не Amiibo",
[_L_READ_FILE_FAILED] = "Ошибка чтения файла",
[_L_INPUT_FOLDER_NAME] = "Задайте имя папки:",
[_L_INPUT_AMIIBO_NAME] = "Задайте имя Amiibo:",
[_L_DELETE_FILE] = "Удалить %s?",
[_L_DELETE] = "Удалить...",
[_L_INPUT_NEW_NAME] = "Задайте новое имя:",
[_L_INVALID_INPUT] = "Недопустимый ввод",
[_L_CREATE_NEW_FOLDER] = "Создать новую папку...",
[_L_CREATE_NEW_TAG] = "Создать новый тег...",
[_L_CREATE_NEW_TAG_BATCH] = "Создать группу тегов...",
[_L_INPUT_TAG_NUM] = "Задайте число тегов:",
[_L_CREATE_TOO_MANY_NUM] = "За раз можно создать\n не более %d тегов",
[_L_CREATING_TAG_BATCH] = "Создание тега",
[_L_CREATING_TAG_FAILED] = "Ошибка создания тега %s",
[_L_RENAME] = "Переименовать...",
[_L_OPEN_FOLDER_FAILED] = "Ошибка открытия папки",
[_L_RENAME_FAILED] = "Ошибка переименования",
[_L_MAIN_RETURN] = "[Назад]",
[_L_RANDOM_MODE_MANUAL] = "Ручная генерация UUID",
[_L_RANDOM_MODE_AUTO] = "Автогенерация UUID",
[_L_SEQUENCE_MODE] = "Последовательный",
[_L_READ_WRITE_MODE] = "Чтение-запись",
[_L_AMIIBOLINK_V1] = "V1",
[_L_AMIIBOLINK_V2] = "V2",
[_L_AMILOOP] = "AmiLoop",
[_L_MODE] = "Режим",
[_L_AUTO_RANDOM] = "Автогенерация",
[_L_COMPATIBLE_MODE] = "Совместимость",
[_L_TAG_DETAILS] = "[Назад к деталям]",
[_L_MAIN_MENU] = "[В главное меню]",
[_L_MODE_RANDOM] = "Ручная генерация",
[_L_MODE_CYCLE] = "Последовательный",
[_L_MODE_NTAG] = "Чтение-запись",
[_L_MODE_RANDOM_AUTO_GEN] = "Автогенерация",
[_L_BLANK_TAG] = "Пустой тег",
[_L_APP_AMIIDB] = "База данных Amiibo",
[_L_APP_AMMIDB_BROWSER] = "Обозреватель...",
[_L_APP_AMIIDB_SEARCH] = "Поиск...",
[_L_APP_AMIIDB_MY_FAVORITES] = "Моё избранное...",
[_L_APP_AMIIDB_MY_TAGS] = "Мои Amiibo...",
[_L_APP_AMIIDB_SETTINGS] = "Настройки...",
[_L_APP_AMIIDB_EXIT] = "[Выход]",
[_L_APP_AMIIDB_BACK] = "[Назад]",
[_L_APP_AMIIDB_SETTINGS_AMIIBO_KEY] = "Ключ",
[_L_APP_AMIIDB_SETTINGS_AMIIBO_KEY_LOADED] = "Загружен",
[_L_APP_AMIIDB_SETTINGS_AMIIBO_KEY_NOT_LOADED] = "Отсутствует",
[_L_APP_AMIIDB_SETTINGS_SLOT_NUM] = "Число ячеек",
[_L_APP_AMIIDB_DETAIL_FAVORITE] = "В избранное...",
[_L_APP_AMIIDB_DETAIL_SAVE_AS] = "Сохранить как...",
[_L_APP_AMIIDB_DETAIL_BACK_DETAIL] = "[Назад к деталям]",
[_L_APP_AMIIDB_DETAIL_BACK_LIST] = "[Назад к списку]",
[_L_APP_AMIIDB_SEARCH_HEAD] = "Поиск:",
[_L_APP_AMIIDB_MORE] = "[Дальше...]",
[_L_APP_AMIIDB_EMPTY_TAG] = "<пустой тег>",
[_L_APP_AMIIDB_SLOT_DELETE] = "Сброс...",
[_L_APP_AMIIDB_CONFIRM] = "Да",
[_L_APP_AMIIDB_CANCEL] = "Отмена",
[_L_APP_AMIIDB_TIPS] = "Внимание",
[_L_APP_AMIIDB_NEW] = "Новая папка...",
[_L_APP_AMIIDB_EMPTY] = "Очистить...",
[_L_APP_AMIIDB_DELETE] = "Удалить...",
[_L_APP_AMIIDB_FAV_NEW_HEAD] = "Новая папка избранного:",
[_L_APP_AMIIDB_FAV_EMPTY_MSG] = "Выполнить удаление\n избранного?",
[_L_APP_AMIIDB_FAV_DELETE_MSG] = "Выполнить удаление?",
[_L_APP_AMIIDB_FAV_SELECT_FOLDER] = "Выбрать папку избранного...",
[_L_APP_AMIIDB_FAV_SUCCESS] = "Добавлено",
[_L_APP_AMIIDB_FAV_FAILED] = "Ошибка добавления",
[_L_APP_AMIIDB_SLOT_SAVE_SUCCESS] = "Сохранено",
[_L_APP_AMIIDB_SLOT_SAVE_FAILED] = "Ошибка сохранения",
[_L_APP_CHAMELEON] = "Эмулятор карт",
[_L_APP_CHAMELEON_TAG_MF1_WRITE_NORMAL] = "Разрешена",
[_L_APP_CHAMELEON_TAG_MF1_WRITE_DENIED] = "Запрещена",
[_L_APP_CHAMELEON_TAG_MF1_WRITE_DECEIVE] = "Игнорируется",
[_L_APP_CHAMELEON_TAG_MF1_WRITE_SHADOW] = "В кэш",
[_L_APP_CHAMELEON_INITIALIZING] = "Инициализация...",
[_L_APP_CHAMELEON_CARD_SLOT] = "Ячейка",
[_L_APP_CHAMELEON_CARD_NICK] = "Название",
[_L_APP_CHAMELEON_CARD_ID] = "ID",
[_L_APP_CHAMELEON_CARD_TYPE] = "Тип",
[_L_APP_CHAMELEON_CARD_DATA] = "Данные...",
[_L_APP_CHAMELEON_CARD_ADVANCED] = "Дополнительно...",
[_L_APP_CHAMELEON_CARD_SLOT_SETTINGS] = "Управление ячейками...",
[_L_APP_CHAMELEON_CARD_SLOT_NUM] = "Число ячеек...",
[_L_APP_CHAMELEON_CARD_SET_NICK_SUCCESS] = "Название задано",
[_L_APP_CHAMELEON_CARD_SET_NICK_FAILED] = "Недопустимое название",
[_L_APP_CHAMELEON_CARD_INPUT_NICK] = "Задайте название карты:",
[_L_APP_CHAMELEON_CARD_DATA_LOAD] = "Загрузка...",
[_L_APP_CHAMELEON_CARD_DATA_SAVE] = "Сохранение...",
[_L_APP_CHAMELEON_CARD_DATA_FACTORY] = "Сброс...",
[_L_APP_CHAMELEON_CARD_DATA_FACTORY_SUCCESS] = "Данные сброшены",
[_L_APP_CHAMELEON_CARD_DATA_LOAD_NOT_FOUND] = "Файл не обнаружен",
[_L_APP_CHAMELEON_CARD_DATA_LOAD_SIZE_NOT_MATCH] = "Файл несоразмерен",
[_L_APP_CHAMELEON_CARD_DATA_LOAD_FAILED] = "Ошибка загрузки файла",
[_L_APP_CHAMELEON_CARD_DATA_LOAD_SUCCESS] = "Данные загружены",
[_L_APP_CHAMELEON_CARD_DATA_SAVE_INPUT_FILE_NAME] = "Задайте имя файла:",
[_L_APP_CHAMELEON_CARD_DATA_SAVE_FAILED] = "Ошибка сохранения файла",
[_L_APP_CHAMELEON_CARD_DATA_SAVE_SUCCESS] = "Данные сохранены",
[_L_APP_CHAMELEON_CARD_ADV_CUSTOM_MODE] = "Заказной режим",
[_L_APP_CHAMELEON_CARD_GEN1A_MODE] = "Gen1A",
[_L_APP_CHAMELEON_CARD_GENERATE_UID] = "Сгенерировать UID",
[_L_APP_CHAMELEON_CARD_GENERATE_UID_SUCCESS] = "UID сгенерирован",
[_L_APP_CHAMELEON_CARD_GEN2_MODE] = "Gen2",
[_L_APP_CHAMELEON_CARD_WRITE_MODE] = "Запись",
[_L_APP_CHAMELEON_CARD_ADV_ID_EDIT_INVALID_INPUT] = "Недопустимый ввод",
[_L_APP_CHAMELEON_CARD_TYPE_FACTORY_DATA_CONFRIM] = "Тип карты изменен.\nСбросить данные карты?",
};
Loading

0 comments on commit db4adcb

Please sign in to comment.