Arabic Text Repair

Strip diacritics and tatweel, convert digits, tidy pasted text

calendar_today Last updated: August 22, 2026

What to do to it

Each repair is its own switch rather than one clean-up button, because folding أ إ آ into ا is right for a search index and wrong for a quotation. Applied in your browser — nothing is sent anywhere.

lightbulb

Sahel's Arabic text repair tool removes diacritics and tatweel, converts ١٢٣ to 123 and back, normalises the hamza forms, alif maqsura and ta marbuta, and cleans text pasted out of a PDF of its invisible characters and broken spacing — with each repair its own switch.

help_outline

How does this tool work?

1

Paste the text

From a PDF, a web page, or anywhere else.

2

Switch on what you need

Diacritics, tatweel, digits, or letter normalisation.

3

Copy the result

The repaired text updates as you flip the switches.

Frequently asked questions

How do I remove diacritics from Arabic text? expand_more
Paste the text and switch on "Remove diacritics": every fatha, damma, shadda and sukun goes and the letters are left untouched. Useful before publishing or searching, or when the marks upset a font's spacing.
How do I convert Arabic-Indic digits to Latin ones? expand_more
Switch on "Convert ١٢٣ to 123" and the digits are replaced while the letters stay as they are. The reverse is available too, and the two are mutually exclusive — turning one on turns the other off, because asking for both is a mistake rather than an instruction.
What is normalising letters for? expand_more
It folds أ, إ and آ onto ا, ى onto ي and ة onto ه. That is right for a search index, where you want «احمد» to find «أحمد», and wrong for a quotation, where it alters the text you are reproducing. Hence its own switch rather than part of a single clean-up button.
Why does text pasted from a PDF come out broken? expand_more
Because it carries zero-width characters — spaces, joiners and direction marks — along with repeated spaces and a space before punctuation. The "Tidy spacing and invisible characters" switch removes all of them while keeping paragraph breaks, which carry meaning.