🚀 Big News: Socket Acquires Coana to Bring Reachability Analysis to Every Appsec Team.Learn more

internationalization

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

internationalization

i18n

0.1.2
latest
Version published
Weekly downloads
14
100%
Maintainers
1
Weekly downloads
 
Created

internationalization

NPM Version Build Status

setup

i18n = require('internationalization');

app.use(i18n.middleware({
    directory: path.join(__dirname, 'locales'),
    fallback: "en",
    cookie: "lang" // default is "lang"
}));

directory layout

files under then same directory will be merged(file name does not matter)

locales
├── en
│   ├── foo.ini
│   └── bar.ini
└── zh
    └── index.ini

usage

span= _("Hello {username}", {username: username})
span= _("Hello {1}", username)
input(placeholder=_("Password") type="password")
Hello {username} = Guten Tag {username}
Hello {1} = Guten Tag {1}
Password = Passwort

namespace

span= _("profile:Hello {username}", {username: username})
[profile]
Hello {username} = Guten Tag {username}

client side

app.use(i18n.javascript({
    directory: path.join(__dirname, 'locales'),
}));

include in html

<script src="/i18n.js"></script>
<script>
console.log(i18n.resource);
console.log(i18n.lang);
</script>

more options:

  • cookie default lang
  • path default /i18n.js
  • exportAs default i18n

angularjs intergartion

app.use(i18n.angular({
    directory: path.join(__dirname, 'locales'),
    module: 'i18n',
    service: 'i18n',
    filter: 'translate'
}));

include in html

<script src="/path/to/angularjs.js"></script>
<script src="/i18n.js"></script>

using filter

<p>{{'delete warning'| translate:resource.name}}</p>
<button>{{'action:delete' | translate}}</button>

using service

app.directive("", function(i18n)->
    return {
        link: function(){
            console.log(i18n.translate("resource key", {name: "foo"}));
        }
    };

generate/update language files(TBD)

directory: 'locales'
views: 'views/**.jade'

grunt i18n will scan the view direcotry for _() and __()

$ grunt i18n de

Keywords

FAQs

Package last updated on 22 Jun 2016

Did you know?

Socket

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