Sarah Jamie Lewis
763bcb452a
continuous-integration/drone/pr Build is passing
Details
|
||
---|---|---|
android | ||
assets | ||
integration_test | ||
ios | ||
lib | ||
linux | ||
test | ||
test_driver | ||
windows | ||
.drone.yml | ||
.gitignore | ||
.metadata | ||
ARCH.md | ||
README.md | ||
SPEC.md | ||
l10n.yaml | ||
pubspec.lock | ||
pubspec.yaml | ||
regenerate_opaque_theme.sh |
README.md
flwtch
A new Flutter application.
Getting Started
click the play button in android studio
Linux
- libCwtch-go: the result of
make linux
,libCwtch.so
should be in the link path tor
should be in the PATH
Windows
- libCwtch-go: the result of
make windows
,libCwtch.dll
should be placed in the source root - tor is bundled in
windors/Tor
l10n
Adding a new string
Strings are managed directly from our Lokalise(url?) project. Keys should be valid Dart variable names in lowerCamelCase. After adding a new key and providing/obtaining translations for it, follow the next step to update your local copy.
Updating translations
Only Open Privacy staff members can update translations automatically:
flutter pub run flutter_lokalise download -v --api-token "<X>" --project-id "<Y>"
This will download a bundle of translations from Lokalise and convert it to resource files in lib/l10n/intl_*.arb
.
The next time Flwtch is built, Flutter will notice the changes and update app_localizations.dart
accordingly (thanks to generate:true
in pubspec.yaml
).
Using a string
Any widget underneath the main MaterialApp should be able to:
import 'package:flutter_gen/gen_l10n/app_localizations.dart';
and then use:
Text(AppLocalizations.of(context).stringIdentifer),
Configuration
API tokens are only available to Open Privacy staff at this time, who will perform the translation updates for you as part of merging your PRs.
With generate: true
in pubspec.yaml
, the Flutter build process checks l10n.yaml
for input/output filenames.