jsx

jsxgettext

Extract gettext calls from JavaScript, EJS, and other template formats.

Showing:

Popularity

Downloads/wk

5.9K

GitHub Stars

105

Maintenance

Last Commit

4yrs ago

Contributors

29

Package

Dependencies

7

Size (min+gzip)

201.4KB

License

MPL-2.0

Type Definitions

Tree-Shakeable

No?

Categories

Readme

jsxgettext Build Status NPM version

A node module with a CLI that extracts gettext strings from JavaScript, EJS, Jade, Jinja, Swig and Handlebars files. Uses a real parser, acorn, for JavaScript files and recognizes the following uses:

gettext("Hello world!");
gettext("Hello " + 'world!');
myModule.gettext("Hello " + 'world!');
gettext.call(myObj, "Hello " + 'world!');
ngettext("Here's an apple for you", "Here are %s apples for you", 3);
ngettext("Here's an apple" + ' for you', "Here are %s apples" + ' for you', 3);
myModule.ngettext("Here's an apple" + ' for you', "Here are %s apples" + ' for you', 3);
ngettext.call(myObj, "Here's an apple" + ' for you', "Here are %s apples" + ' for you', 3);

It also extracts comments that begin with "L10n:" when they appear above or next to a gettext call:

// L10n: Don't forget the exclamation mark
gettext("Hello world!");  // L10n: Salutation to the world

"L10n:" is a default value and you can change it with -c option.

Install

npm install jsxgettext

Or from source:

git clone https://github.com/zaach/jsxgettext.git
cd jsxgettext
npm link

Use

$ jsxgettext -h


Usage: cli [options] [file ...]

Options:

  -h, --help                         output usage information
  -V, --version                      output the version number
  -o, --output <file>                write output to specified <file>
  -p, --output-dir <path>            output files will be placed in directory <path>
  -k, --keyword [keywords]           additional keywords to be looked for
  -j, --join-existing                join messages with existing file
  -L, --language [lang]              use the specified language (javascript, ejs, jinja, handlebars, jade, swig) [javascript]
  -s, --sanity                       sanity check during the extraction
  --project-id-version [version]     This is the project name and version of the generated package/catalog.
  --report-bugs-to [bug address]     An email address or URL where you can report bugs in the untranslated strings.
  -c, --add-comments [tag]           place comment blocks starting with TAG and preceding keyword lines in output file (default: "L10n:").
  --parser-options [parser options]  A json to customize acorn parser.

Rate & Review

Great Documentation0
Easy to Use0
Performant0
Highly Customizable0
Bleeding Edge0
Responsive Maintainers0
Poor Documentation0
Hard to Use0
Slow0
Buggy0
Abandoned0
Unwelcoming Community0
100
No reviews found
Be the first to rate

Alternatives

No alternatives found

Tutorials

No tutorials found
Add a tutorial