feat(editor): add WMAC JSON round-trip (export/import sidecar)

Closes the JSON round-trip gap on the macro catalog format
shipped this batch. --export-wmac-json emits all 8 scalar
fields plus a dual int + name form for macroKind. The
macroBody string is dumped verbatim — multi-line bodies
preserve embedded '\n' as JSON-escape sequences which most
editors render readably (e.g. nlohmann pretty-print expands
\n to actual newlines in the rendered output).
--import-wmac-json defaults maxLength to 255 (the WoW
canonical UI cap) when omitted. Verified byte-identical
round-trip on all three preset emitters (starter / combat
multi-line bodies / utility). 821 documented CLI flags.
This commit is contained in:
Kelsi 2026-05-09 20:31:37 -07:00
parent a81e69c78d
commit bf43259e10
3 changed files with 138 additions and 0 deletions

View file

@ -178,6 +178,7 @@ const char* const kArgRequired[] = {
"--export-wlfg-json", "--import-wlfg-json",
"--gen-mac", "--gen-mac-combat", "--gen-mac-utility",
"--info-wmac", "--validate-wmac",
"--export-wmac-json", "--import-wmac-json",
"--gen-weather-temperate", "--gen-weather-arctic",
"--gen-weather-desert", "--gen-weather-stormy",
"--gen-zone-atmosphere",