• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

justinklemm/i18n-strings-files: Node.js module for processing .strings files use ...

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称(OpenSource Name):

justinklemm/i18n-strings-files

开源软件地址(OpenSource Url):

https://github.com/justinklemm/i18n-strings-files

开源编程语言(OpenSource Language):

CoffeeScript 100.0%

开源软件介绍(OpenSource Introduction):

i18n-strings-files

Build Status

Node.js module for processing .strings files used for localization in iOS/OSX development

Installing with npm

npm install i18n-strings-files

Usage

i18n-strings-files can be used to read a .strings file and parse it into an object, or to compile an object into .strings format and write it to a file. The intermediate functions for parsing and compiling can also be used directly.

Note that specifying an encoding is optional. If an encoding is not specified, UTF-16 will be used as recommended by Apple. It's important to understand the encoding of the file being read/written and make sure it's specified properly (if it's something other than UTF-16).

readFile(filename, [encoding or options], callback)

// Include i18n-strings-files
var i18nStringsFiles = require('i18n-strings-files');

// Read 'Localizable.strings' and pass an object containing the key/value pairs to a callback
i18nStringsFiles.readFile('Localizable.strings', 'UTF-16', function(err, data){
    console.log(data);
});

// Read 'Localizable.strings' and pass an object containing the key/value pairs (each value contains 'text' and 'comment') to a callback
i18nStringsFiles.readFile('Localizable.strings', { 'encoding' : 'UTF-16', 'wantsComments' : true }, function(err, data){
    console.log(data);
});

readFileSync(filename, [encoding or options])

// Include i18n-strings-files
var i18nStringsFiles = require('i18n-strings-files');

// Read 'Localizable.strings' and return it as an object containing the key/value pairs
var data = i18nStringsFiles.readFileSync('Localizable.strings', 'UTF-16');
console.log(data);

// Read 'Localizable.strings' and return it as an object containing the key/value (each value contains 'text' and 'comment') pairs
var data = i18nStringsFiles.readFileSync('Localizable.strings', { 'encoding' : 'UTF-16', 'wantsComments' : true });
console.log(data);

writeFile(filename, data, [encoding], callback)

// Include i18n-strings-files
var i18nStringsFiles = require('i18n-strings-files');

// An object containing some properties
var data = {
    'key1': 'value1',
    'key2': 'value2'
};

// Write an object containing key/value pairs to file 'Localizable.strings', execute callback when done
i18nStringsFiles.writeFile('Localizable.strings', data, 'UTF-16', function(err){
    if(err) return console.log(err);
    console.log('File written');
});

writeFile(filename, data, [options], callback)

// Include i18n-strings-files
var i18nStringsFiles = require('i18n-strings-files');

// An object containing some properties
var data = {
    'key1': { 'text' : 'value1', 'comment' : 'comment1' },
    'key2': { 'text' : 'value2', 'comment' : 'comment2' }
};

// Write an object containing key/value pairs (with comments) to file 'Localizable.strings', execute callback when done
i18nStringsFiles.writeFile('Localizable.strings', data, { 'encoding' : 'UTF-16', 'wantsComments' : true }, function(err){
    if(err) return console.log(err);
    console.log('File written');
});

writeFileSync(filename, data, [encoding or options])

// Include i18n-strings-files
var i18nStringsFiles = require('i18n-strings-files');

// Write an object containing key/value pairs to file 'Localizable.strings'
i18nStringsFiles.writeFileSync('Localizable.strings', data, 'UTF-16');
console.log('File written');

// Write an object containing key/value pairs (with comments) to file 'Localizable.strings'
i18nStringsFiles.writeFileSync('Localizable.strings', data, { 'encoding' : 'UTF-16', 'wantsComments' : true });
console.log('File written');

parse(input, [options])

// Include i18n-strings-files
var i18nStringsFiles = require('i18n-strings-files');

// A string in the .strings file format
var input = '"key1" = "value1";'

// Parse .strings format string into object containing the key/value pairs
var data = i18nStringsFiles.parse(input);

// A string in the .strings file format
input = '/* comment1 */\n"key1" = "value1";'

// Parse .strings format string into object containing the key/value pairs
data = i18nStringsFiles.parse(input, { 'wantsComments' : true });

compile(data, [options])

// Include i18n-strings-files
var i18nStringsFiles = require('i18n-strings-files');

// An object containing some properties
var data = {
    'key1': 'value1',
    'key2': 'value2'
};

// Compile an object containing key/value pairs into a string in .strings file format
var str = i18nStringsFiles.compile(data);

// An object containing some properties
data = {
    'key1': { 'text' : 'value1', 'comment' : 'comment1' },
    'key2': { 'text' : 'value2', 'comment' : 'comment2' }
};

// Compile an object containing key/value pairs into a string in .strings file format
var str = i18nStringsFiles.compile(data, { 'wantsComments' : true });



鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
silalahi/laravel-id-lang: Indonesian language localization for Laravel 5发布时间:2022-08-16
下一篇:
drsagitn/anomaly-detection-and-localization发布时间:2022-08-16
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap