What this tool does
The same word translated two different ways, names and places drifting with machine translation, someone else's subtitles that need to match your own conventions — all of these share one trait: what changes is a word, not the structure. This page changes words only.
- Unify names — people, places and proper nouns stay consistent throughout.
- Fix machine errors — a term the machine translated wrongly is replaced across the whole file.
- Adopt your own usage — rework someone else's subtitles to your conventions.
- SRT / VTT / ASS / SBV / LRC / TXT — all six formats are recognised.
Two inputs: subtitles and a term table
The "1 Add subtitles" column on the left takes a subtitle file, or you can paste the content straight in; if you picked the wrong file, click "Clear".
The "2 Term table" column on the right holds the rules. One rule per line, with the old term and the new term separated by `->` , `=>` , `→` or a Tab — all four work. Lines starting with `#` are comments and take no part in replacement.
If you are unsure about the format, click "Fill in an example" and edit that.

How to write the term table
One rule per line: the current term on the left, what it should become on the right. For example `Thor -> Donar` replaces every "Thor" in the file with "Donar".
Comments start with `#` and are handy for labelling a group of rules (for example "# season 1 name fixes"), and for switching a rule off temporarily — just put a `#` in front instead of deleting it.
Rules run from top to bottom; text produced by one rule is scanned again by the rules below it. When order matters (say, replace A with B first and then B with C), keep that in mind.

What the three switches do
Scope: `all` / `first line only` / `second line only`. In a bilingual file, pick "second line only" when you only want to change the translation; entries that have just one line stay untouched under either single-line setting — the tool does not guess which side is the original.
Whole word: replaces only terms that stand alone as a word, so `art` will not touch `start`. For languages that do not separate words with spaces, such as Chinese and Japanese, this switch has no effect — replacement works on substrings there.
Case sensitive: off by default, so `CEO` and `ceo` are both replaced; when ticked, only the exact same spelling is replaced.

Every change listed, every change reversible
"3 Result" shows the replaced subtitles and also lists every change: which cue, which line, from what to what.
If you do not want one of them, click it in the list to revert just that entry — no need to edit the term table and rerun. When you are happy, click "Download" or "Copy".

What is left untouched
Timelines, ASS style lines and VTT `NOTE` blocks are not touched by a single character. Replacement applies to dialogue text only, never to structural lines.
The term table never modifies your subtitle file automatically — the result is a new output and the original stays as it is.
Common questions
Why was a term not replaced? Check the scope first: with "second line only" selected, entries that have just one line stay untouched. Then check whole-word matching, which stops matches that are not standalone words.
Why does Chinese still replace substrings with whole-word matching ticked? That is expected. Chinese and Japanese do not separate words with spaces, so the tool cannot determine word boundaries and whole-word matching has no effect there.
How do I roll everything back after a mistake? Revert entries one by one in the change list; to start over entirely, clear the term table and add the subtitles again.
Can ASS style lines be changed by accident? No. Style lines and `NOTE` blocks are out of scope; only dialogue text takes part.
Privacy
Subtitles and the term table are processed entirely in the browser: nothing is uploaded and nothing goes through a server. The term table is not stored, so it is empty the next time you open the page.
Related tools and guides
Whether to build a term table and how to maintain one across a season, see Term tables: keeping a season consistent; if the content is dirty (watermarks, SDH cues) run Subtitle cleaning first; once the names are settled and you need other languages go to Subtitle translation; and run the result through Subtitle QC.