First-occurrence-wins dedupe
The op walks every line in order, tracks which values have been seen (via a Set), and keeps only the first of each. Subsequent occurrences are skipped. Same op as Dedupe - two URLs for the same tool, differently framed.
Default comparison key lowercases and trims each line before checking the Set. Flip Case sensitive on to treat `Apple` and `apple` as distinct values (both kept). Flip Trim off to treat ` apple ` (with spaces) as different from `apple`.
For finding the duplicates instead (a report of which values repeat), use Find duplicates. For keeping only items that appear exactly once (dropping ALL copies of repeaters), use Find unique items.
How to use remove repeating list items
- 1Paste your list into the input panel
- 2Output drops every repeat - first occurrence kept, subsequent dropped
- 3Toggle Case sensitive to treat case differences as distinct
- 4Toggle Trim off to treat whitespace differences as distinct
- 5Original line order is preserved
Keyboard shortcuts
Drive ListShift without touching the mouse.
What this tool actually does
First-occurrence dedupe via Set-based tracking.
Keeps first occurrence
In `apple / banana / apple / orange / banana`, the second `apple` and second `banana` are dropped. Result: `apple / banana / orange`.
Preserves original order
No sorting. Items stay in the positions their first occurrences took in the input.
Case-insensitive by default
`Apple`, `APPLE`, `apple` all collapse to one. Flip Case sensitive on to treat them as distinct.
Trim-aware by default
`apple`, ` apple`, `apple ` all compare equal. Flip Trim off to treat them as distinct.
Blank lines pass through the check
Blanks are part of the line set - if you have two blanks, the second is dropped as a dup. To remove blanks entirely, chain Remove empty lines.
Worked example
Second `apple` and second `banana` dropped. Order preserved.
apple banana apple orange banana
apple banana orange
Settings reference
How each option shapes the output using the sample above.
| Setting | What it does | Effect on the sample |
|---|---|---|
| Case sensitive: off (default), Trim: on (default) | `Apple` = `apple` = ` apple ` | Standard dedupe |
| Case sensitive: on | `Apple` ≠ `apple` | Both kept if present |
| Trim: off | Whitespace variations count | ` apple` stays alongside `apple` |
| Blank lines (automatic) | First blank kept, subsequent blanks dropped | Chain Remove empty lines to drop all |
| Line order (automatic) | First occurrence wins | No sorting - original sequence kept |