Parsi RTL por Amir SHIRALI POUR
Correct text direction and Persian font for RTL languages on any site — script-ratio detection, not first-strong guessing.
Disponible en Firefox para Android™Disponible en Firefox para Android™
Scan the QR code to open this extension in Firefox for Android
Metadata de la extensión
Sobre esta extensión
Right-aligned is not right-to-left.
The usual fix for RTL text on the web is
the Unicode first-strong rule: a paragraph takes its direction from its first
strongly-directional character. That is wrong for the most common Persian
sentence shape — one that opens with an English technical term:
First-strong sees the "G", lays the entire line out left-to-right, and the
trailing parenthesis and clause order visually scramble. You end up reading a
Persian sentence from the wrong end.
Parsi RTL decides the direction of every block by SCRIPT RATIO instead: a
Persian sentence carrying English terms stays right-to-left, an English sentence
with one Persian word stays left-to-right. The decision is written onto the
element as a real
punctuation mirroring follow it too — things a CSS-only fix cannot reach.
WHAT IT DOES
• Every RTL script, not just Persian — Arabic, Urdu, Pashto, Kurdish, Sindhi,
Hebrew, Syriac, Thaana, N'Ko, Adlam.
• Works while answers stream in. AI chat replies arrive token by token, so a
one-shot pass on page load fixes nothing; a frame-batched observer keeps up
without the per-token slowdown a naive script causes.
• Your code blocks stay left-to-right — including inline code inside an RTL
sentence, and tables.
• The composer follows what you type: the input's direction updates live.
• Vazirmatn is bundled and applied only to blocks judged RTL, so icon fonts
survive. A checkbox turns the font off while keeping the direction fix.
• Per-site off switch, from the popup or with Alt+R (macOS: Option+R).
• Right-click any block to force its direction by hand; the automatic pass never
overrides your choice.
• The popup reports whether the script is live in the tab and how many blocks it
switched — you can always tell it is working.
PRIVACY
No network requests, no analytics, no account. The font ships inside the
extension instead of being fetched from a CDN. The only stored values are your
per-site off list and the font checkbox, in local storage on your machine.
Open source: https://github.com/su6i/parsi-rtl
The usual fix for RTL text on the web is
unicode-bidi: plaintext, which appliesthe Unicode first-strong rule: a paragraph takes its direction from its first
strongly-directional character. That is wrong for the most common Persian
sentence shape — one that opens with an English technical term:
Gemini web app رو Google سرو میکند (تو نمیتونی local app رو modify کنی)
First-strong sees the "G", lays the entire line out left-to-right, and the
trailing parenthesis and clause order visually scramble. You end up reading a
Persian sentence from the wrong end.
Parsi RTL decides the direction of every block by SCRIPT RATIO instead: a
Persian sentence carrying English terms stays right-to-left, an English sentence
with one Persian word stays left-to-right. The decision is written onto the
element as a real
dir attribute, so caret movement, text selection andpunctuation mirroring follow it too — things a CSS-only fix cannot reach.
WHAT IT DOES
• Every RTL script, not just Persian — Arabic, Urdu, Pashto, Kurdish, Sindhi,
Hebrew, Syriac, Thaana, N'Ko, Adlam.
• Works while answers stream in. AI chat replies arrive token by token, so a
one-shot pass on page load fixes nothing; a frame-batched observer keeps up
without the per-token slowdown a naive script causes.
• Your code blocks stay left-to-right — including inline code inside an RTL
sentence, and tables.
• The composer follows what you type: the input's direction updates live.
• Vazirmatn is bundled and applied only to blocks judged RTL, so icon fonts
survive. A checkbox turns the font off while keeping the direction fix.
• Per-site off switch, from the popup or with Alt+R (macOS: Option+R).
• Right-click any block to force its direction by hand; the automatic pass never
overrides your choice.
• The popup reports whether the script is live in the tab and how many blocks it
switched — you can always tell it is working.
PRIVACY
No network requests, no analytics, no account. The font ships inside the
extension instead of being fetched from a CDN. The only stored values are your
per-site off list and the font checkbox, in local storage on your machine.
Open source: https://github.com/su6i/parsi-rtl
Rated 0 by 0 reviewers
Permissions and data
Permisos requeridos:
- Acceder a tus datos para todos los sitios web
Data collection:
- The developer says this extension doesn't require data collection.
Más información
- Enlaces del complemento
- Versión
- 1.0.0
- Tamaño
- 138,8 KB
- Última actualización
- hace 6 días (18 de ago. de 2026)
- Categorías relacionadas
- Licencia
- MIT License
- Política de privacidad
- Leer la política de privacidad de este complemento
- Historial de versiones
- Añadir a la colección