Skip to content
小树 edited this page Dec 6, 2025 · 1 revision

LTWProtocolConverter 使用指南

LTWProtocolConverter 是一个命令行工具,用于在 APICORE JSON 配置与小树壁纸壁纸源 TOML 文件之间进行双向转换。

目录

安装要求

  • .NET 6.0 SDK 或更高版本
  • Windows/Linux/macOS 操作系统

编译工具

克隆或下载此仓库后,在项目根目录执行以下命令来运行工具:

dotnet run --project src/LTWProtocolConverter -- [命令和选项]

或者先发布再运行:

# 发布应用
dotnet publish -c Release -o ./publish src/LTWProtocolConverter

# 在 Windows 上运行
./publish/LTWProtocolConverter.exe [命令和选项]

# 在 Linux/macOS 上运行
./publish/LTWProtocolConverter [命令和选项]

使用方式

该工具包含两个主要命令:mergesplit

查看帮助信息:

dotnet run --project src/LTWProtocolConverter -- --help

merge 命令 - 合并 APICORE 到壁纸源

将多个 APICORE JSON 文件合并为一个小树壁纸源 TOML 文件。

语法

dotnet run --project src/LTWProtocolConverter -- merge [选项]

必需选项

  • -i, --input <inputs>:输入的 APICORE JSON 文件路径,可以指定多个
  • --identifier <identifier>:壁纸源标识符
  • --name <name>:壁纸源名称
  • --version <version>:壁纸源版本

可选选项

  • -o, --output <output>:输出的 TOML 文件路径,默认为当前目录下的 wallpaper-source.toml
  • --description <description>:壁纸源描述
  • --details <details>:详细说明(Markdown 格式)
  • --logo <logo>:Logo URL 或 base64 编码图像
  • --footer <footer>:底部提示文字
  • --refresh <refresh>:刷新间隔秒数,默认为 0
  • --skip-ssl:是否跳过 SSL 验证,默认为 false
  • --category <category>:一级分类名称,默认为 "APICORE"
  • --subcategory <subcategory>:二级分类名称,默认为 "General"

split 命令 - 拆分壁纸源到 APICORE

将一个小树壁纸源 TOML 文件拆分为多个 APICORE JSON 文件。

语法

dotnet run --project src/LTWProtocolConverter -- split [选项]

必需选项

  • -i, --input <input>:输入的壁纸源 TOML 文件路径
  • -o, --output-dir <output-dir>:APICORE JSON 文件输出目录

可选选项

  • --prefix <prefix>:输出文件名前缀,默认为 "apicore"

使用示例

合并多个 APICORE 到一个壁纸源

假设有 bing.json 和 wallhaven.json 两个 APICORE 配置文件:

dotnet run --project src/LTWProtocolConverter -- merge \
  -i apis/bing.json apis/wallhaven.json \
  --identifier littletree_auto \
  --name "示例壁纸源" \
  --version 1.0.0 \
  --category APICORE \
  --subcategory General \
  -o build/wallpaper.toml

这会将两个 APICORE 文件合并成一个名为 wallpaper.toml 的小树壁纸源文件。

将壁纸源拆分成多个 APICORE 文件

将现有的壁纸源文件拆分成多个 APICORE JSON 文件:

dotnet run --project src/LTWProtocolConverter -- split \
  -i samples/wallpaper.toml \
  -o build/apicore \
  --prefix wallpaper

这会将 wallpaper.toml 文件中的每个 API 拆分成独立的 APICORE JSON 文件,并保存在 build/apicore 目录中,文件名以 "wallpaper" 为前缀。

注意事项

  1. 合并时会根据 APICORE 的 friendly_name 自动生成分类与 API 名称
  2. 一级分类和二级分类可以通过 --category--subcategory 选项设定
  3. APICORE 参数类型会自动映射到壁纸源参数:
    • booleanboolean
    • enum/listchoice
    • 其他类型 → text
  4. 对于 static_liststatic_dict 类型的数据,会被展开为多份 APICORE JSON 配置