محارف الهروب
تتيح لك محارف الهروب عرض المحارف ذات الدلالة الخاصة كما هي. أضف الشرطة العكسية \ قبل المحرف لتعطيل تأثيره الخاص.
المفهوم الأساسي للهروب
ما هو الهروب؟
بعض المحارف لها دلالة خاصة (مثل * للتأكيد). إن أردت إظهارها كما هي، استخدم الهروب.
هذا نص *مائل*.
هذا نص \*نجمة عادية\*.نتيجة العرض:
هذا نص مائل. هذا نص *نجمة عادية*.
المحارف التي تحتاج هروباً
قائمة كاملة
المحارف التالية لها دلالة خاصة في Markdown وتحتاج إلى هروب:
| المحرف | الوصف | صياغة الهروب | الاستخدام |
|---|---|---|---|
\ | شرطة عكسية | \\ | للهروب |
` | backtick | \` | شيفرة ضمن السطر |
* | نجمة | \* | تأكيد/قوائم |
_ | شرطة سفلى | \_ | تأكيد |
{} | معقوفان | \{ \} | صيغ موسعة |
[] | معقوفان مربعان | \[ \] | روابط/صور |
() | قوسان دائريان | \( \) | روابط/صور |
# | شباك | \# | عناوين |
+ | زائد | \+ | قوائم |
- | ناقص | \- | قوائم/فواصل |
. | نقطة | \. | قوائم مرتبة |
! | تعجب | \! | صور |
أمثلة شائعة
النجمة والشرطة السفلية
❌ بدون هروب:
اسم الملف هذا هو file_name_v2.txt
الصيغة هذه هي 2*3*4 = 24
✅ مع هروب:
اسم الملف هذا هو file\_name\_v2.txt
الصيغة هذه هي 2\*3\*4 = 24نتيجة العرض:
❌ بدون هروب: اسم الملف هذا هو file_name_v2.txt الصيغة هذه هي 234 = 24
✅ مع هروب: اسم الملف هذا هو file_name_v2.txt الصيغة هذه هي 2*3*4 = 24
عناوين الشباك
❌ بدون هروب:
# TODO: إكمال المهمة
✅ مع هروب:
\# TODO: إكمال المهمةنتيجة العرض:
❌ بدون هروب:
TODO: إكمال المهمة
✅ مع هروب: # TODO: إكمال المهمة
رموز القوائم
❌ بدون هروب:
السعر: 100 - 200 ريال
الخطوات: 1. التحضير 2. التنفيذ
✅ مع هروب:
السعر: 100 \- 200 ريال
الخطوات: 1\. التحضير 2\. التنفيذنتيجة العرض:
❌ بدون هروب: السعر: 100 - 200 ريال الخطوات: 1. التحضير 2. التنفيذ
✅ مع هروب: السعر: 100 - 200 ريال الخطوات: 1. التحضير 2. التنفيذ
صياغة الروابط
❌ بدون هروب:
اطلع على الوثائق [هنا](http://example.com)
✅ مع هروب (عرض الصياغة الأصلية):
اطلع على الوثائق \[هنا\]\(http://example.com\)نتيجة العرض:
❌ بدون هروب: اطلع على الوثائق هنا
✅ مع هروب (عرض الصياغة الأصلية): اطلع على الوثائق [هنا](http://example.com)
حالات خاصة
الشرطة العكسية نفسها
لعرض محرف الشرطة العكسية، تحتاج لاستخدام شرطة عكسية مزدوجة:
مسار الملف: C:\\Users\\Username\\Documents
مسار Unix: /home/user/documentsنتيجة العرض:
مسار الملف: C:\Users\Username\Documents مسار Unix: /home/user/documents
هروب backtick
عرض علامة backtick في الكود:
استخدام `` \` `` لإحاطة الكود
استخدام ``` \`\`\` ``` لإنشاء كتلة كودنتيجة العرض:
استخدام \` لإحاطة الكود استخدام \`\`\` لإنشاء كتلة كود
شرطة عكسية في نهاية السطر
الشرطة العكسية في نهاية السطر لها دلالة خاصة (إجبار سطر جديد):
السطر الأول\
السطر الثاني (إجبار سطر جديد)
السطر الأول\\
السطر الثاني (عرض الشرطة العكسية)نتيجة العرض:
السطر الأول
السطر الثاني (إجبار سطر جديد)
السطر الأول\ السطر الثاني (عرض الشرطة العكسية)
الهروب داخل الشيفرة
شيفرة ضمن السطر
في الكود السطري، لا تحتاج معظم المحارف إلى هروب:
الكود: `let result = 2 * 3 + 1;`
المسار: `C:\Users\*\Documents`نتيجة العرض:
الكود: let result = 2 * 3 + 1; المسار: C:\Users\*\Documents
كتل الشيفرة
في كتل الكود، تبقى المحارف كما هي:
```javascript
// هذه الرموز لا تحتاج إلى هروب
const pattern = /[.*+?^${}()|[\]\\]/g;
const path = "C:\\Users\\*\\Documents";
```نتيجة العرض:
// هذه الرموز لا تحتاج إلى هروب
const pattern = /[.*+?^${}()|[\]\\]/g;
const path = "C:\\Users\\*\\Documents";سيناريوهات عملية
1) وثائق تقنية
## صياغة ملف التكوين
يستخدم ملف التكوين التنسيق التالي:# سطر تعليق key = value [section]
ملاحظة:
- استخدم \# لبدء التعليق
- استخدم \[\] لتحديد القسم
- استخدم \* للدلالة على حرف بدل2) تعابير رياضية
## صيغ رياضية
معادلة خطية: y = a\*x + b
معادلة من الدرجة الثانية: y = a\*x² + b\*x + c
كسر: 1/2 = 0.5
ملاحظة: استخدم \* للدلالة على عامل الضرب3) مسارات الملفات
## نظام الملفات
مسارات Windows:
- دليل النظام: C:\\Windows\\System32
- دليل المستخدم: C:\\Users\\{username}
- دليل البرامج: C:\\Program Files\\*
مسارات Linux:
- الدليل الجذري: /
- دليل المستخدم: /home/{username}
- حرف بدل: /var/log/\*.log4) توضيح محارف خاصة
## دلالات الرموز
في البرمجة:
- \* عادة ما يدل على مؤشر أو حرف بدل
- \_ يُستخدم في تسمية (مثل \_private)
- \# يُستخدم للتعليقات أو توجيهات المعالجة المسبقة
- \[\] يدل على مصفوفة أو معاملات اختيارية
- \{\} يدل على كتلة كود أو عنصر نائبأفضل الممارسات للهروب
1) اهرب فقط عند الحاجة
✅ مُوصى به: اهرب فقط من المحارف الغامضة
اسم الملف: config.txt
السعر: $10-20
❌ غير مُوصى به: هروب مفرط
اسم الملف: config\.txt
السعر: \$10\-202) حافظ على الاتساق
✅ مُوصى به: نمط هروب موحد
أسماء المتغيرات: user\_id, item\_count, max\_size
❌ غير مُوصى به: معالجة غير متسقة
أسماء المتغيرات: user_id, item\_count, max_size3) استخدم تنسيق الشيفرة
عند وجود عدد كبير من المحارف الخاصة، فكر في استخدام تنسيق الكود:
✅ مُوصى به: استخدام تنسيق الكود
صياغة التكوين: `[section]` و `key=value`
❌ غير مُوصى به: هروب كثير
صياغة التكوين: \[section\] و key\=valueأخطاء شائعة
1) نسيان الهروب
❌ خطأ:
اسم المستخدم في GitHub الخاص بي هو user_name
اسم هذه الدالة هو get_data()
✅ صحيح:
اسم المستخدم في GitHub الخاص بي هو user\_name
اسم هذه الدالة هو get\_data()2) هروب مفرط
❌ خطأ:
اليوم هو 12\-25
اسم هذا الملف هو README\.md
✅ صحيح:
اليوم هو 12-25
اسم هذا الملف هو README.md3) خطأ في السياق
❌ خطأ: هروب داخل كتلة الكودlet path = "C:\\Users\\Name"; ← لا حاجة للهروب المزدوج
✅ صحيح:let path = "C:\Users\Name";
ناتج HTML
ناتج HTML لمحارف الهروب:
هذا نص \*نجمة\*يتحول إلى:
<p>هذا نص *نجمة*</p>المحررات والأدوات
محررات تدعم معاينة الهروب
- Visual Studio Code: Markdown Preview Enhanced
- Typora: معاينة فورية
- Mark Text: ما تراه هو ما تحصل عليه
- Obsidian: عرض فوري
أدوات فحص الهروب
<!-- قواعد markdownlint -->
MD049: اتساق علامات التأكيد
MD050: نمط علامات التأكيدقواعد ذات صلة
- قواعد التأكيد - استخدام النجمة والشرطة السفلية
- قواعد الشيفرة - محارف خاصة داخل الشيفرة
- قواعد الروابط - الأقواس المربعة والدائرية
- قواعد القوائم - رموز القوائم
التمارين
حاول عرض المحتوى التالي بشكل صحيح:
- مسار الملف:
C:\Program Files\*\config.ini - أسماء المتغيرات:
user_id،file_name،max_count - تعبير رياضي:
2*x + 3*y = 15 - صياغة التكوين:
[section]وkey=value - صياغة Markdown:
**عريض**و*مائل*
جدول مرجعي
مرجع سريع للهروب الشائع
| المحرف الأصلي | بعد الهروب | الشرح |
|---|---|---|
\ | \\ | شرطة عكسية |
* | \* | نجمة |
_ | \_ | شرطة سفلية |
# | \# | شباك |
[ | \[ | قوس مربع أيسر |
] | \] | قوس مربع أيمن |
( | \( | قوس دائري أيسر |
) | \) | قوس دائري أيمن |
+ | \+ | علامة زائد |
- | \- | علامة ناقص/شرطة |
. | \. | نقطة |
! | \! | علامة تعجب |