Skip to content

lists

Enumerate every deck, collection, and wanted list — the discovery counterpart to the list management commands (new, rename, delete) and a quick way for scripts to learn what exists before targeting a list by name.

Terminal window
./ritual lists [options]
OptionDescriptionDefault
--deckOnly list decks
--collectionOnly list collections
--wantedOnly list wanted lists
--output <format>Output format: text, json, or ndjsontext
--quietSuppress non-essential outputfalse

The three type flags are mutually exclusive; passing more than one is a usage error.

List everything:

Terminal window
./ritual lists
deck burn Burn
deck stax Winota Stax
collection main Main Binder
wanted needs Needs

Each text row is three aligned columns: the list type, the slug (the file basename, which is what other commands resolve), and the display name (a deck’s front-matter name, a flat list’s # H1).

Only decks, as JSON:

Terminal window
./ritual lists --deck --output json
[
{ "type": "deck", "slug": "burn", "name": "Burn" },
{ "type": "deck", "slug": "stax", "name": "Winota Stax" }
]

ndjson emits the same rows one JSON object per line.

Rows are sorted by type (decks, then collections, then wanted lists), then by slug. When nothing matches, the command still exits 0: text output prints (no lists), JSON output prints [], and NDJSON prints nothing.

CodeMeaning
0Success (including an empty result)
2Usage error (more than one type flag)
1Runtime error