Add a suffix to list items

Paste a list and append a suffix to every line. Default suffix is `;`. Any string works - a semicolon for SQL `IN (...)` fodder, `,` for CSV glue, `</li>` for HTML fragments, or a trailing space for column padding.

Input
Ready
Output
Live

One option, one rule

The Suffix field is emitted verbatim to the end of every line - including blank lines. There is no trimming, no skipping, no deduplication. If you paste five lines, you get five lines out, each with your suffix appended.

This is intentional: suffix + trailing newline joins are the building blocks for SQL value lists, CSV row endings, and `</li>` closers. Silently dropping blanks would break row counts.

If you only want non-blank lines suffixed, chain Remove empty lines first. To strip a suffix later, use Remove suffixes.

How to use add a suffix to list items

  1. 1Paste your list into the input panel
  2. 2Type your suffix text in the Suffix field (default `;`)
  3. 3Output appends the suffix verbatim to every line
  4. 4Blank lines still receive the suffix - run Remove empty lines first if you want them dropped
  5. 5Copy or download the result

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, applied verbatim to every line.

Any string as suffix

Single character (`;`, `,`, `.`), short string (` - done`, `</li>`), or multi-byte character all work. Emitted exactly as typed.

Applied to every line

Including blank lines. `line + suffix` happens unconditionally - nothing is skipped, trimmed, or deduped.

No trimming or escaping

Line content is emitted verbatim. If lines have trailing whitespace, the suffix lands after that whitespace. Chain trim first if alignment matters.

Reversible

Remove suffixes strips trailing punctuation and whitespace. For non-standard suffixes, use Replace with your suffix as Find.

Mirror of Add a prefix

Add a prefix is the same idea at the other end - plain text, styled counters, or task checkboxes at line start.

Worked example

Suffix ` - Fresh` appended to every line.

Input
Apple
Banana
Cherry
Output
Apple - Fresh
Banana - Fresh
Cherry - Fresh

Settings reference

How the Suffix field shapes the output using the sample above.

Setting What it does Effect on the sample
Suffix: `;` (default) Appends a semicolon `Apple;` / `Banana;` / `Cherry;`
Suffix: `,` Comma - useful for CSV row fragments `Apple,` / `Banana,` / `Cherry,`
Suffix: `</li>` HTML list-item closer `Apple</li>` / etc.
Blank-line behaviour (automatic) Blank lines also receive the suffix An empty line becomes `;` (or whatever you typed)

FAQ

Does the tool skip blank lines?
No. Every line including blanks gets the suffix appended. If that is not what you want, run Remove empty lines first.
Can I use multi-character suffixes like `</li>`?
Yes. The Suffix field accepts any string. It is emitted verbatim at the end of every line.
How do I remove suffixes later?
For standard trailing punctuation (`;`, `,`, `.`) + whitespace, use Remove suffixes. For custom suffixes, use Replace with your suffix string in the Find field.
What is the difference between this and Wrap?
Wrap adds both a prefix and suffix at once (e.g. `<li>…</li>`). This tool only handles the suffix.
Is the suffix trimmed?
No. Whatever you type is emitted character-for-character, including leading/trailing spaces in the Suffix field itself.