Socket
Socket
Sign inDemoInstall

gettext-translator

Package Overview
Dependencies
0
Maintainers
1
Versions
8
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    gettext-translator

Javascript gettext translator


Version published
Weekly downloads
990
decreased by-16.17%
Maintainers
1
Install size
22.1 kB
Created
Weekly downloads
 

Readme

Source

Gettext translator

Javascript gettext translations replacement to use with gettext/gettext. Use gettext/json to generate the json data.

Installation

npm install gettext-translator

Usage

Use the Json generator gettext/json library to export the translations to json:

use Gettext\Loader\PoLoader;
use Gettext\Generator\JsonGenerator;

//Load the po file with the translations
$translations = (new PoLoader())->loadFile('locales/gl.po');

//Export to a json file
(new JsonGenerator())->generateFile('locales/gl.json');

Load the json file in your browser

import Translator from 'gettext-translator';

async function getTranslator() {
    const response = await fetch('locales/gl.json');
    const translations = await response.json();

    return new Translator(translations);
}

const t = await getTranslator();

t.gettext('hello world'); //ola mundo

Variables

You can add variables to the translations. For example:

t.gettext('hello :who', {':who': 'world'}); //ola world

There's also a basic support o sprintf (only %s and %d)

t.gettext('hello %s', 'world'); //ola world

To customize the translator formatter, just override the format method:

t.format = function (text, ...args) {
    //Your custom format here
}

Short names

Like in the php version, there are the __ functions that are alias of the long version:

//Both functions does the same

t.gettext('Foo');
t.__('Foo');

API

Long nameShort nameDescription
gettext__Returns a translation
ngettextn__Returns a translation with singular/plural variations
dngettextdn__Returns a translation with domain and singular/plural variations
npgettextnp__Returns a translation with context and singular/plural variations
pgettextp__Returns a translation with a specific context
dgettextd__Returns a translation with a specific domain
dpgettextdp__Returns a translation with a specific domain and context
dnpgettextdnp__Returns a translation with a specific domain, context and singular/plural variations

Keywords

FAQs

Last updated on 24 Nov 2019

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc