Markdig لـ C# (.NET): دليل شامل مع أمثلة

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

Markdig لـ C# (.NET): الدليل الشامل

Markdig هو محلل Markdown عالي الأداء ومُدار بالكامل لمنصة .NET، ومكتوب بلغة C#. يوفّر للمطورين أداة قوية ومرنة لتحويل نصوص Markdown إلى HTML و XAML وصيغ أخرى. على عكس العديد من المكتبات الأخرى، صُمم Markdig مع التركيز على الأداء وقابلية التوسع والالتزام الصارم بمواصفات CommonMark. وهذا يجعله الخيار الأمثل لإنشاء أنظمة إدارة المحتوى والمدونات ومواقع التوثيق وتطبيقات الدردشة وأي مشاريع أخرى تتطلب معالجة Markdown.

لماذا تحتاج هذه المكتبة؟ في تطوير الويب الحديث، أصبح Markdown المعيار الفعلي لكتابة التوثيق والمقالات والرسائل. ولكن لعرضه في المتصفح، يجب تحويله إلى HTML. يقوم Markdig بهذه المهمة بسرعة وكفاءة. بالإضافة إلى ذلك، يدعم العديد من الإضافات مثل الجداول والحواشي والنص المشطوب والروابط التلقائية والرموز التعبيرية (عبر حزم إضافية) وغيرها الكثير، مما يتجاوز نطاق CommonMark الأساسي. يمكنك بسهولة تخصيص خط المعالجة عن طريق إضافة الإضافات التي تحتاجها فقط، مما يمنحك تحكماً كاملاً في الوظائف والأداء.

يشتهر Markdig أيضاً بموثوقيته. يُستخدم بنشاط في مشاريع كبيرة مثل المولد الثابت للمواقع Statiq ومنصة التوثيق DocFX وغيرها الكثير. بفضل بنيته المعيارية، لا يمكنك فقط استخدام الإضافات المدمجة، بل يمكنك أيضاً إنشاء إضافاتك الخاصة، مما يفتح آفاقاً لا حدود لها تقريباً للتخصيص. في هذه المقالة، سنستعرض بالتفصيل عملية التثبيت، والطرق الأساسية، وسنقدم أمثلة عملية ونصائح لاستخدام Markdig بفعالية.

التثبيت

يتم تثبيت Markdig في مشروع .NET عبر مدير الحزم NuGet. يمكنك استخدام وحدة تحكم مدير الحزم أو واجهة Visual Studio أو .NET CLI. فيما يلي الطرق الثلاث.

عبر .NET CLI (موصى به):

dotnet add package Markdig

عبر وحدة تحكم مدير الحزم (Package Manager Console):

Install-Package Markdig

عبر واجهة Visual Studio:
افتح "إدارة حزم NuGet" (انقر بزر الماوس الأيمن على المشروع -> إدارة حزم NuGet)، ابحث عن "Markdig" وانقر على "تثبيت".

بعد التثبيت، ستتم إضافة مرجع إلى التجميعة Markdig.dll إلى مشروعك، ويمكنك البدء في استخدام المكتبة.

بداية سريعة

لنبدأ بأبسط مثال: تحويل نص Markdown إلى HTML.

using Markdig;

string markdownContent = "# مرحباً بالعالم!\n\nهذا نص **عريض** ونص *مائل*.";
string htmlContent = Markdown.ToHtml(markdownContent);

Console.WriteLine(htmlContent);
// الإخراج:
// <h1>مرحباً بالعالم!</h1>
// <p>هذا نص <strong>عريض</strong> ونص <em>مائل</em>.</p>

كما ترى، الأمر بسيط جداً. الطريقة الثابتة Markdown.ToHtml() تقوم بكل العمل نيابةً عنك. لكن هذا مجرد غيض من فيض. بعد ذلك سنستعرض إمكانيات أكثر تقدماً.

الطرق والفئات الأساسية

للتحكم الدقيق في معالجة Markdown، يوفر Markdig مجموعة من الفئات والطرق. دعنا نستعرض 8 منها رئيسية.

1. Markdown.ToHtml(string markdown)

التوقيع: public static string ToHtml(string markdown)

الوظيفة: تحويل نص Markdown إلى نص HTML باستخدام خط الأنابيب (Pipeline) الافتراضي مع إضافات CommonMark.

string html = Markdown.ToHtml("**Hello** *World*");
Console.WriteLine(html); // <p><strong>Hello</strong> <em>Worl                    

توصيات