Indent each item in a list

Indent each item in a list by prepending N spaces to every line. Default is 4. Every line receives the same indent - blank lines get spaces added too, and lines that already have leading whitespace get additional spaces on top.

Input
Ready
Output
Live

Flat per-line space prefix

The op is `" ".repeat(n) + line` applied to every line. There is no tab support, no per-line logic, and no nested-list awareness - already-indented lines get additional spaces, not a preserved hierarchy.

For padding to a target width (short lines get more fill, lines already at width pass through), use Left pad instead. For fixed leading text that is not spaces, use Add a prefix with the text you want.

Non-numeric or negative values collapse to zero indent: empty Spaces field, `0`, or `-2` all produce no change. Decimal values (`2.5`) are parsed as the integer part (`2`).

How to use indent each item in a list

  1. 1Paste your list into the input panel
  2. 2Set Spaces - the number of space characters to prepend (default `4`)
  3. 3Output prepends that many spaces to every line, including blanks
  4. 4To remove indentation later, use trim with Side set to Start only
  5. 5For tabs instead of spaces, use Add a prefix with an actual tab character in Prefix

Keyboard shortcuts

Drive ListShift without touching the mouse.

Shortcut Action
Ctrl ZUndo last input change
Ctrl Shift ZRedo
Ctrl Shift EnterToggle fullscreen focus on the editor
EscExit fullscreen
Ctrl KOpen the command palette to jump to any tool
Ctrl SSave current pipeline draft Plus
Ctrl PRun a saved pipeline Plus

What this tool actually does

One option, flat per-line space prefix.

Spaces only

The tool emits `U+0020` characters. For tab indentation, use Add a prefix with an actual tab character pasted into the Prefix field.

Applies to every line

Including blanks and lines that already have leading whitespace. A line that was already 2-space indented becomes 6-space indented if you add 4 more.

Not a nesting tool

Indent is additive and flat. To build nested hierarchies (Markdown sub-bullets, YAML nesting), you need a parser-aware tool - this isn't it.

Negative / non-numeric → zero

Empty field, `0`, negative numbers, and `abc` all produce no change. Decimals are floored to integers.

Blank lines become leading spaces

With Spaces `4`, an empty line becomes ` ` (four spaces). Chain Remove empty lines first if blank-but-not-empty lines would cause problems in your target format.

Worked example

Spaces `2` prepends two spaces to every line.

Input
Item 1
Item 2
Item 3
Output
  Item 1
  Item 2
  Item 3

Settings reference

How the Spaces option shapes the output using the sample above.

Setting What it does Effect on the sample
Spaces: `4` (default) Prepends four spaces to every line ` Item 1` / ` Item 2` / ` Item 3`
Spaces: `2` Prepends two spaces ` Item 1` / ` Item 2` / ` Item 3`
Spaces: `0` (or empty) No change - emits lines verbatim `Item 1` / `Item 2` / `Item 3`
Spaces: negative or non-numeric Treated as zero Same as above
Blank-line behaviour (automatic) Empty lines get Spaces × space prepended Empty line → ` ` (4 spaces, with default)

FAQ

Does the tool indent with tabs?
No - spaces only. For tab indentation, use Add a prefix with an actual tab character pasted into the Prefix field.
Does it preserve existing nested-list hierarchies?
No. Indent is additive - every line, including already-indented ones, gets the same extra spaces. This is not a hierarchy-preserving tool.
How is this different from Left pad?
Left pad fills to a target Width - shorter lines get more padding, lines already at or past Width pass through. Indent prepends a fixed count regardless of line length.
How do I remove indentation later?
Use trim with Side set to Start only to strip leading whitespace from every line.
What happens with `0` or an empty Spaces field?
No change - the input is emitted verbatim. Negative numbers and non-numeric text also collapse to zero.