Line Numberer
Add a number, bullet, or custom prefix to each line. 12 presets + custom template syntax.
Add numbers, bullets, or custom prefix to each line. 12 presets + template syntax with {n} {a} {r} variables.
Line Numberer adds a prefix to every line of your text — a number, bullet, checkbox, blockquote marker, or any custom template you write. 12 quick presets cover the common cases (1., a., - bullet, [ ] checkbox, > quote, ...), and a template input lets you mix variables like {n} (number), {a} (letter a-z), {r} (roman numeral), {n:03} (zero-padded) for full control.
Use it for: converting plain notes into Markdown lists, building todo checklists in bulk, numbering steps in a tutorial, indenting code for blog posts, blockquoting transcripts, or any 'add the same prefix to every line' task that's annoying in a regular editor.
Free, no signup, browser-side. Template engine handles up to 10,000 lines in a tab without lag.
Key features
- 12 quick presets — Numbered (1., 001., 1)), lettered (a., A.), roman (i., I.), bullets (-, *), checkboxes [ ], blockquotes (>), tab indent.
- Template syntax — Use
{line}(original),{n}(number),{a}/{A}(lowercase/uppercase letter),{r}/{R}(roman),{n:03}(zero-padded),\t(tab),\n(newline). - Start at any number — Default 1, but set to any positive integer. Useful when continuing a numbered list from elsewhere.
- Skip blank lines — By default blank lines don't get a number (they stay blank). Toggle off if you want even blank lines numbered.
- Letter beyond Z — After z, the letters continue: aa, ab, ac, ... — like Excel column letters.
- Live preview — Output updates as you type. Click Copy or 'Swap in' for chaining.
How to use
- Step 1: Paste lines — One item per line. Markdown source, code snippet, list of tasks — anything.
- Step 2: Pick a preset — 12 presets cover most cases. Click any to load its template.
- Step 3 (optional): Edit the template — Use
{n},{a},{r}variables. Examples:{n:03}. {line}→001. apple.[ ] {line}→[ ] apple. - Step 4: Copy or Swap in — Output updates live. Copy to clipboard or swap in for follow-up operations.
When to use
- Convert notes to Markdown list — bullet preset turns paste into
-prefixed list - Bulk todo creation —
- [ ]preset for GitHub task list - Numbered tutorial steps — paste step descriptions → autonumber as
1. ... 2. ... 3. ... - Block quote a transcript —
>preset for email reply or blog excerpt - Indent code for a blog post — tab indent preset
- Outline with mixed levels — pick
{a}.for sub-items in an outline - Restart numbering — set 'Start at' to continue a list from elsewhere
Frequently asked questions
What's the template syntax?
Use these variables: {line} = original line text, {n} = current number (or start-at offset), {n:03} = zero-padded number (3 digits), {a}/{A} = letter (lowercase/uppercase, after z continues aa, ab...), {r}/{R} = roman numeral (lowercase/uppercase). Also \t = tab, \n = newline.
How are letters beyond Z handled?
Like Excel columns: a, b, ..., z, aa, ab, ..., az, ba, bb, etc. So 27th item is 'aa'.
Can I have a different prefix per item?
Not in v1 — same template applies to all lines. For per-item custom prefixes, use Find & Replace with regex.
What if I want numbers to skip blank lines but still count?
Default behavior: blank lines are skipped AND not counted (so the next non-blank line continues numbering as if no blank was there). To number blanks too, untoggle 'Skip blank lines'.
How do I un-number a list (strip prefixes)?
Use Pickrack's Find & Replace with regex pattern ^\d+\. (or whatever your prefix is) replaced with empty. Pickrack doesn't have a 'reverse Line Numberer' button, but Find & Replace handles it in one step.
Max input size?
10,000 lines processed in <100ms. Above 100,000 may briefly stutter while typing. Use a script for bigger.
Related tools
Sort Lines
Sort text lines alphabetically, numerically, by length, naturally, or shuffle. Optional dedup + blank filter.
Find & Replace
Find and replace text with regex + capture groups. Live preview, match count, browser-side.
Case Converter
Convert text to UPPERCASE, lowercase, Title Case, Sentence case, camelCase, snake_case, kebab-case.