GithubHelp home page GithubHelp logo

simonsays's Introduction

SimonSays

npm version Dependencies Dev Dependencies

"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 results
  • text : output a table with num of results
  • json : output a json
  • silent : no output

For example:

simonsays search <sourcePath> <projectPath> --output=text

About

This project embed some portions of AngularJS source code (see ./src/angularjs/**).

simonsays's People

Contributors

cbourgois avatar antleblanc avatar

Stargazers

 avatar

Watchers

James Cloos avatar

simonsays's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.