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