# i18nliner-js
**Repository Path**: zhenxf_com/i18nliner-js
## Basic Information
- **Project Name**: i18nliner-js
- **Description**: canvas-lms
- **Primary Language**: JavaScript
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2023-05-14
- **Last Updated**: 2023-05-14
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# I18nliner.js
[
](http://travis-ci.org/jenseng/i18nliner-js)
I18nliner is I18n made simple.
No .js/yml translation files. Easy inline defaults. Optional keys. Easy
pluralization. Wrappers for HTML-free translations.
I18nliner extends [i18n-js](https://github.com/fnando/i18n-js), so you can
add it to an already-internationalized app that uses it.
## TL;DR
I18nliner lets you do stuff like this:
```javascript
I18n.t("Ohai %{user}, my default translation is right here in the code. \
Inferred keys, oh my!", {user: user.name});
```
and this:
```javascript
I18n.t("*Translators* won't see any markup!",
{wrappers: ['$1']});
```
Best of all, you don't need to maintain translation files anymore;
I18nliner will do it for you.
## Installation
To install the command-line tools (for extracting/managing
translations), use npm (see below).
Depending on how you manage JavaScript dependencies in your app, you have
several options for installing/including the runtime extensions:
### regular old script
Download the [runtime extensions](https://github.com/jenseng/i18nliner-js/blob/master/dist/i18n_js_extension.js)
and include them on the page after i18n.js (via `