node-langbank
Install
NodeJS:, (*1)
$ npm install --save langbank;
PHP:, (*2)
$ composer require tomk79/langbank;
Basic Usage
NodeJS:, (*3)
var LangBank = require('langbank');
var lb = new LangBank('/path/to/list.csv', function(){
lb.setLang('en');
console.log( lb.get('hello') ); // <- "Hello"
});
PHP:, (*4)
require_once('/path/to/vendor/autoload.php');
$lb = new tomk79\LangBank('/path/to/list.csv');
$lb->setLang( 'en' );
$lb->get('hello'); // <- "Hello"
list.csv:, (*5)
"","en","ja","anylang"
"goodmorning","Good Morning!","おはよう!","good morning in anylang"
"hello","Hello","こんにちわ","hello in anylang"
Using 2nd column as Default Language., (*6)
Using Twig
Can use "Twig" template., (*7)
NodeJS:, (*8)
var LangBank = require('langbank');
var lb = new LangBank(
'/path/to/list.csv',
{
"bind":{
"sample": "Morning"
}
},
function(){
lb.setLang('en');
console.log( lb.get('goodmorning') ); // <- "Good Morning!"
}
);
list.csv:, (*9)
"","en"
"goodmorning","Good {{ sample }}!"
Can bind temporary data with "Twig"., (*10)
NodeJS:, (*11)
var LangBank = require('langbank');
var lb = new LangBank(
'/path/to/list.csv',
function(){
lb.setLang('en');
console.log( lb.get('goodfoobar', {"sample": "Evening"}) ); // <- "Good Evening!"
}
);
list.csv:, (*12)
"","en"
"goodfoobar","Good {{ sample }}!"
_ENV in Twig
langbank object is accessable in "Twig" template as _ENV
., (*13)
NodeJS:, (*14)
var LangBank = require('langbank');
var lb = new LangBank(
'/path/to/list.csv',
function(){
lb.setLang('en');
console.log( lb.get('goodmorning') ); // <- "Good Morning!"
}
);
list.csv:, (*15)
"","en"
"morning","Morning"
"goodmorning","Good {{ _ENV.get('morning') }}!"
Change Log
langbank v0.3.1 (2023-02-05)
langbank v0.3.0 (2022-11-03)
-
get()
は、第2引数にバインドするデータを受け取れるようになった。
langbank v0.2.2 (2022-09-25)
- NodeJS版, PHP版:
get()
で、要求された言語版の翻訳がない場合に、デフォルト言語を返せない場合がある不具合を修正。
langbank v0.2.1 (2022-06-05)
- NodeJS版: ブラウザ上で動かす場合にロードできない場合がある問題を修正。
langbank v0.2.0 (2022-01-08)
- PHP版: サポートするPHPのバージョンを
>=7.3.0
に変更。PHP 8.1 に対応した。
langbank v0.1.1 (2021-11-29)
- NodeJS版: 初期化時に与えられる第1引数が
null
や undefined
だった場合に異常終了する問題を修正。
langbank v0.1.0 (2021-11-28)
-
get()
に、第2引数 $defaultValue
を追加。
- NodeJS版: ejs を廃止し、 Twig に対応した。
langbank v0.0.5 (2021-04-23)
-
getLang()
メソッドを追加。
- 内部コードの細かい修正。
langbank v0.0.4 (2019-12-30)
langbank v0.0.3 (2018-05-24)
langbank v0.0.2 (2016-08-21)
- 選択された言語の単語が登録されていない場合に、デフォルト言語を参照するようになった。
- 単語の登録がない場合に、文字列
---
を返すようになった。
- 単語中で EJS テンプレートを使えるようになった。
- 第1引数は、CSVファイルのパスのほか、CSVフォーマットの文字列を受け取れるようになった。
langbank v0.0.1 (2016-08-20)
License
MIT License, (*16)
Author