@cbourgois/simonsays
v1.0.7
Published
Find translations used in AngularJS project
Downloads
17
Maintainers
Readme
SimonSays
"Jacques a dit" Like.
simonsays
help you: to find translations key used in your project and:
- check if translations are availables in your project sources
- search translations in another project
- rewrite complete translations files (and support prefixing translations key)
To do it, simonsays
parse your javascript and html files to detect angular-translate
usages.
Simonsays detect :
$translate
and$translate.instant
calls in your javascript files,translate
directives in your HTML files,translate
filter usages in your HTML files.
We use @babel/parser
to parse your javascript code in AST and we have ported $interpolate
and $ParseProvider
from AngularJS (code available here).
Simonsays
supports translations defined in JSON or XML files.
Installation
With yarn
:
yarn add @cbourgois/simonsays
or
With npm
:
npm install @cbourgois/simonsays
Usage
CLI Usage
With npx
:
npx @cbourgois/simonsays --help
Check
Compatibles options: --locale
, --module
, --output
.
To check used translations:
simonsays check <sourcePath>
Search
simonsays search <sourcePath> <projectPath>
To search used translations (only used translations will be reported):
simonsays search <sourcePath> <projectPath>
To search used translations and retrieve all (already present translations + used translations):
simonsays search <sourcePath> <projectPath> --all
To overwrite existing translations by the project translations:
simonsays search <sourcePath> <projectPath> --merge
Compatibles options: --all
, --merge
, --locale
, --module
, --output
.
Rewrite
To rewrite JSON translations file:
simonsays rewrite <sourceDir> <projectPath>
To rewrite JSON translations file and prefix translations (AngularJS code and html will be overwritten):
simonsays rewrite <sourceDir> <projectPath> --prefix=ng_
Compatibles options: --all
, --merge
, --locale
, --module
, --output
, --prefix
.
CLI Options
AngularJS module
By default, the script parse all the source path and will generate one, and only one translation file.
If you want, you can specify the --module
option to parse/generate translations for each AngularJS module contained in the source path.
For example:
simonsays check <sourcePath> --module
Locale
By default, simonsays
target the fr_FR
locale, but you can change it by specifying --locale
option.
For example:
simonsays check <sourcePath> --locale=en_GB
Output
You can specify an output format from the following:
summary
(default) : output a table with the resultstext
: output a table with num of resultsjson
: output a jsonsilent
: no output
For example:
simonsays search <sourcePath> <projectPath> --output=text
About
This project embed some portions of AngularJS source code (see ./src/angularjs/**
).