0.2.1 • Published 7 years ago

marko-i18next v0.2.1

Weekly downloads
3
License
Apache-2.0
Repository
github
Last release
7 years ago

i18next Marko tag lib

This tag lib allows you to access the i18next t() function from your request object (if for example you're using i18next Express middleware) in your templates if streaming to a response using the template.render() function:

template.render({}, res);

Installing

npm install marko-i18next

Usage

Example locales file (namespace.json):

{
  "message": "Hi guys",
  "interpolatedMessage": "Hi {{name}}",
  "submit": "Submit form",
  "nameSubmit": "Submit form for {{name}}"
}

<i18n-message/> component

In a Marko template:

<p>
  <i18n-message key="namespace:message"/>
</p>

With interpolated strings:

<p>
  <i18n-message key="namespace:interpolatedMessage" name="Hammond Eggs"/>
</p>

<i18n-var/> compile time variable

You can also add the translation function to your template by including <i18n-var/> at the top of the file. This is useful for assigning i18n messages to attributes:

<i18n-var/>

<form>
  ...
  <input type="submit" value=i18n('namespace:submit')/>
</input>

With interpolated strings:

<i18n-var/>

<form>
  ...
  <input type="submit" value=i18n('namespace:nameSubmit', {name: 'George'})/>
</input>

Contributing

Do a pull request, I'll have a look!