Jesway / flutter_translate

Flutter Translate is a fully featured localization / internationalization (i18n) library for Flutter.
MIT License
401 stars 118 forks source link

Skips added locales #26

Closed Dinver closed 4 years ago

Dinver commented 4 years ago
  1. Download flutter_translate repositories;
  2. Add example_static_keys VS Code;
  3. flutter pub get;
  4. Add two file \assets\i18n ru.json, de.json;
  5. flutter pub run build_runner clean (keys.g.dart is removed);
  6. flutter pub run build_runner build --delete-conflicting-outputs (keys.g.dart is created);
  7. keys.g.dart (skips: ru, de locales): `// GENERATED CODE - DO NOT MODIFY BY HAND

part of 'keys.dart';

// ** // Generator: FlutterTranslateGen // **

class Keys { static const String App_Bar_Title = 'app_bar.title';

static const String Button_Cancel = 'button.cancel';

static const String Button_Change_Language = 'button.change_language';

static const String Language_Name_En = 'language.name.en';

static const String Language_Name_Es = 'language.name.es';

static const String Language_Name_Fa = 'language.name.fa';

static const String Language_Selected_Message = 'language.selected_message';

static const String Language_Selection_Message = 'language.selection.message';

static const String Language_Selection_Title = 'language.selection.title';

static const String Plural_Demo = 'plural.demo'; }`

de.json: { "app_bar": { "title": "Willkommen auf der Homepage" }, "button": { "cancel": "Abbrechen", "change_language": "Sprache ändern" }, "language": { "name": { "en": "English", "es": "Spanisch", "fa": "Persisch" }, "selected_message": "Derzeit ausgewählte Sprache ist {language}", "selection": { "message": "Bitte wählen Sie eine Sprache aus der Liste", "title": "Sprachauswahl" } }, "plural": { "demo": { "0": "Bitte drücken Sie die 'Plus'-Taste.", "1": "Sie haben den Knopf einmal gedrückt.", "else": "Sie haben den Knopf {{value}} mal gedrückt." } } } ru.json: { "app_bar": { "title": "Добро пожаловать на домашнюю страницу" }, "button": { "cancel": "отмена", "change_language": "Изменить язык" }, "language": { "name": { "en": "Английский", "es": "Испанский", "fa": "Персидский" }, "selected_message": "Текущий выбранный язык {language}", "selection": { "message": "Пожалуйста, выберите язык из списка", "title": "Выбор языка" } }, "plural": { "demo": { "0": "Пожалуйста, начните нажимать кнопку «плюс»", "1": "Вы нажали кнопку один раз.", "else": "Вы нажали кнопку {{value}} раз." } } }

bratan commented 4 years ago

@Dinver

It looks like the keys are generated correctly.

What seems to be the problem more exactly?

https://github.com/bratan/flutter_translate/wiki/3.-Generating-statically-typed-localization-keys

Dinver commented 4 years ago

After adding new locales, ignored selection of added languages. Was chosen default en_US. After restart IDE, all worked.