Nonebot Plugin Alconna 0.46.0 #50
RF-Tar-Railt
announced in
Announcements
Replies: 3 comments 17 replies
-
|
看不懂喵,有没有使用的插件案例或者demo, |
Beta Was this translation helpful? Give feedback.
12 replies
-
|
使用model方式后,是否只需要修改model.py而可以无视.lang.schema.json的修改 |
Beta Was this translation helpful? Give feedback.
3 replies
-
|
如何在文件中使用i18n翻译后的文字?
|
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment




Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
新增
Text新增.bold(),.italic()等一系列便捷方法I18n通用消息段(在发送前会转为 UniMessage)AlconnaMatcher新增.i18n()方法,与I18n作用相同lang,可以切换或列出可用的语言模式改进
Tarina至 0.5.0 以使用 tarina-lang 新特性i18n 说明
plugin-alconna 的 i18n 支持基于
tarina.lang,其提供了一个 tarina-lang 命令行工具首先可以通过
tarina-lang new创建文件夹i18n之后使用
cd ./i18n和tarina-lang init,会生成如下文件:你需要将你语言文件中所有包含的项目声明在
.template.json中,例如:{ "$schema": ".template.schema.json", "scopes" : [ { "scope": "example", "types": [ "test", { "subtype": "test1", "types": [ "test2" ] } ] } ] }然后通过
tarina-lang schema和tarina-lang create XXX来创建新的语言文件。以下为使用命令创建en-US和zh-CN语言文件后的文件结构:其中一个语言文件如下所示:
Note
tarina-lang支持创建和读取 YAML 格式的语言文件。当然首先你需要额外安装tarina[yaml]然后通过
tarina-lang create XXX --yaml创建.yml文件一个 yaml 格式的语言文件如下所示:
之后,在
plugin里面,你可以用如下方法来使用i18n条目:高级一点,你可以通过
tarina-lang model来生成一个模型文件:📦 awesome-bot ├──📂 i18n │ ├── __init__.py │ ├── .config.json │ ├── .lang.schema.json │ ├── .template.json │ ├── .template.schema.json │ ├── en-US.json ++ ├── model.py │ └── zh-CN.json ├── plugin.py └── ...其中
model.py:之后便可以这样使用:
基于此,
I18n和AlconnaMatcher.i18n可以如下使用:Note
在
plugin-alconna中, i18n 条目会先被转换成 UniMessageTemplate所以 UniMessageTemplate 的所有特性都可用于 i18n 条目
例如:
{ "example": { "test": "XXXX", "foo": "{:I18n(example, test)}, XXXX!" } }Full Changelog: v0.45.4...v0.46.0
This discussion was created from the release Nonebot Plugin Alconna 0.46.0.
Beta Was this translation helpful? Give feedback.
All reactions