ConfigUI 模块开发
更新: 9/28/2025字数: 0 字时长: 0 分钟
ConfigUI 是 ShiroSU 特有的一种功能,旨在通过 FVV[1]的 FWW[2]低学习成本地快速生成 CU NGA 风格[3]的模块配置界面
使用 ConfigUI 要求模块的配置文件必须以 FVV 格式 编写,除非是能让 FVV 解析的简单赋值格式
ConfigUI 的 配置文件、多语言文件、UI 文件 也必须以 FVV 格式 编写,因此需要了解 FVV 格式 才能使用 ConfigUI
模块目录结构
模块目录应遵循以下结构:
.
├── module.prop
└── cfgui
├── config.fvv
├── ui
│ └── FWW UI 配置文件...
├── lang (可选)
│ └── FVV 多语言 配置文件...
└── 其他资源...
cfgui
目录是 ConfigUI 的根目录,包含所有配置module.prop
为模块描述文件
配置 ConfigUI
config.fvv
是 ConfigUI 的配置文件,其中应当包含以下内容:
ConfigPath
: 模块的 FVV 配置文件路径,将会以cfgui
的相对路径、模块目录的相对路径、绝对路径 顺序查找DefaultLang
(可选): 多语言的默认回滚语言IconPath
(可选): 图标路径,用于创建快捷方式InitCommand
(可选): ConfigUI 初始化时需要执行的 Shell 代码
多语言
多语言的配置文件需要存储到lang
目录内,以下斜杠语言标签作为子目录名称,其中的文件会被递归载入至当前语言标签
IMPORTANT
语言标签目录内的 FVV 配置文件会被无差别递归读取,子目录路径不会影响其被解析时的行为!
多语言内的文本会被存储到Lang
内,故调用时需要在值名称前加上Lang.
界面
界面的配置文件需要存储到ui
目录内
IMPORTANT
FWW 的文件后缀是fww
而不是fvv
!
目录内的 FWW 配置文件会被无差别递归读取,子目录路径不会影响其被解析时的行为!
由于解析时会直接赋值多语言文本,故无法直接将 FWW 界面存储至UI
内,请务必保证每个页面均以UI.
开头! 仅有赋值进UI
内的页面才会被解析为 FWW 界面!
ConfigUI 的 FWW 界面均使用FVV 列表作为页面, 其中UI.Main
是 ConfigUI 的默认页面,编写 ConfigUI 需要确保至少有UI.Main
一个界面!
ConfigUI 会将页面的注释设置为该页面的标题:
UI.PageA = <页面A> [
<...>
]
<直接命名>
UI.PageB = <Lang.PageB> [
<...>
]
<通过多语言命名>
TIP
主页面的标题默认是模块名称,在 FWW 中再自定义名称也是允许的
每个页面的除UI.
外的内容是其路由名称,并且 ConfigUI不支持多级定义!请确保所有页面定义均为UI
的顶级定义!