Skip to content

إضافات Markdown وامتداداتها

تعمل الإضافات على توسيع وظائف Markdown، مما يسمح لك بإضافة ميزات مخصصة وتحسين المعالجة وإنشاء تجارب محتوى فريدة.

أنظمة الإضافات الشائعة

markdown-it (JavaScript)

javascript
const MarkdownIt = require('markdown-it');
const md = new MarkdownIt();

// تمكين الإضافات
md.use(require('markdown-it-emoji'));
md.use(require('markdown-it-footnote'));
md.use(require('markdown-it-abbr'));
md.use(require('markdown-it-container'), 'warning');

const html = md.render('# مرحباً :smile:');

Remark (JavaScript)

javascript
import {unified} from 'unified';
import remarkParse from 'remark-parse';
import remarkGfm from 'remark-gfm';
import remarkHtml from 'remark-html';

unified()
  .use(remarkParse)
  .use(remarkGfm)
  .use(remarkHtml)
  .process('# مرحباً');

Python-Markdown

python
import markdown

md = markdown.Markdown(extensions=[
    'extra',
    'codehilite',
    'toc',
    'tables'
])

html = md.convert('# مرحباً')

فئات الإضافات الشائعة

الرموز التعبيرية والأيقونات

javascript
// markdown-it-emoji
md.use(require('markdown-it-emoji'));

// الاستخدام
أنا أحب Markdown! :heart: :rocket:

الجداول والرسوم البيانية

javascript
// mermaid support
md.use(require('markdown-it-mermaid'));
markdown
\`\`\`mermaid
graph TD
  A[البداية] --> B[العملية]
  B --> C[النهاية]
\`\`\`

صناديق تخصيص الحاويات

javascript
md.use(require('markdown-it-container'), 'warning', {
  render: function (tokens, idx) {
    if (tokens[idx].nesting === 1) {
      return '<div class="warning">\n';
    } else {
      return '</div>\n';
    }
  }
});
markdown
::: warning
هذا تحذير هام!
:::

إنشاء إضافة مخصصة

markdown-it Plugin

javascript
function customPlugin(md, options) {
  // قاعدة مخصصة
  md.inline.ruler.before('emphasis', 'custom', function(state, silent) {
    // منطق معالجة مخصص
  });

  // عارض مخصص
  md.renderer.rules.custom = function(tokens, idx) {
    return '<span class="custom">' + tokens[idx].content + '</span>';
  };
}

module.exports = customPlugin;

الإضافات الموصى بها

markdown-it

  • markdown-it-emoji - دعم الرموز التعبيرية
  • markdown-it-footnote - الحواشي السفلية
  • markdown-it-abbr - الاختصارات
  • markdown-it-deflist - قوائم التعريف
  • markdown-it-container - الحاويات المخصصة
  • markdown-it-table-of-contents - جدول المحتويات

Remark

  • remark-gfm - دعم GitHub Flavored Markdown
  • remark-math - معادلات رياضية
  • remark-toc - جدول المحتويات
  • remark-frontmatter - دعم frontmatter

أفضل الممارسات

  1. الأداء: استخدام الإضافات الضرورية فقط
  2. التوافق: التحقق من توافق الإصدار
  3. الأمان: تدقيق الإضافات للثغرات الأمنية
  4. التوثيق: توثيق الإضافات المستخدمة
  5. الصيانة: تحديث الإضافات بانتظام

الخلاصة

توفر إضافات Markdown مرونة لا حصر لها لتخصيص معالجة Markdown الخاصة بك وعرضها. اختر الإضافات التي تناسب احتياجاتك والزم بأفضل الممارسات للحصول على أفضل النتائج.

موارد إضافية

بُني بواسطة www.markdownlang.com