@rom-weaver/cli 0.16.1 → 0.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -16
- package/docs/completions/_rom-weaver +114 -7
- package/docs/completions/rom-weaver.bash +135 -5
- package/docs/completions/rom-weaver.elv +68 -4
- package/docs/completions/rom-weaver.fish +75 -24
- package/docs/completions/rom-weaver.ps1 +74 -4
- package/docs/man/rom-weaver-compress.1 +1 -1
- package/docs/man/rom-weaver-patch-apply.1 +1 -1
- package/docs/man/rom-weaver-patch-create.1 +1 -1
- package/docs/man/rom-weaver-probe.1 +4 -1
- package/docs/man/rom-weaver-save-create.1 +86 -0
- package/docs/man/rom-weaver-save-list-games.1 +71 -0
- package/docs/man/rom-weaver-save.1 +6 -0
- package/docs/man/rom-weaver-weave.1 +1 -1
- package/docs/man/rom-weaver.1 +2 -2
- package/package.json +17 -15
package/README.md
CHANGED
|
@@ -61,7 +61,7 @@ Open [rom-weaver.com/apply-patches](https://rom-weaver.com/apply-patches). Add y
|
|
|
61
61
|
|
|
62
62
|
For offline use, first cache the app and any needed identify packs, cheat databases, and emulator cores. Remote files still need a connection. See [offline behavior](docs/explanation/local-first.md#offline) and [privacy](docs/legal/privacy.md).
|
|
63
63
|
|
|
64
|
-
Start with [your first patch](docs/tutorials/first-patch.md) to practise on supplied homebrew files.
|
|
64
|
+
Start with [your first patch](docs/tutorials/first-patch.md) to practise on supplied homebrew files. Use the [task chooser](docs/README.md#choose-a-task) for the other browser workflows.
|
|
65
65
|
|
|
66
66
|
## Self-hosting
|
|
67
67
|
|
|
@@ -112,25 +112,18 @@ The CLI and browser share one Rust engine. Browser workers and storage add costs
|
|
|
112
112
|
|
|
113
113
|
## Features
|
|
114
114
|
|
|
115
|
-
- **Apply
|
|
116
|
-
- **
|
|
117
|
-
- **
|
|
118
|
-
- **
|
|
119
|
-
- **Inspect and extract containers.** ZIP, 7z, RAR, the tar family, CHD, RVZ, Z3DS, CSO, PBP, GCZ, WIA, WBFS, and more, including nested archives.
|
|
120
|
-
- **Create format-specific compressed containers.** ZIP, 7z, CHD, RVZ, and Z3DS with codec-aware compression settings. CHD and RVZ outputs are checked for round-trip compatibility with chdman and dolphin-tool.
|
|
121
|
-
- **Checksum and verify.** CRC32, MD5, SHA-1, SHA-256, BLAKE3, and friends, with copier-header detection, header repair, and header-aware checksum variants.
|
|
122
|
-
- **Trim and restore.** Trimming for NDS, GBA, 3DS, XISO, and RVZ scrub. NDS, GBA, and 3DS can be padded back out. An optional footer records the original length and one padding byte; exact restoration has [limits](docs/how-to/cli-trim.md#make-the-trim-reversible).
|
|
123
|
-
- **Share workflows.** Distributable [`rom-weaver-bundle.json`](./docs/rom-weaver-bundle-v2.schema.json) bundles pin patch order, checksums, and output naming so others can replay the exact workflow.
|
|
124
|
-
- **Local-first and private.** Everything runs on your machine. The webapp is an installable PWA that works offline with cached assets. Your files are never uploaded, and rom-weaver sends no telemetry.
|
|
125
|
-
- **One engine, two frontends.** The same Rust core powers the terminal CLI and the threaded WASM webapp. CLI operation commands can emit line-delimited JSON for scripting.
|
|
115
|
+
- **Change games.** Apply or create patches, arrange patch chains, bake supported cheats, and share patch bundles.
|
|
116
|
+
- **Prepare files.** Identify games and revisions, compare checksums, extract archives, convert containers, compress files, trim padding, and undo PPF3 patches with undo data.
|
|
117
|
+
- **Play and manage progress.** Test supported games in the browser. Import or export emulator saves, edit supported game saves, and create fresh supported saves.
|
|
118
|
+
- **Work locally.** Process files without uploads or accounts. Cached app assets work offline; CLI commands support scripts and JSON output.
|
|
126
119
|
|
|
127
|
-
The
|
|
120
|
+
The [plain-language feature map](docs/reference/features.md) links every feature to its browser or CLI guide. Exact limits live in the [format tables](docs/reference/formats.md), [cheat reference](docs/reference/cheat-database.md), and [save reference](docs/reference/save-editor.md).
|
|
128
121
|
|
|
129
122
|
## Notices
|
|
130
123
|
|
|
131
124
|
### Beta status
|
|
132
125
|
|
|
133
|
-
rom-weaver is beta software and follows Semantic Versioning, but until v1.0, breaking changes may still happen between minor releases. Patching, compressing, extracting, and bundling are covered by automated tests. Hands-on testing happens on macOS and Linux; Windows is covered by hosted CI but has seen much less real-world use, so expect rougher edges there and please report anything Windows-specific. If you rely on the APIs or CLI flags, expect things to be a bit tougher: those interfaces may still change as the project heads toward v1.0.
|
|
126
|
+
rom-weaver is beta software and follows Semantic Versioning, but until v1.0, breaking changes may still happen between minor releases. Patching, compressing, extracting, and bundling are covered by automated tests. Hands-on testing happens on macOS and Linux; Windows is covered by hosted CI but has seen much less real-world use, so expect rougher edges there and please report anything Windows-specific. If you rely on the APIs or CLI flags, expect things to be a bit tougher: those interfaces may still change as the project heads toward v1.0. Some browser features are hidden behind [the beta setting](docs/how-to/browser-settings.md#enable-beta-tools). The [feature map](docs/reference/features.md#app-and-automation) lists them. The `rom-weaver-core`, `-checksum`, `-containers`, and `-patches` crates are published to crates.io only so `rom-weaver-cli` can use them. The CLI and the webapp are the supported interfaces; using those crates as libraries in another project is not supported.
|
|
134
127
|
|
|
135
128
|
### First complete public release
|
|
136
129
|
|
|
@@ -146,7 +139,7 @@ Localized translations are early and may be entirely wrong in places. Manual edi
|
|
|
146
139
|
|
|
147
140
|
## Screenshots
|
|
148
141
|
|
|
149
|
-
[
|
|
142
|
+
[Screenshot inventory and capture instructions.](./docs/development/screenshots.md)
|
|
150
143
|
|
|
151
144
|
<table>
|
|
152
145
|
<thead>
|
|
@@ -197,7 +190,7 @@ Localized translations are early and may be entirely wrong in places. Manual edi
|
|
|
197
190
|
|
|
198
191
|
## Documentation
|
|
199
192
|
|
|
200
|
-
Start with the browser-first [documentation home](https://rom-weaver.com/docs) or the repository [documentation index](./docs/README.md).
|
|
193
|
+
Start with the browser-first [documentation home](https://rom-weaver.com/docs) or the repository [documentation index](./docs/README.md). Both link to the task chooser, feature map, guided samples, and [FAQ](./docs/faq.md). CLI, deployment, integration, development, architecture, and format references have their own pages.
|
|
201
194
|
|
|
202
195
|
## Contributing and support
|
|
203
196
|
|
|
@@ -440,6 +440,7 @@ _arguments "${_arguments_options[@]}" : \
|
|
|
440
440
|
'(-v --verbose --debug -q --quiet)--log-level=[How much rom-weaver logs to stderr. Separate from the normal output \[default\: warn\]]:LOG_LEVEL:(off error warn info debug trace)' \
|
|
441
441
|
'--no-extract[Do not look inside archives; identify the file itself]' \
|
|
442
442
|
'--no-ignore[Also consider files normally skipped inside archives\: readmes, images, checksum sidecars, and OS clutter such as .DS_Store]' \
|
|
443
|
+
'--split-bin[List per-track BIN files for a CD-format CHD]' \
|
|
443
444
|
'-n[Plan the command without changing files or downloading data]' \
|
|
444
445
|
'--dry-run[Plan the command without changing files or downloading data]' \
|
|
445
446
|
'(--jsonl)--json[Print one complete JSON report; progress and diagnostics use stderr]' \
|
|
@@ -471,6 +472,7 @@ _arguments "${_arguments_options[@]}" : \
|
|
|
471
472
|
'(-v --verbose --debug -q --quiet)--log-level=[How much rom-weaver logs to stderr. Separate from the normal output \[default\: warn\]]:LOG_LEVEL:(off error warn info debug trace)' \
|
|
472
473
|
'--no-extract[Do not look inside archives; identify the file itself]' \
|
|
473
474
|
'--no-ignore[Also consider files normally skipped inside archives\: readmes, images, checksum sidecars, and OS clutter such as .DS_Store]' \
|
|
475
|
+
'--split-bin[List per-track BIN files for a CD-format CHD]' \
|
|
474
476
|
'-n[Plan the command without changing files or downloading data]' \
|
|
475
477
|
'--dry-run[Plan the command without changing files or downloading data]' \
|
|
476
478
|
'(--jsonl)--json[Print one complete JSON report; progress and diagnostics use stderr]' \
|
|
@@ -1022,6 +1024,7 @@ _arguments "${_arguments_options[@]}" : \
|
|
|
1022
1024
|
;;
|
|
1023
1025
|
(compress)
|
|
1024
1026
|
_arguments "${_arguments_options[@]}" : \
|
|
1027
|
+
'*--entry-name=[]:ENTRY_NAMES:_default' \
|
|
1025
1028
|
'-f+[Output format, such as zip, 7z, chd, rvz, or z3ds \[default\: from the --output extension\]]:FORMAT:(zip 7z chd rvz z3ds)' \
|
|
1026
1029
|
'--format=[Output format, such as zip, 7z, chd, rvz, or z3ds \[default\: from the --output extension\]]:FORMAT:(zip 7z chd rvz z3ds)' \
|
|
1027
1030
|
'*--codec=[Compression method to use, as codec or codec\:level (repeatable, comma-separable)]:CODEC:(store deflate zstd lzma lzma2 zlib huff flac cdzs cdlz cdzl cdfl avhuff)' \
|
|
@@ -1130,7 +1133,7 @@ _arguments "${_arguments_options[@]}" : \
|
|
|
1130
1133
|
'*--expect-out=[Fail unless the patched ROM has this checksum, as in sha1=abc... (repeatable, comma-separable)]:ALGO=HEX:_default' \
|
|
1131
1134
|
'*--code=[Game Genie or GameShark/Pro Action Replay code to bake into the ROM. Repeat for each code]:CODES:_default' \
|
|
1132
1135
|
'--code-system=[Console the --code values are for (nes, snes, genesis, 32x, sms, gamegear, sg1000, gameboy, gba, psx), when the ROM header does not say]:CODE_SYSTEM:_default' \
|
|
1133
|
-
'--code-kind=[
|
|
1136
|
+
'--code-kind=[Cheat scheme\: auto, game-genie, gameshark/par, xploder, pro-action-rocky, gold-finger, game-shark-v1\[-raw\], or action-replay-v3\[-raw\]]:CODE_KIND:_default' \
|
|
1134
1137
|
'*--cheat=[Database cheat to use, by record ID or exact description. Repeat for each cheat]:ID_OR_DESCRIPTION:_default' \
|
|
1135
1138
|
'--cheat-database=[Directory holding manifest.json and the <system>.json cheat shards. Defaults to \$ROM_WEAVER_CHEAT_DATABASE, then the per-user data directory]:DIR:_files' \
|
|
1136
1139
|
'--cheat-system=[Console the cheat shard is for (nes, snes, genesis, gameboy, gameboy-color, gba), when the ROM header does not say]:SYS:_default' \
|
|
@@ -1278,7 +1281,7 @@ _arguments "${_arguments_options[@]}" : \
|
|
|
1278
1281
|
'*--expect-out=[Fail unless the patched ROM has this checksum, as in sha1=abc... (repeatable, comma-separable)]:ALGO=HEX:_default' \
|
|
1279
1282
|
'*--code=[Game Genie or GameShark/Pro Action Replay code to bake into the ROM. Repeat for each code]:CODES:_default' \
|
|
1280
1283
|
'--code-system=[Console the --code values are for (nes, snes, genesis, 32x, sms, gamegear, sg1000, gameboy, gba, psx), when the ROM header does not say]:CODE_SYSTEM:_default' \
|
|
1281
|
-
'--code-kind=[
|
|
1284
|
+
'--code-kind=[Cheat scheme\: auto, game-genie, gameshark/par, xploder, pro-action-rocky, gold-finger, game-shark-v1\[-raw\], or action-replay-v3\[-raw\]]:CODE_KIND:_default' \
|
|
1282
1285
|
'*--cheat=[Database cheat to use, by record ID or exact description. Repeat for each cheat]:ID_OR_DESCRIPTION:_default' \
|
|
1283
1286
|
'--cheat-database=[Directory holding manifest.json and the <system>.json cheat shards. Defaults to \$ROM_WEAVER_CHEAT_DATABASE, then the per-user data directory]:DIR:_files' \
|
|
1284
1287
|
'--cheat-system=[Console the cheat shard is for (nes, snes, genesis, gameboy, gameboy-color, gba), when the ROM header does not say]:SYS:_default' \
|
|
@@ -1350,7 +1353,7 @@ _arguments "${_arguments_options[@]}" : \
|
|
|
1350
1353
|
'*--expect-out=[Fail unless the patched ROM has this checksum, as in sha1=abc... (repeatable, comma-separable)]:ALGO=HEX:_default' \
|
|
1351
1354
|
'*--code=[Game Genie or GameShark/Pro Action Replay code to bake into the ROM. Repeat for each code]:CODES:_default' \
|
|
1352
1355
|
'--code-system=[Console the --code values are for (nes, snes, genesis, 32x, sms, gamegear, sg1000, gameboy, gba, psx), when the ROM header does not say]:CODE_SYSTEM:_default' \
|
|
1353
|
-
'--code-kind=[
|
|
1356
|
+
'--code-kind=[Cheat scheme\: auto, game-genie, gameshark/par, xploder, pro-action-rocky, gold-finger, game-shark-v1\[-raw\], or action-replay-v3\[-raw\]]:CODE_KIND:_default' \
|
|
1354
1357
|
'*--cheat=[Database cheat to use, by record ID or exact description. Repeat for each cheat]:ID_OR_DESCRIPTION:_default' \
|
|
1355
1358
|
'--cheat-database=[Directory holding manifest.json and the <system>.json cheat shards. Defaults to \$ROM_WEAVER_CHEAT_DATABASE, then the per-user data directory]:DIR:_files' \
|
|
1356
1359
|
'--cheat-system=[Console the cheat shard is for (nes, snes, genesis, gameboy, gameboy-color, gba), when the ROM header does not say]:SYS:_default' \
|
|
@@ -1400,7 +1403,7 @@ _arguments "${_arguments_options[@]}" : \
|
|
|
1400
1403
|
'*--assume-in=[Take the original ROM'\''s checksum on trust rather than reading the file, as in crc32=1234abcd (repeatable, comma-separable)]:ALGO=HEX:_default' \
|
|
1401
1404
|
'*--code=[Build the patch from a Game Genie or GameShark/Pro Action Replay code instead of a second ROM. Repeat for each code; cannot be used with --modified]:CODES:_default' \
|
|
1402
1405
|
'--code-system=[Console the --code values are for (nes, snes, genesis, 32x, sms, gamegear, sg1000, gameboy, gba, psx), when the ROM header does not say]:CODE_SYSTEM:_default' \
|
|
1403
|
-
'--code-kind=[
|
|
1406
|
+
'--code-kind=[Cheat scheme\: auto, game-genie, gameshark/par, xploder, pro-action-rocky, gold-finger, game-shark-v1\[-raw\], or action-replay-v3\[-raw\]]:CODE_KIND:_default' \
|
|
1404
1407
|
'*--cheat=[Database cheat to use, by record ID or exact description. Repeat for each cheat]:ID_OR_DESCRIPTION:_default' \
|
|
1405
1408
|
'--cheat-database=[Directory holding manifest.json and the <system>.json cheat shards. Defaults to \$ROM_WEAVER_CHEAT_DATABASE, then the per-user data directory]:DIR:_files' \
|
|
1406
1409
|
'--cheat-system=[Console the cheat shard is for (nes, snes, genesis, gameboy, gameboy-color, gba), when the ROM header does not say]:SYS:_default' \
|
|
@@ -1511,7 +1514,59 @@ _arguments "${_arguments_options[@]}" : \
|
|
|
1511
1514
|
(( CURRENT += 1 ))
|
|
1512
1515
|
curcontext="${curcontext%:*:*}:rom-weaver-save-command-$line[1]:"
|
|
1513
1516
|
case $line[1] in
|
|
1514
|
-
(
|
|
1517
|
+
(list-games)
|
|
1518
|
+
_arguments "${_arguments_options[@]}" : \
|
|
1519
|
+
'(-v --verbose --debug -q --quiet)--log-level=[How much rom-weaver logs to stderr. Separate from the normal output \[default\: warn\]]:LOG_LEVEL:(off error warn info debug trace)' \
|
|
1520
|
+
'-n[Plan the command without changing files or downloading data]' \
|
|
1521
|
+
'--dry-run[Plan the command without changing files or downloading data]' \
|
|
1522
|
+
'(--jsonl)--json[Print one complete JSON report; progress and diagnostics use stderr]' \
|
|
1523
|
+
'(--json)--jsonl[Stream JSON events, including progress, one object per line]' \
|
|
1524
|
+
'(--no-progress)--progress[Show progress on stderr (off by default; JSONL includes progress)]' \
|
|
1525
|
+
'(--progress)--no-progress[Hide progress]' \
|
|
1526
|
+
'(--log-level --debug)*-v[Show user diagnostics on stderr; repeat for developer detail (-vv debug, -vvv trace)]' \
|
|
1527
|
+
'(--log-level --debug)*--verbose[Show user diagnostics on stderr; repeat for developer detail (-vv debug, -vvv trace)]' \
|
|
1528
|
+
'(--log-level -v --verbose -q --quiet)--debug[Show developer diagnostics and trace events on stderr (same as -vvv)]' \
|
|
1529
|
+
'(--log-level --debug)-q[Hide optional diagnostics and progress; keep results, warnings, and errors]' \
|
|
1530
|
+
'(--log-level --debug)--quiet[Hide optional diagnostics and progress; keep results, warnings, and errors]' \
|
|
1531
|
+
'--dep-trace[Also log trace output from bundled libraries (for bug reports)]' \
|
|
1532
|
+
'(--no-color)--color[Keep colors even when output is piped]' \
|
|
1533
|
+
'(--color)--no-color[Turn colors off]' \
|
|
1534
|
+
'-y[Answer yes to every confirmation instead of asking. Does not choose between candidates]' \
|
|
1535
|
+
'--yes[Answer yes to every confirmation instead of asking. Does not choose between candidates]' \
|
|
1536
|
+
'-h[Print help]' \
|
|
1537
|
+
'--help[Print help]' \
|
|
1538
|
+
&& ret=0
|
|
1539
|
+
;;
|
|
1540
|
+
(create)
|
|
1541
|
+
_arguments "${_arguments_options[@]}" : \
|
|
1542
|
+
'--game=[Game to generate or use with a template]:GAME_ID:_default' \
|
|
1543
|
+
'--template=[Existing save to copy before setting fields]:SAVE:_files' \
|
|
1544
|
+
'-o+[Where to write the new save]:PATH:_files' \
|
|
1545
|
+
'--output=[Where to write the new save]:PATH:_files' \
|
|
1546
|
+
'(-v --verbose --debug -q --quiet)--log-level=[How much rom-weaver logs to stderr. Separate from the normal output \[default\: warn\]]:LOG_LEVEL:(off error warn info debug trace)' \
|
|
1547
|
+
'-n[Check the new save without writing it]' \
|
|
1548
|
+
'--dry-run[Check the new save without writing it]' \
|
|
1549
|
+
'--force[Replace an existing output file]' \
|
|
1550
|
+
'(--jsonl)--json[Print one complete JSON report; progress and diagnostics use stderr]' \
|
|
1551
|
+
'(--json)--jsonl[Stream JSON events, including progress, one object per line]' \
|
|
1552
|
+
'(--no-progress)--progress[Show progress on stderr (off by default; JSONL includes progress)]' \
|
|
1553
|
+
'(--progress)--no-progress[Hide progress]' \
|
|
1554
|
+
'(--log-level --debug)*-v[Show user diagnostics on stderr; repeat for developer detail (-vv debug, -vvv trace)]' \
|
|
1555
|
+
'(--log-level --debug)*--verbose[Show user diagnostics on stderr; repeat for developer detail (-vv debug, -vvv trace)]' \
|
|
1556
|
+
'(--log-level -v --verbose -q --quiet)--debug[Show developer diagnostics and trace events on stderr (same as -vvv)]' \
|
|
1557
|
+
'(--log-level --debug)-q[Hide optional diagnostics and progress; keep results, warnings, and errors]' \
|
|
1558
|
+
'(--log-level --debug)--quiet[Hide optional diagnostics and progress; keep results, warnings, and errors]' \
|
|
1559
|
+
'--dep-trace[Also log trace output from bundled libraries (for bug reports)]' \
|
|
1560
|
+
'(--no-color)--color[Keep colors even when output is piped]' \
|
|
1561
|
+
'(--color)--no-color[Turn colors off]' \
|
|
1562
|
+
'-y[Answer yes to every confirmation instead of asking. Does not choose between candidates]' \
|
|
1563
|
+
'--yes[Answer yes to every confirmation instead of asking. Does not choose between candidates]' \
|
|
1564
|
+
'-h[Print help]' \
|
|
1565
|
+
'--help[Print help]' \
|
|
1566
|
+
'*::assignments -- Save property to set in the new file:_default' \
|
|
1567
|
+
&& ret=0
|
|
1568
|
+
;;
|
|
1569
|
+
(identify)
|
|
1515
1570
|
_arguments "${_arguments_options[@]}" : \
|
|
1516
1571
|
'--game=[Force a game id instead of detecting one]:GAME_ID:_default' \
|
|
1517
1572
|
'--rom-sha1=[SHA-1 of the matching ROM, used to pick a game]:SHA1:_default' \
|
|
@@ -1658,7 +1713,15 @@ _arguments "${_arguments_options[@]}" : \
|
|
|
1658
1713
|
(( CURRENT += 1 ))
|
|
1659
1714
|
curcontext="${curcontext%:*:*}:rom-weaver-save-help-command-$line[1]:"
|
|
1660
1715
|
case $line[1] in
|
|
1661
|
-
(
|
|
1716
|
+
(list-games)
|
|
1717
|
+
_arguments "${_arguments_options[@]}" : \
|
|
1718
|
+
&& ret=0
|
|
1719
|
+
;;
|
|
1720
|
+
(create)
|
|
1721
|
+
_arguments "${_arguments_options[@]}" : \
|
|
1722
|
+
&& ret=0
|
|
1723
|
+
;;
|
|
1724
|
+
(identify)
|
|
1662
1725
|
_arguments "${_arguments_options[@]}" : \
|
|
1663
1726
|
&& ret=0
|
|
1664
1727
|
;;
|
|
@@ -1977,7 +2040,15 @@ _arguments "${_arguments_options[@]}" : \
|
|
|
1977
2040
|
(( CURRENT += 1 ))
|
|
1978
2041
|
curcontext="${curcontext%:*:*}:rom-weaver-help-save-command-$line[1]:"
|
|
1979
2042
|
case $line[1] in
|
|
1980
|
-
(
|
|
2043
|
+
(list-games)
|
|
2044
|
+
_arguments "${_arguments_options[@]}" : \
|
|
2045
|
+
&& ret=0
|
|
2046
|
+
;;
|
|
2047
|
+
(create)
|
|
2048
|
+
_arguments "${_arguments_options[@]}" : \
|
|
2049
|
+
&& ret=0
|
|
2050
|
+
;;
|
|
2051
|
+
(identify)
|
|
1981
2052
|
_arguments "${_arguments_options[@]}" : \
|
|
1982
2053
|
&& ret=0
|
|
1983
2054
|
;;
|
|
@@ -2343,6 +2414,8 @@ _rom-weaver__subcmd__help__subcmd__probe_commands() {
|
|
|
2343
2414
|
(( $+functions[_rom-weaver__subcmd__help__subcmd__save_commands] )) ||
|
|
2344
2415
|
_rom-weaver__subcmd__help__subcmd__save_commands() {
|
|
2345
2416
|
local commands; commands=(
|
|
2417
|
+
'list-games:List supported games and fresh save generation support' \
|
|
2418
|
+
'create:Create a fresh save or a copy of an existing save template' \
|
|
2346
2419
|
'identify:Identify a supported game save without changing it' \
|
|
2347
2420
|
'inspect:Show the sections and fields in a supported game save' \
|
|
2348
2421
|
'get:Read one field from a supported game save' \
|
|
@@ -2351,6 +2424,11 @@ _rom-weaver__subcmd__help__subcmd__save_commands() {
|
|
|
2351
2424
|
)
|
|
2352
2425
|
_describe -t commands 'rom-weaver help save commands' commands "$@"
|
|
2353
2426
|
}
|
|
2427
|
+
(( $+functions[_rom-weaver__subcmd__help__subcmd__save__subcmd__create_commands] )) ||
|
|
2428
|
+
_rom-weaver__subcmd__help__subcmd__save__subcmd__create_commands() {
|
|
2429
|
+
local commands; commands=()
|
|
2430
|
+
_describe -t commands 'rom-weaver help save create commands' commands "$@"
|
|
2431
|
+
}
|
|
2354
2432
|
(( $+functions[_rom-weaver__subcmd__help__subcmd__save__subcmd__export-schema_commands] )) ||
|
|
2355
2433
|
_rom-weaver__subcmd__help__subcmd__save__subcmd__export-schema_commands() {
|
|
2356
2434
|
local commands; commands=()
|
|
@@ -2371,6 +2449,11 @@ _rom-weaver__subcmd__help__subcmd__save__subcmd__inspect_commands() {
|
|
|
2371
2449
|
local commands; commands=()
|
|
2372
2450
|
_describe -t commands 'rom-weaver help save inspect commands' commands "$@"
|
|
2373
2451
|
}
|
|
2452
|
+
(( $+functions[_rom-weaver__subcmd__help__subcmd__save__subcmd__list-games_commands] )) ||
|
|
2453
|
+
_rom-weaver__subcmd__help__subcmd__save__subcmd__list-games_commands() {
|
|
2454
|
+
local commands; commands=()
|
|
2455
|
+
_describe -t commands 'rom-weaver help save list-games commands' commands "$@"
|
|
2456
|
+
}
|
|
2374
2457
|
(( $+functions[_rom-weaver__subcmd__help__subcmd__save__subcmd__set_commands] )) ||
|
|
2375
2458
|
_rom-weaver__subcmd__help__subcmd__save__subcmd__set_commands() {
|
|
2376
2459
|
local commands; commands=()
|
|
@@ -2690,6 +2773,8 @@ _rom-weaver__subcmd__probe_commands() {
|
|
|
2690
2773
|
(( $+functions[_rom-weaver__subcmd__save_commands] )) ||
|
|
2691
2774
|
_rom-weaver__subcmd__save_commands() {
|
|
2692
2775
|
local commands; commands=(
|
|
2776
|
+
'list-games:List supported games and fresh save generation support' \
|
|
2777
|
+
'create:Create a fresh save or a copy of an existing save template' \
|
|
2693
2778
|
'identify:Identify a supported game save without changing it' \
|
|
2694
2779
|
'inspect:Show the sections and fields in a supported game save' \
|
|
2695
2780
|
'get:Read one field from a supported game save' \
|
|
@@ -2699,6 +2784,11 @@ _rom-weaver__subcmd__save_commands() {
|
|
|
2699
2784
|
)
|
|
2700
2785
|
_describe -t commands 'rom-weaver save commands' commands "$@"
|
|
2701
2786
|
}
|
|
2787
|
+
(( $+functions[_rom-weaver__subcmd__save__subcmd__create_commands] )) ||
|
|
2788
|
+
_rom-weaver__subcmd__save__subcmd__create_commands() {
|
|
2789
|
+
local commands; commands=()
|
|
2790
|
+
_describe -t commands 'rom-weaver save create commands' commands "$@"
|
|
2791
|
+
}
|
|
2702
2792
|
(( $+functions[_rom-weaver__subcmd__save__subcmd__export-schema_commands] )) ||
|
|
2703
2793
|
_rom-weaver__subcmd__save__subcmd__export-schema_commands() {
|
|
2704
2794
|
local commands; commands=()
|
|
@@ -2712,6 +2802,8 @@ _rom-weaver__subcmd__save__subcmd__get_commands() {
|
|
|
2712
2802
|
(( $+functions[_rom-weaver__subcmd__save__subcmd__help_commands] )) ||
|
|
2713
2803
|
_rom-weaver__subcmd__save__subcmd__help_commands() {
|
|
2714
2804
|
local commands; commands=(
|
|
2805
|
+
'list-games:List supported games and fresh save generation support' \
|
|
2806
|
+
'create:Create a fresh save or a copy of an existing save template' \
|
|
2715
2807
|
'identify:Identify a supported game save without changing it' \
|
|
2716
2808
|
'inspect:Show the sections and fields in a supported game save' \
|
|
2717
2809
|
'get:Read one field from a supported game save' \
|
|
@@ -2721,6 +2813,11 @@ _rom-weaver__subcmd__save__subcmd__help_commands() {
|
|
|
2721
2813
|
)
|
|
2722
2814
|
_describe -t commands 'rom-weaver save help commands' commands "$@"
|
|
2723
2815
|
}
|
|
2816
|
+
(( $+functions[_rom-weaver__subcmd__save__subcmd__help__subcmd__create_commands] )) ||
|
|
2817
|
+
_rom-weaver__subcmd__save__subcmd__help__subcmd__create_commands() {
|
|
2818
|
+
local commands; commands=()
|
|
2819
|
+
_describe -t commands 'rom-weaver save help create commands' commands "$@"
|
|
2820
|
+
}
|
|
2724
2821
|
(( $+functions[_rom-weaver__subcmd__save__subcmd__help__subcmd__export-schema_commands] )) ||
|
|
2725
2822
|
_rom-weaver__subcmd__save__subcmd__help__subcmd__export-schema_commands() {
|
|
2726
2823
|
local commands; commands=()
|
|
@@ -2746,6 +2843,11 @@ _rom-weaver__subcmd__save__subcmd__help__subcmd__inspect_commands() {
|
|
|
2746
2843
|
local commands; commands=()
|
|
2747
2844
|
_describe -t commands 'rom-weaver save help inspect commands' commands "$@"
|
|
2748
2845
|
}
|
|
2846
|
+
(( $+functions[_rom-weaver__subcmd__save__subcmd__help__subcmd__list-games_commands] )) ||
|
|
2847
|
+
_rom-weaver__subcmd__save__subcmd__help__subcmd__list-games_commands() {
|
|
2848
|
+
local commands; commands=()
|
|
2849
|
+
_describe -t commands 'rom-weaver save help list-games commands' commands "$@"
|
|
2850
|
+
}
|
|
2749
2851
|
(( $+functions[_rom-weaver__subcmd__save__subcmd__help__subcmd__set_commands] )) ||
|
|
2750
2852
|
_rom-weaver__subcmd__save__subcmd__help__subcmd__set_commands() {
|
|
2751
2853
|
local commands; commands=()
|
|
@@ -2761,6 +2863,11 @@ _rom-weaver__subcmd__save__subcmd__inspect_commands() {
|
|
|
2761
2863
|
local commands; commands=()
|
|
2762
2864
|
_describe -t commands 'rom-weaver save inspect commands' commands "$@"
|
|
2763
2865
|
}
|
|
2866
|
+
(( $+functions[_rom-weaver__subcmd__save__subcmd__list-games_commands] )) ||
|
|
2867
|
+
_rom-weaver__subcmd__save__subcmd__list-games_commands() {
|
|
2868
|
+
local commands; commands=()
|
|
2869
|
+
_describe -t commands 'rom-weaver save list-games commands' commands "$@"
|
|
2870
|
+
}
|
|
2764
2871
|
(( $+functions[_rom-weaver__subcmd__save__subcmd__set_commands] )) ||
|
|
2765
2872
|
_rom-weaver__subcmd__save__subcmd__set_commands() {
|
|
2766
2873
|
local commands; commands=()
|
|
@@ -205,6 +205,9 @@ _rom__weaver() {
|
|
|
205
205
|
rom__weaver__subcmd__help__subcmd__patch,validate)
|
|
206
206
|
cmd="rom__weaver__subcmd__help__subcmd__patch__subcmd__validate"
|
|
207
207
|
;;
|
|
208
|
+
rom__weaver__subcmd__help__subcmd__save,create)
|
|
209
|
+
cmd="rom__weaver__subcmd__help__subcmd__save__subcmd__create"
|
|
210
|
+
;;
|
|
208
211
|
rom__weaver__subcmd__help__subcmd__save,export-schema)
|
|
209
212
|
cmd="rom__weaver__subcmd__help__subcmd__save__subcmd__export__subcmd__schema"
|
|
210
213
|
;;
|
|
@@ -217,6 +220,9 @@ _rom__weaver() {
|
|
|
217
220
|
rom__weaver__subcmd__help__subcmd__save,inspect)
|
|
218
221
|
cmd="rom__weaver__subcmd__help__subcmd__save__subcmd__inspect"
|
|
219
222
|
;;
|
|
223
|
+
rom__weaver__subcmd__help__subcmd__save,list-games)
|
|
224
|
+
cmd="rom__weaver__subcmd__help__subcmd__save__subcmd__list__subcmd__games"
|
|
225
|
+
;;
|
|
220
226
|
rom__weaver__subcmd__help__subcmd__save,set)
|
|
221
227
|
cmd="rom__weaver__subcmd__help__subcmd__save__subcmd__set"
|
|
222
228
|
;;
|
|
@@ -349,6 +355,9 @@ _rom__weaver() {
|
|
|
349
355
|
rom__weaver__subcmd__patch__subcmd__help,validate)
|
|
350
356
|
cmd="rom__weaver__subcmd__patch__subcmd__help__subcmd__validate"
|
|
351
357
|
;;
|
|
358
|
+
rom__weaver__subcmd__save,create)
|
|
359
|
+
cmd="rom__weaver__subcmd__save__subcmd__create"
|
|
360
|
+
;;
|
|
352
361
|
rom__weaver__subcmd__save,export-schema)
|
|
353
362
|
cmd="rom__weaver__subcmd__save__subcmd__export__subcmd__schema"
|
|
354
363
|
;;
|
|
@@ -364,9 +373,15 @@ _rom__weaver() {
|
|
|
364
373
|
rom__weaver__subcmd__save,inspect)
|
|
365
374
|
cmd="rom__weaver__subcmd__save__subcmd__inspect"
|
|
366
375
|
;;
|
|
376
|
+
rom__weaver__subcmd__save,list-games)
|
|
377
|
+
cmd="rom__weaver__subcmd__save__subcmd__list__subcmd__games"
|
|
378
|
+
;;
|
|
367
379
|
rom__weaver__subcmd__save,set)
|
|
368
380
|
cmd="rom__weaver__subcmd__save__subcmd__set"
|
|
369
381
|
;;
|
|
382
|
+
rom__weaver__subcmd__save__subcmd__help,create)
|
|
383
|
+
cmd="rom__weaver__subcmd__save__subcmd__help__subcmd__create"
|
|
384
|
+
;;
|
|
370
385
|
rom__weaver__subcmd__save__subcmd__help,export-schema)
|
|
371
386
|
cmd="rom__weaver__subcmd__save__subcmd__help__subcmd__export__subcmd__schema"
|
|
372
387
|
;;
|
|
@@ -382,6 +397,9 @@ _rom__weaver() {
|
|
|
382
397
|
rom__weaver__subcmd__save__subcmd__help,inspect)
|
|
383
398
|
cmd="rom__weaver__subcmd__save__subcmd__help__subcmd__inspect"
|
|
384
399
|
;;
|
|
400
|
+
rom__weaver__subcmd__save__subcmd__help,list-games)
|
|
401
|
+
cmd="rom__weaver__subcmd__save__subcmd__help__subcmd__list__subcmd__games"
|
|
402
|
+
;;
|
|
385
403
|
rom__weaver__subcmd__save__subcmd__help,set)
|
|
386
404
|
cmd="rom__weaver__subcmd__save__subcmd__help__subcmd__set"
|
|
387
405
|
;;
|
|
@@ -874,12 +892,16 @@ _rom__weaver() {
|
|
|
874
892
|
return 0
|
|
875
893
|
;;
|
|
876
894
|
rom__subcmd__weaver__subcmd__compress)
|
|
877
|
-
opts="-f -j -i -o -n -v -q -y -h --format --codec --level --force --threads --stdin-name --input --output --dry-run --json --jsonl --progress --no-progress --log-level --verbose --debug --quiet --dep-trace --color --no-color --yes --help"
|
|
895
|
+
opts="-f -j -i -o -n -v -q -y -h --entry-name --format --codec --level --force --threads --stdin-name --input --output --dry-run --json --jsonl --progress --no-progress --log-level --verbose --debug --quiet --dep-trace --color --no-color --yes --help"
|
|
878
896
|
if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
|
|
879
897
|
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
880
898
|
return 0
|
|
881
899
|
fi
|
|
882
900
|
case "${prev}" in
|
|
901
|
+
--entry-name)
|
|
902
|
+
COMPREPLY=($(compgen -f "${cur}"))
|
|
903
|
+
return 0
|
|
904
|
+
;;
|
|
883
905
|
--format)
|
|
884
906
|
COMPREPLY=($(compgen -W "zip 7z chd rvz z3ds" -- "${cur}"))
|
|
885
907
|
return 0
|
|
@@ -1458,7 +1480,7 @@ _rom__weaver() {
|
|
|
1458
1480
|
return 0
|
|
1459
1481
|
;;
|
|
1460
1482
|
rom__subcmd__weaver__subcmd__help__subcmd__save)
|
|
1461
|
-
opts="identify inspect get export-schema set"
|
|
1483
|
+
opts="list-games create identify inspect get export-schema set"
|
|
1462
1484
|
if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
|
|
1463
1485
|
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
1464
1486
|
return 0
|
|
@@ -1471,6 +1493,20 @@ _rom__weaver() {
|
|
|
1471
1493
|
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
1472
1494
|
return 0
|
|
1473
1495
|
;;
|
|
1496
|
+
rom__subcmd__weaver__subcmd__help__subcmd__save__subcmd__create)
|
|
1497
|
+
opts=""
|
|
1498
|
+
if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
|
|
1499
|
+
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
1500
|
+
return 0
|
|
1501
|
+
fi
|
|
1502
|
+
case "${prev}" in
|
|
1503
|
+
*)
|
|
1504
|
+
COMPREPLY=()
|
|
1505
|
+
;;
|
|
1506
|
+
esac
|
|
1507
|
+
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
1508
|
+
return 0
|
|
1509
|
+
;;
|
|
1474
1510
|
rom__subcmd__weaver__subcmd__help__subcmd__save__subcmd__export__subcmd__schema)
|
|
1475
1511
|
opts=""
|
|
1476
1512
|
if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
|
|
@@ -1527,6 +1563,20 @@ _rom__weaver() {
|
|
|
1527
1563
|
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
1528
1564
|
return 0
|
|
1529
1565
|
;;
|
|
1566
|
+
rom__subcmd__weaver__subcmd__help__subcmd__save__subcmd__list__subcmd__games)
|
|
1567
|
+
opts=""
|
|
1568
|
+
if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
|
|
1569
|
+
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
1570
|
+
return 0
|
|
1571
|
+
fi
|
|
1572
|
+
case "${prev}" in
|
|
1573
|
+
*)
|
|
1574
|
+
COMPREPLY=()
|
|
1575
|
+
;;
|
|
1576
|
+
esac
|
|
1577
|
+
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
1578
|
+
return 0
|
|
1579
|
+
;;
|
|
1530
1580
|
rom__subcmd__weaver__subcmd__help__subcmd__save__subcmd__set)
|
|
1531
1581
|
opts=""
|
|
1532
1582
|
if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
|
|
@@ -2840,7 +2890,7 @@ _rom__weaver() {
|
|
|
2840
2890
|
return 0
|
|
2841
2891
|
;;
|
|
2842
2892
|
rom__subcmd__weaver__subcmd__probe)
|
|
2843
|
-
opts="-s -i -n -v -q -y -h --select --filter --no-extract --no-ignore --input --dry-run --json --jsonl --progress --no-progress --log-level --verbose --debug --quiet --dep-trace --color --no-color --yes --help"
|
|
2893
|
+
opts="-s -i -n -v -q -y -h --select --filter --no-extract --no-ignore --split-bin --input --dry-run --json --jsonl --progress --no-progress --log-level --verbose --debug --quiet --dep-trace --color --no-color --yes --help"
|
|
2844
2894
|
if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
|
|
2845
2895
|
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
2846
2896
|
return 0
|
|
@@ -2878,7 +2928,7 @@ _rom__weaver() {
|
|
|
2878
2928
|
return 0
|
|
2879
2929
|
;;
|
|
2880
2930
|
rom__subcmd__weaver__subcmd__save)
|
|
2881
|
-
opts="-n -v -q -y -h --dry-run --json --jsonl --progress --no-progress --log-level --verbose --debug --quiet --dep-trace --color --no-color --yes --help identify inspect get export-schema set help"
|
|
2931
|
+
opts="-n -v -q -y -h --dry-run --json --jsonl --progress --no-progress --log-level --verbose --debug --quiet --dep-trace --color --no-color --yes --help list-games create identify inspect get export-schema set help"
|
|
2882
2932
|
if [[ ${cur} == -* || ${COMP_CWORD} -eq 2 ]] ; then
|
|
2883
2933
|
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
2884
2934
|
return 0
|
|
@@ -2895,6 +2945,40 @@ _rom__weaver() {
|
|
|
2895
2945
|
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
2896
2946
|
return 0
|
|
2897
2947
|
;;
|
|
2948
|
+
rom__subcmd__weaver__subcmd__save__subcmd__create)
|
|
2949
|
+
opts="-o -n -v -q -y -h --game --template --output --dry-run --force --json --jsonl --progress --no-progress --log-level --verbose --debug --quiet --dep-trace --color --no-color --yes --help"
|
|
2950
|
+
if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
|
|
2951
|
+
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
2952
|
+
return 0
|
|
2953
|
+
fi
|
|
2954
|
+
case "${prev}" in
|
|
2955
|
+
--game)
|
|
2956
|
+
COMPREPLY=($(compgen -f "${cur}"))
|
|
2957
|
+
return 0
|
|
2958
|
+
;;
|
|
2959
|
+
--template)
|
|
2960
|
+
COMPREPLY=($(compgen -f "${cur}"))
|
|
2961
|
+
return 0
|
|
2962
|
+
;;
|
|
2963
|
+
--output)
|
|
2964
|
+
COMPREPLY=($(compgen -f "${cur}"))
|
|
2965
|
+
return 0
|
|
2966
|
+
;;
|
|
2967
|
+
-o)
|
|
2968
|
+
COMPREPLY=($(compgen -f "${cur}"))
|
|
2969
|
+
return 0
|
|
2970
|
+
;;
|
|
2971
|
+
--log-level)
|
|
2972
|
+
COMPREPLY=($(compgen -W "off error warn info debug trace" -- "${cur}"))
|
|
2973
|
+
return 0
|
|
2974
|
+
;;
|
|
2975
|
+
*)
|
|
2976
|
+
COMPREPLY=()
|
|
2977
|
+
;;
|
|
2978
|
+
esac
|
|
2979
|
+
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
2980
|
+
return 0
|
|
2981
|
+
;;
|
|
2898
2982
|
rom__subcmd__weaver__subcmd__save__subcmd__export__subcmd__schema)
|
|
2899
2983
|
opts="-n -v -q -y -h --game --rom-sha1 --dry-run --json --jsonl --progress --no-progress --log-level --verbose --debug --quiet --dep-trace --color --no-color --yes --help"
|
|
2900
2984
|
if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
|
|
@@ -2948,7 +3032,7 @@ _rom__weaver() {
|
|
|
2948
3032
|
return 0
|
|
2949
3033
|
;;
|
|
2950
3034
|
rom__subcmd__weaver__subcmd__save__subcmd__help)
|
|
2951
|
-
opts="identify inspect get export-schema set help"
|
|
3035
|
+
opts="list-games create identify inspect get export-schema set help"
|
|
2952
3036
|
if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
|
|
2953
3037
|
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
2954
3038
|
return 0
|
|
@@ -2961,6 +3045,20 @@ _rom__weaver() {
|
|
|
2961
3045
|
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
2962
3046
|
return 0
|
|
2963
3047
|
;;
|
|
3048
|
+
rom__subcmd__weaver__subcmd__save__subcmd__help__subcmd__create)
|
|
3049
|
+
opts=""
|
|
3050
|
+
if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
|
|
3051
|
+
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
3052
|
+
return 0
|
|
3053
|
+
fi
|
|
3054
|
+
case "${prev}" in
|
|
3055
|
+
*)
|
|
3056
|
+
COMPREPLY=()
|
|
3057
|
+
;;
|
|
3058
|
+
esac
|
|
3059
|
+
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
3060
|
+
return 0
|
|
3061
|
+
;;
|
|
2964
3062
|
rom__subcmd__weaver__subcmd__save__subcmd__help__subcmd__export__subcmd__schema)
|
|
2965
3063
|
opts=""
|
|
2966
3064
|
if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
|
|
@@ -3031,6 +3129,20 @@ _rom__weaver() {
|
|
|
3031
3129
|
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
3032
3130
|
return 0
|
|
3033
3131
|
;;
|
|
3132
|
+
rom__subcmd__weaver__subcmd__save__subcmd__help__subcmd__list__subcmd__games)
|
|
3133
|
+
opts=""
|
|
3134
|
+
if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
|
|
3135
|
+
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
3136
|
+
return 0
|
|
3137
|
+
fi
|
|
3138
|
+
case "${prev}" in
|
|
3139
|
+
*)
|
|
3140
|
+
COMPREPLY=()
|
|
3141
|
+
;;
|
|
3142
|
+
esac
|
|
3143
|
+
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
3144
|
+
return 0
|
|
3145
|
+
;;
|
|
3034
3146
|
rom__subcmd__weaver__subcmd__save__subcmd__help__subcmd__set)
|
|
3035
3147
|
opts=""
|
|
3036
3148
|
if [[ ${cur} == -* || ${COMP_CWORD} -eq 4 ]] ; then
|
|
@@ -3097,6 +3209,24 @@ _rom__weaver() {
|
|
|
3097
3209
|
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
3098
3210
|
return 0
|
|
3099
3211
|
;;
|
|
3212
|
+
rom__subcmd__weaver__subcmd__save__subcmd__list__subcmd__games)
|
|
3213
|
+
opts="-n -v -q -y -h --dry-run --json --jsonl --progress --no-progress --log-level --verbose --debug --quiet --dep-trace --color --no-color --yes --help"
|
|
3214
|
+
if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
|
|
3215
|
+
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
3216
|
+
return 0
|
|
3217
|
+
fi
|
|
3218
|
+
case "${prev}" in
|
|
3219
|
+
--log-level)
|
|
3220
|
+
COMPREPLY=($(compgen -W "off error warn info debug trace" -- "${cur}"))
|
|
3221
|
+
return 0
|
|
3222
|
+
;;
|
|
3223
|
+
*)
|
|
3224
|
+
COMPREPLY=()
|
|
3225
|
+
;;
|
|
3226
|
+
esac
|
|
3227
|
+
COMPREPLY=( $(compgen -W "${opts}" -- "${cur}") )
|
|
3228
|
+
return 0
|
|
3229
|
+
;;
|
|
3100
3230
|
rom__subcmd__weaver__subcmd__save__subcmd__set)
|
|
3101
3231
|
opts="-n -o -v -q -y -h --game --rom-sha1 --dry-run --force --output --json --jsonl --progress --no-progress --log-level --verbose --debug --quiet --dep-trace --color --no-color --yes --help"
|
|
3102
3232
|
if [[ ${cur} == -* || ${COMP_CWORD} -eq 3 ]] ; then
|