Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

Persian RTL Smart Direction

Fazel MajidfarFazel Majidfar73 downloads

Use RTL whenever text contains a Persian word; preserve LTR Latin tokens, symbols, and code, including Persian comments, properties, titles, and file names.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates4

This plugin automatically detects Persian/Arabic content and adjusts the text direction (RTL) for paragraphs, headings, properties, and list items. It ensures your mixed-language documents look professional without adding hidden characters.

Comparison Image


Features

  • Smart Detection: Automatically applies RTL if any Persian/Arabic character is present.
  • Context-Aware: Preserves LTR for code, URLs, and specific symbols (e.g., $, !, ^).
  • Full Support: Works in Reading View, Live Preview, and Source Mode.
  • Code Comments: Properly handles RTL in code comments while keeping syntax intact.
  • English Phrases: Keeps consecutive English words in one LTR span within Persian sentences.
  • Sentence Punctuation: Keeps sentence periods in RTL reading order and list numbers separate from English phrases.
  • Plain Text Blocks: Applies RTL to Persian content in text, txt, plain, and plaintext code fences.
  • Tables: Detects each cell independently in Reading View and Live Preview, including English words at the end of Persian text.
  • Non-destructive: Does not modify your underlying Markdown files or metadata.
  • Lightweight: No external dependencies or network required.

Examples

The plugin handles mixed-language content seamlessly:

Unity و Git را Install کنید.

// _enemyCount همیشه باید کمتر از 10 تا باشد.

شرط !Enemy را چک کنید.

Unity را نصب کنید.

Installation

Install this plugin directly via the Obsidian Community Plugins browser:

  1. Open Settings > Community plugins.
  2. Click Browse and search for "Persian RTL Smart Direction".
  3. Install and Enable.

How it works

The plugin scans blocks for Persian/Arabic characters. If found, it forces an RTL layout. It treats list items individually and respects explicitly defined HTML directions.

Use the "Refresh Persian text direction" command from the Command Palette if you need to force an immediate update.

Development checks

This plugin ships directly as main.js, styles.css, and manifest.json; no build step is required.

Run the text direction regression checks with node --test tests/direction.test.cjs. With the local plugin installed and enabled in an open vault, run node tests/run-obsidian.cjs "Vault name" to check DOM layout and CodeMirror letter order. These checks use disposable offscreen elements, preserve note contents and focus, and take no screenshots.

HealthExcellent
ReviewPassed
About
Detect Persian and Arabic characters and apply RTL direction to paragraphs, headings, properties, and list items. Preserve LTR for code, URLs, and special symbols, handle RTL in code comments without altering your Markdown or metadata, and work in Reading View, Live Preview, and Source Mode while remaining lightweight with no external dependencies.
RTLLanguages
Details
Current version
1.0.3
Last updated
2 days ago
Created
2 weeks ago
Updates
4 releases
Downloads
73
Compatible with
Obsidian 1.4.0+
Platforms
Desktop, Mobile
License
MIT
Report bugRequest featureReport plugin
Author
Fazel MajidfarFazel Majidfarfazel-majidfar
GitHubcreativearcana
fazel-majidfar
  1. Community
  2. Plugins
  3. RTL
  4. Persian RTL Smart Direction

Related plugins

RTL Support

Right-to-left (RTL) text direction support for languages like Arabic, Hebrew, and Farsi.

Simplified Chinese Word Splitting

Adds Simplified Chinese word splitting support for the editor and Vim mode.

PanGu

Add spaces between Chinese characters and English alphabet. A boon for typographically compulsive people.

GDScript Syntax Highlighting

Add live GDScript syntax highlighting to code block.

Japanese Novel Ruby

Treat ruby(Furigana) ​​marks commonly used in Japanese novels

Dictionary

A multilingual dictionary that shows word definitions in the sidebar and popover synonyms.

LanguageTool

Unofficial integration of the LanguageTool spell and grammar checker.

YouVersion Linker

Automatically link bible verses in your notes to YouVersion bible.

i18n+

Manage translations for plugins with hot-reload support and crowdsourced dictionaries.

Livecodes Playground

Client-side code editor playground - Powered by LiveCodes