The pattern of locale for intl package is (language)_(COUNTRY)
only.
However, Flutter's Locale format is
(language)_(Script)_(COUNTRY)
which triggered fallback to (language)
only. Therefore, this package
aims to handle correct language system by define country code with corresponded scripting.
The future release in major version number of this package will depend on the latest major version of Dart and Flutter SDK. It may rewrite new syntax to satisify use case which no longer compatable for older release one.
To avoid this issue, you may required to run flutter upgrade
before install it.
Install intl
and this package by using command:
flutter pub add intl intl_script_recognizer
or modify dependencies
in pubspec.yaml
directly:
# pubspec.yaml
depencencies:
intl: any
intl_script_recognizer: ^2.2.0
Then, import dependencies into your project:
import 'package:intl/intl.dart';
import 'package:intl_script_recognizer/base.dart';
If DateFormat
is required, it is highly recommended to import date format extension package:
import 'package:intl_script_recognizer/date_format.dart';
By default, IntlScriptRecognizer
will recognized "Traditional Chinese" (zh_Hant
) to "Chinese (Taiwan)" (zh_TW
) once the
instance has been created. If you preferred to uses another country or region's varient (in this case, Hong Kong), it is possible
to override assigned record by activating replaceExisted
like example.
BSD-3