# dsh-fa-rtl — نمایش راست‌به‌چپِ پیام‌های فارسی در DSH English | **فارسی** این پلاگین برای DeepSeek Harness (DSH): **پیام‌های فارسی مدل (و پیام‌های خودتان) در صفحه‌ی گفت‌وگو، راست‌به‌چپ و راست‌چین نمایش داده می‌شوند** — بدون اینکه متن انگلیسی خراب شود و بدون هیچ تغییری در فایل‌های برنامه‌ی DSH. --- ## چطور کار می‌کند؟ هر ردیف پیام در رابط کاربری DSH یک ظرف چپ‌به‌راست (LTR) است؛ متن فارسی داخل آن با قواعد یونیکد (UAX #9) جابه‌جا می‌شود ولی «جهتِ پایه» همچنان LTR می‌ماند — برای همین پاراگراف‌های فارسی چپ‌چین می‌مانند و علائم سجاوندی (نقطه، کاما، پرانتز، اعداد) به لبه‌ی اشتباه می‌چسبند. راه‌حل استاندارد وب، `dir="auto"` است؛ ولی پلاگین به DOM رندرشده توسط React دسترسی مستقیم ندارد. معادل CSS آن: ```css unicode-bidi: plaintext; text-align: start; ``` `unicode-bidi: plaintext` (از CSS Writing Modes 4) به هر **بلوک متن** اجازه می‌دهد جهت خودش را از اولین کاراکتر «قوی»‌ی همان بلوک بگیرد: - پاراگرافی که با فارسی شروع شود → راست‌به‌چپ و راست‌چین می‌شود؛ - پاراگرافی که با انگلیسی شروع شود → دقیقاً مثل قبل می‌ماند. یعنی یک پاسخ ترکیبی (متن فارسی + کد + جدول) به‌درستی رندر می‌شود: نثرِ فارسی RTL، کد داخل `pre` عمداً دست‌نخورده و LTR، جدول سلول‌به‌سلول، و بولت‌های لیست به سمت راست. سلکتورها فقط به ویژگی‌های پایدار `data-*` متکی‌اند که بسته‌ی رسمی `dsh-client-ui-chat` روی ردیف‌های گفت‌وگو می‌گذارد. نام کلاس‌های CSS که در بیلد تولید می‌شوند عمداً استفاده نشده‌اند تا با به‌روزرسانی‌های بعدی UI پلاگین نشکند؛ در بدترین حالت CSS فقط بی‌اثر می‌شود و به برنامه آسیبی نمی‌رسد. ## نصب پیش‌نیاز: DSH نسخه‌ی 0.2.0-rc.2 یا جدیدتر با ترکیب وب (پروفایل‌های desktop یا web). با هر Chromium/Electron موتور ≥ 105 کار می‌کند. ### از رابط وب DSH (پیشنهادی) صفحه‌ی **Plugins** در نوار کناری را باز کنید و باندل را با نشانی گیت‌هاب این مخزن نصب کنید (`github:mehdinikzad68/dsh-fa-rtl`). نصب، pnpm را در پوشه‌ی پروفایل اجرا می‌کند و باندل را به‌طور پیش‌فرض فعال می‌سازد. ### از خط فرمان ```bash dsh plugin --profile desktop add github:mehdinikzad68/dsh-fa-rtl # یا برای پروفایل web: dsh plugin --profile web add github:/dsh-fa-rtl ``` نصب باندل را معمولاً خودکار فعال می‌کند؛ اگر فعال نشد، از صفحه‌ی Plugins روشنش کنید. اگر پروفایل شما patch را فقط در startup اعمال می‌کند، یک بار برنامه را ری‌استارت کنید. ### از داخل یک نشست ایجنت از ایجنت بخواهید با ابزار `plugin_manager` و اکشن `install_bundle` باندل را با نشانی گیت‌هاب نصب کند. هر فراخوانی مدیریتی به تأیید شما نیاز دارد. ### توسعه‌ی محلی (بدون نصب) مخزن را کلون کنید و در فایل `<پوشه‌ی پروفایل>/cordis.patch.yml` ردیفی به **فایل ماژول** اضافه کنید (ESM نمی‌تواند پوشه import کند): ```yaml - insert: - id: fa-rtl name: 'C:\مسیر\به\dsh-fa-rtl\lib\index.js' ``` ## تأیید نصب 1. یک پیام فارسی بدهید؛ متن فارسی راست‌چین و راست‌به‌چپ، اعداد و علائم در جای درست، و کدها همچنان چپ‌به‌راست. 2. کنسول مرورگر: خط `[dsh-fa-rtl] active — Persian chat text now renders right-to-left` 3. در `` یک تگ `