A simple YAML sequence extractor
The parser walks the YAML line by line with a regex rather than a full YAML library - it is fast, forgiving, and handles the cases most lists actually look like. Lines matching `- item` are captured (with surrounding single/double quotes stripped). When Include mapping keys is on, lines matching `key: value` are also captured and emitted either as `key: value` or just `key` when the value is empty.
It does not attempt to resolve anchors, merge tags (`<<`), block scalars (`|`, `>`), or deeply nested structures. A flat sequence works. A top-level sequence under a mapping (`items:\n - x`) works because the `- x` lines still match. Anchors, complex types, and multi-line scalars are skipped or handled imperfectly.
Output format wraps each extracted item: plain (default) emits as-is, bullets prepends `• `, numbered prepends `N. `, indented prepends four spaces. Trim (on by default) strips leading and trailing whitespace per item after extraction. The combination covers every everyday "YAML list → something I can paste" need without dragging in a full parser.
How to use convert yaml to a list
- 1Paste your YAML into the input panel
- 2Toggle Include mapping keys if your YAML contains `key: value` lines you want captured
- 3Pick Format: Plain (default), Bulleted, Numbered, or Indented
- 4Leave Trim on unless you want raw indentation preserved on extracted items
- 5Copy the list or feed it forward - pair with convert-a-list-to-yaml to round-trip
Keyboard shortcuts
Drive ListShift without touching the mouse.
What this extractor actually does
Regex-based parsing, sequence-first, four formatting modes.
Regex-based, not a full YAML library
Lines matching `- value` are captured; lines not matching are ignored. Fast and predictable for everyday list-shaped YAML; limited for anchors, merge tags, and block scalars.
Automatic quote stripping on sequence entries
A captured item like `- "my value"` or `- 'my value'` has the surrounding quotes removed. Inner quotes are preserved. Matches YAML's own quoting semantics closely enough for most data.
Optional mapping-key capture
With Include mapping keys on, lines matching `key: value` (at any indent) are also captured. Empty-value keys emit just `key`; filled ones emit `key: value`. Off by default because most users only want sequence entries.
Four output formats
Plain (default) emits each item verbatim. Bulleted prepends `• `. Numbered prepends `1. `, `2. `, … per line. Indented prepends four spaces. Use Bulleted / Numbered / Indented when the next tool or target format expects the marker.
Trim post-processing
After extraction, Trim (on by default) strips leading and trailing whitespace from each captured item. Applies equally to sequence entries and mapping-key lines. If you want the raw indentation preserved, turn it off.
Worked example
Three `- item` lines extracted into a plain list.
items: - apple - banana - cherry
apple banana cherry
Settings reference
How each option shapes the extracted list using the sample above.
| Setting | What it does | Effect on the sample |
|---|---|---|
| Format: Plain (default) | Each item on its own line, no prefix | `apple` / `banana` / `cherry` |
| Format: Bulleted | Prepends `• ` to each item | `• apple` / `• banana` / `• cherry` |
| Format: Numbered | Prepends `1. `, `2. `, … per line | `1. apple` / `2. banana` / `3. cherry` |
| Format: Indented | Prepends four spaces | ` apple` / ` banana` / ` cherry` |
| Include mapping keys: on | Also captures `key: value` lines; empty-value keys emit just the key name (no colon), filled keys emit `key: value` | Adds `items` (no colon, because the `items:` key in the sample has no value on the same line) at the top |
| Trim (default on) | Strips whitespace per item | No visible change on the sample |