Skip to content

barnevis/parsneshan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

پارس‌نشان (ParsNeshan)

پارس‌نشان زبان License: MIT

یک کتابخانه مفسر مارک‌داون قدرتمند و شخصی‌سازی‌شده برای زبان فارسی، با پشتیبانی کامل از محتوای دوجهته (RTL/LTR).

«پارس‌نشان» بر پایه کتابخانه فوق‌العاده markdown-it ساخته شده و قابلیت‌های ویژه‌ای برای نویسندگان فارسی‌زبان به آن اضافه کرده است تا تجربه نوشتن و خواندن محتوای فنی و ادبی به زبان فارسی را بهبود بخشد.

این کتابخانه با استفاده از وب‌گاه lmarena و با کمک مدل‌های gemini-2.5 pro و claude-opus-4-20250514 پیاده‌سازی شده است.

ویژگی‌ها

  • تشخیص خودکار جهت متن: هر پاراگراف، لیست یا جدول به طور خودکار راست‌چین یا چپ‌چین می‌شود.
  • پشتیبانی از اعداد فارسی: لیست‌های مرتب را می‌توانید با اعداد فارسی (۱. ۲. ۳.) بنویسید.
  • جعبه‌های توضیحی: جعبه‌های زیبا برای هشدار، توجه، نکته، مهم و احتیاط.
  • نمایش شعر: بلوک مخصوص برای نمایش اشعار فارسی با قالب‌بندی صحیح و خوانا.
  • بازبینه‌ها (Checklists): پشتیبانی کامل از لیست کارها (- [x]).
  • هایلایت متن: هایلایت کردن متن برای تاکید بیشتر.
  • و تمام قابلیت‌های استاندارد مارک‌داون.

سینتکس سفارشی «پارس‌نشان»

در اینجا لیستی از تمام قالب‌بندی‌های ویژه‌ای که به مارک‌داون استاندارد اضافه شده است را مشاهده می‌کنید.

جعبه‌های توضیحی

برای جلب توجه خواننده به نکات مهم از جعبه‌های توضیحی استفاده کنید.

سینتکس:

...توجه
این یک پیام توجه است. شما می‌توانید **قالب‌بندی‌های** مارک‌دوان را *درون* این جعبه‌ها نیز استفاده کنید.
...

...هشدار
مراقب باشید! این یک عملیات حساس است.
...

...نکته
این یک نکته مفید برای کاربران است.
...

...مهم
این بخش را حتما مطالعه کنید.
...

...احتیاط
تغییر دادن این تنظیمات ممکن است باعث از کار افتادن برنامه شود.
...

نمایش شعر

اشعار را با قالب‌بندی کلاسیک و خوانا نمایش دهید. هر بیت (دو مصرع) باید در دو خط جداگانه نوشته شود و بین بیت‌ها یک خط خالی قرار گیرد.

سینتکس:

...شعر
بنی آدم اعضای یکدیگرند
که در آفرینش ز یک گوهرند

چو عضوی به درد آورد روزگار
دگر عضوها را نماند قرار
...

هایلایت متن

برای تاکید روی کلمات یا عبارات کلیدی، آن‌ها را هایلایت کنید.

سینتکس:

این یک متن ==بسیار مهم== است که باید دیده شود.

لیست مرتب با اعداد فارسی

نیازی نیست اعداد را به انگلیسی تایپ کنید. «پارس‌نشان» به طور خودکار لیست‌های مرتب با اعداد فارسی را تشخیص می‌دهد.

سینتکس:

۱. آیتم اول
۲. آیتم دوم
   ۱. آیتم تودرتو
۳. آیتم سوم

بازبینه (Checklist)

لیست کارها را به راحتی ایجاد کنید.

سینتکس:

- [x] اولین کار انجام شد
- [ ] دومین کار باقی مانده است
- [ ] سومین کار

دموی زنده

شما می‌توانید کتابخانه «پارس‌نشان» را به صورت زنده در لینک زیر امتحان کنید:

مشاهده دموی زنده

نصب و استفاده

استفاده ساده

برای استفاده از «پارس‌نشان» با تنظیمات پیش‌فرض، فایل‌های زیر را به همراه کتابخانه اصلی markdown-it به صفحه خود اضافه کنید:

<!-- استایل‌های الزامی پارس‌نشان -->
<link rel="stylesheet" href="path/to/styles/parsneshan.css">
<!-- استایل‌های پایه مارک‌داون (اختیاری - اگر سیستم CSS خودتان را دارید نیازی نیست) -->
<link rel="stylesheet" href="path/to/styles/parsneshan-base.css">

<!-- کتابخانه اصلی -->
<script src="https://cdn.jsdelivr.net/npm/markdown-it@14.1.0/dist/markdown-it.min.js"></script>
<!-- کتابخانه پارس‌نشان -->
<script src="path/to/parsneshan.js"></script>

<script>
  const parsneshan = createParsNeshan();
  const htmlResult = parsneshan.render("## سلام دنیا!");
  console.log(htmlResult);
</script>

استفاده پیشرفته (با پلاگین‌های اضافی)

شما می‌توانید به راحتی هر پلاگین دیگری از اکوسیستم markdown-it را به «پارس‌نشان» اضافه کنید. برای مثال، برای اضافه کردن پلاگین markdown-it-emoji:

<!-- ... فایل‌های CSS و JS قبلی ... -->
<script src="https://cdn.jsdelivr.net/npm/markdown-it-emoji@3.0.0/dist/markdown-it-emoji.min.js"></script>

<script>
  const parsneshan = createParsNeshan({
    plugins: [ window.markdownitEmoji ]
  });

  const htmlResult = parsneshan.render("پارس‌نشان عالیه! :tada:");
  console.log(htmlResult);
</script>

استفاده در Node.js

«پارس‌نشان» از محیط Node.js نیز پشتیبانی می‌کند:

npm install markdown-it
const createParsNeshan = require('./parsneshan.js');

const parsneshan = createParsNeshan();
const htmlResult = parsneshan.render("## سلام دنیا!");
console.log(htmlResult);

امنیت

⚠️ هشدار امنیتی

به صورت پیش‌فرض، پردازش HTML خام در ورودی غیرفعال است تا از حملات XSS جلوگیری شود. اگر نیاز به استفاده از HTML خام دارید، می‌توانید آن را فعال کنید:

const parsneshan = createParsNeshan({ html: true });

توجه: فعال کردن این گزینه فقط در صورتی توصیه می‌شود که محتوای ورودی کاملاً قابل اعتماد باشد.

مجوز

این پروژه تحت مجوز MIT منتشر شده است. برای اطلاعات بیشتر فایل LICENSE را مطالعه کنید.

About

یک تجزیه‌کننده‌ی قدرتمند و قابل تنظیم Markdown برای زبان فارسی

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors