arb_generator

Creator: coderz1093

Last updated:

Add to Cart

Description:

arb generator

arb_generator #
A dart tool which generates ARB files from CSV files.
Getting Started #
A CSV file of the form



keys
description
en
de




myKey
The conventional newborn programmer greeting
Hello world!
Hallo Welt!


welcome
A welcome message
Welcome {firstName}!
Willkommen {firstName}!


numberMessages
An info message about new messages count
{count, plural, zero{You have no new messages} one{You have 1 new message} other{You have {count} new messages}}
{count, plural, zero{Du hast keine neue Nachrichten} one{Du hast eine neue Nachricht} other{Du hast {count} neue Nachrichten}}


whoseBook
A message determine whose book it is
{sex, select, male{His book} female{Her book} other{Their book}}
{sex, select, male{Sein Buch} female{Ihr Buch} other{Ihr Buch}}



is generated into the following ARB file
{
"@@locale": "en",
"myKey": "Hello world!",
"@myKey": {
"description": "The conventional newborn programmer greeting"
},
"welcome": "Welcome {firstName}!",
"@welcome": {
"description": "A welcome message"
},
"numberMessages": "{count, plural, zero{You have no new messages} one{You have 1 new message} other{You have {count} new messages}}",
"@numberMessages": {
"description": "An info message about new messages count"
},
"whoseBook": "{sex, select, male{His book} female{Her book} other{Their book}}",
"@whoseBook": {
"description": "A message determine whose book it is"
}
}
copied to clipboard
This ARB file can then be converted into localization delegates using intl or intl_utils.
Add dependency #
Firstly, add the package as a dev dependency:
dev_dependencies:
arb_generator:
copied to clipboard
Define Settings #
Next define arb_generator package settings in pubspec.yaml. Note that input_filepath is the only required parameter.
arb_generator:
input_filepath: "assets_dev/test.csv"
output_directory: "lib/l10n"
filename_prepend: "intl_"
csv_settings:
delimiter: ";"
description_index: 1
base_index: 2
copied to clipboard



Setting
Description




input_filepath
Required. A path to the input CSV file.


output_directory
A directory to generate the output ARB file(s). Defaults to lib/l10n


filename_prepend
Text to prepend to filename of generated files. Defaults to empty string.


csv_settings: delimiter
A delimiter to separate columns in the input CSV file. Defaults to ,.


csv_settings: description_index
The description column index. Defaults to null.


csv_settings: base_index
The column index of the base language in the input CSV file. Defaults to 1.



Run package #
Ensure that your current working directory is the project root. Depending on your project, run one of the following commands:
dart run arb_generator
copied to clipboard
or
flutter pub run arb_generator
copied to clipboard
ARB files are then generated in output_dir.
Collaboration #
Spotted any issues? Please open an issue on GitHub! Would like to contribute a new language or feature? Fork the repo and submit a PR!

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Files:

Customer Reviews

There are no reviews.