加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 m1615690513 于 2023-7-26 17:07 编辑
免费使用,免费商用。基于MIT协议。
【更新日志20230726】:
1.修复了已知版本的问题
2.允许在文本编辑中使用占位符访问配置内容。(\L{LanguageManager.current().format.video.filename.toPinyin()} 简写:\L{f.video.filename.toPinyin()})
3.将LanguageValue代码设置为全局变量。
var lv = new LanguageValue("值") || LanguageManager.current().format.video.filename; //新增更多的API支持 lv.toString(); lv.toNumber(); lv.toInteger(); lv.parseInt(); lv.toBoolean(); lv.isObject(); lv.isArray(); lv.isObjectLike(); lv.isString(); lv.isNumber(); lv.isBoolean(); lv.isFunction(); lv.isNaN(); lv.isNull(); lv.isUndefined(); lv.isEmpty(); lv.defaultTo(); lv.isURL(); lv.toURL(); lv.isImageURL(); lv.isAudioURL(); lv.isVideoURL(); lv.isZipURL(); lv.toPinyin(); lv.toRomaji(); lv.toHiragana(); lv.toKana(); lv.toKatakana(); lv.toHant(); lv.toHans(); lv.toDuration(); lv.isDateString(); lv.toHansNumber(); lv.toHantNumber(); lv.toMoney(); lv.hansToNumber(); lv.hantToNumber(); lv.format(); lv.clean();
var lv = new LanguageValue("值") || LanguageManager.current().format.video.filename;
//新增更多的API支持
lv.toString();
lv.toNumber();
lv.toInteger();
lv.parseInt();
lv.toBoolean();
lv.isObject();
lv.isArray();
lv.isObjectLike();
lv.isString();
lv.isNumber();
lv.isBoolean();
lv.isFunction();
lv.isNaN();
lv.isNull();
lv.isUndefined();
lv.isEmpty();
lv.defaultTo();
lv.isURL();
lv.toURL();
lv.isImageURL();
lv.isAudioURL();
lv.isVideoURL();
lv.isZipURL();
lv.toPinyin();
lv.toRomaji();
lv.toHiragana();
lv.toKana();
lv.toKatakana();
lv.toHant();
lv.toHans();
lv.toDuration();
lv.isDateString();
lv.toHansNumber();
lv.toHantNumber();
lv.toMoney();
lv.hansToNumber();
lv.hantToNumber();
lv.format();
lv.clean();
【更新日志20230725】:
1. 追加模板写法
2. 兼容“:”或者“=”号的写法。
3. 新增汉字转Pinyin
4. 新增日语转罗马音、平假名、片假名
5. 新增简体中文转中文,繁体中文转简体
6. 示例中的zh-cn简体中文替换为zh-hans,zh-tw繁体中文替换为zh-hant
7. 支持对话中的阿拉伯数字转中文数字(支持大小写)
//假设properties文件里有这样的定义video.height=视频高度{key} LanguageManager.current().format.video.height.format({key:1234}); //输出的内容视频高度1234 //video.yourkey:1234 和 video.yourkey=1234 等价 //转拼音(支持中文、简中、繁中都支持) LanguageManager.current().format.video.filename.toPinyin(); //转罗马音(支持日文) LanguageManager.current().format.video.filename.toRomaji(); //转平假名(支持日文) LanguageManager.current().format.video.filename.toHiragana(); //转假名 LanguageManager.current().format.video.filename.toKana(); //转简体中文 LanguageManager.current().format.video.filename.toHans(); //转繁体中文 LanguageManager.current().format.video.filename.toHant();
//假设properties文件里有这样的定义video.height=视频高度{key}
LanguageManager.current().format.video.height.format({key:1234});
//输出的内容视频高度1234
//video.yourkey:1234 和 video.yourkey=1234 等价
//转拼音(支持中文、简中、繁中都支持)
LanguageManager.current().format.video.filename.toPinyin();
//转罗马音(支持日文)
LanguageManager.current().format.video.filename.toRomaji();
//转平假名(支持日文)
LanguageManager.current().format.video.filename.toHiragana();
//转假名
LanguageManager.current().format.video.filename.toKana();
//转简体中文
LanguageManager.current().format.video.filename.toHans();
//转繁体中文
LanguageManager.current().format.video.filename.toHant();
其中i18n/settings.json 是配置支持哪些语言。
内容如下。
{
"languages": [
{
"lang": "zh-hans",
"label": "简体中文"
},
{
"lang": "zh-hant",
"label": "繁體中文"
},
{
"lang": "en",
"label": "English"
},
{
"lang": "jp",
"label": "日本語"
},
{
"lang": "ko",
"label": "한국어"
},
{
"lang": "ru",
"label": "Русский язык"
}
]
}
{
"languages": [
{
"lang": "zh-hans",
"label": "简体中文"
},
{
"lang": "zh-hant",
"label": "繁體中文"
},
{
"lang": "en",
"label": "English"
},
{
"lang": "jp",
"label": "日本語"
},
{
"lang": "ko",
"label": "한국어"
},
{
"lang": "ru",
"label": "Русский язык"
}
]
}
其中i18n/lang.parser.properties 是语言的配置内容,为了保证中文加载正常,请用Unicode编码。
以中文为例(zh-hans.parser.properties):
scene.prefix=\u7B2C
scene.suffix=\u5E55
chapter.prefix=\u7B2C
chapter.suffix=\u8282
scene.tag=\u573A\u666F
time.tag=\u65F6\u95F4
shot.tag=\u5206\u955C
shot.setting=\u955C\u5934\u8BBE\u7F6E
shot.motion=\u8FD0\u52A8
shot.effects=\u7279\u6548
shot.editing=\u526A\u8F91
shot.sound=\u97F3\u4E50/\u97F3\u6548
character.tag=\u4EBA\u7269
character.time=\u6BEB\u79D2\u6570
dialogue.expression=\u8868\u60C5
dialogue.emotion=\u60C5\u611F
dialogue.action=\u52A8\u4F5C
dialogue.delay=\u5EF6\u8FDF
music.tag=\u97F3\u4E50
music.filename=\u97F3\u4E50\u6587\u4EF6\u540D
music.start=\u5F00\u59CB\u65F6\u95F4
music.end=\u622A\u6B62\u65F6\u95F4
music.fadein=\u6DE1\u5165\u65F6\u95F4
music.fadeout=\u6DE1\u51FA\u65F6\u95F4
video.tag=\u89C6\u9891
video.filename=\u89C6\u9891\u6587\u4EF6\u540D
video.position=\u89C6\u9891\u4F4D\u7F6E
video.start=\u5F00\u59CB\u65F6\u95F4
video.end=\u622A\u6B62\u65F6\u95F4
video.width=\u89C6\u9891\u5BBD\u5EA6
video.height=\u89C6\u9891\u9AD8\u5EA6
scene.prefix=\u7B2C
scene.suffix=\u5E55
chapter.prefix=\u7B2C
chapter.suffix=\u8282
scene.tag=\u573A\u666F
time.tag=\u65F6\u95F4
shot.tag=\u5206\u955C
shot.setting=\u955C\u5934\u8BBE\u7F6E
shot.motion=\u8FD0\u52A8
shot.effects=\u7279\u6548
shot.editing=\u526A\u8F91
shot.sound=\u97F3\u4E50/\u97F3\u6548
character.tag=\u4EBA\u7269
character.time=\u6BEB\u79D2\u6570
dialogue.expression=\u8868\u60C5
dialogue.emotion=\u60C5\u611F
dialogue.action=\u52A8\u4F5C
dialogue.delay=\u5EF6\u8FDF
music.tag=\u97F3\u4E50
music.filename=\u97F3\u4E50\u6587\u4EF6\u540D
music.start=\u5F00\u59CB\u65F6\u95F4
music.end=\u622A\u6B62\u65F6\u95F4
music.fadein=\u6DE1\u5165\u65F6\u95F4
music.fadeout=\u6DE1\u51FA\u65F6\u95F4
video.tag=\u89C6\u9891
video.filename=\u89C6\u9891\u6587\u4EF6\u540D
video.position=\u89C6\u9891\u4F4D\u7F6E
video.start=\u5F00\u59CB\u65F6\u95F4
video.end=\u622A\u6B62\u65F6\u95F4
video.width=\u89C6\u9891\u5BBD\u5EA6
video.height=\u89C6\u9891\u9AD8\u5EA6
//脚本使用 LanguageManager.current().scene.prefix; //切换语言环境 LanguageManager.choose("语言属性lang");
//脚本使用
LanguageManager.current().scene.prefix;
//切换语言环境
LanguageManager.choose("语言属性lang");
i18n-0.0.9.beta.zip
(430.65 KB, 下载次数: 13)
|