مُنسِّق TOML والمدقِّق

الصق TOML، نسِّق بتخطيط TOML 1.0 القياسي أو تحقق من الصياغة. بدون رفع.

  1. الصق TOML في منطقة النص اليمنى.
  2. انقر «تنسيق» للذهاب والعودة عبر @iarna/toml وإنتاج التخطيط القانوني.
  3. انقر «تحقق» لفحص الصياغة دون تعديل المدخل.
  4. تشير الأخطاء إلى السطر والعمود المخالف.
ماذا تفعل؟

يحلّل TOML بـ @iarna/toml في وضع TOML 1.0 ويعيد إصداره بتخطيط قانوني — المفاتيح قبل الجداول الفرعية، اقتباس متسق، حذف شرطات سفلية للأعداد الصحيحة. يفحص زر «تحقق» الصياغة وفق المواصفة دون تغيير المدخل. تُحذَف التعليقات أثناء الذهاب-والعودة (لا يستطيع منسِّقو TOML عمومًا الحفاظ عليها عبر دورة تحليل-وإصدار).

مثال

مدخل TOML غير مرتب:

[server]
host="localhost"
port=8080

name="myapp"

مخرج منسَّق:

name = "myapp"

[server]
host = "localhost"
port = 8080

أخطاء TOML الشائعة وكيفية إصلاحها

لـ TOML 1.0 قواعد أصرم من YAML أو JSON. تغطي الأنماط أدناه معظم حالات فشل المحلِّل.

  • سلاسل بدون اقتباس. `name = Ada` غير صالح. استخدم علامات اقتباس مزدوجة: `name = "Ada"`.
  • إعادة تعريف جدول. تعريف `[a]` مرتين خطأ. يجب ألا يظهر كل رأس جدول إلا مرة واحدة كحد أقصى. ادمج المفاتيح في كتلة `[a]` واحدة.
  • مفاتيح على المستوى الأعلى بعد جدول. بمجرد أن تكتب `[section]`، تنتمي كل المفاتيح اللاحقة لذلك القسم. يجب أن تأتي المفاتيح قبل أول رأس جدول لها. يعيد المنسِّق ترتيب ذلك لك، لكن المدخل الخام يجب أن يكون صالحًا أصلًا.
  • تاريخ-وقت بدون منطقة زمنية. `d = 2026-04-26T12:00:00` (دون Z أو إزاحة) «تاريخ-وقت محلي». يُحلَّل، لكن المستهلكين بأسلوب JSON قد لا يجدون طريقة لتمثيل المحلية. استخدم `2026-04-26T12:00:00Z` لـ UTC.
  • توسيع جدول سطري. الجداول السطرية `point = {x=1, y=2}` مغلقة ومكتفية بذاتها. لا يمكنك لاحقًا كتابة `point.z = 3`. استخدم صياغة الكتلة المعيارية `[point]` للتوسيع.
  • لبس تهريب الاقتباس الثلاثي. `"""..."""` (متعدد الأسطر الأساسي) يعالج التهريب؛ بينما `\'\'\'...\'\'\'` (متعدد الأسطر الحرفي) لا يعالجه. خلط الاثنين أكثر أخطاء السلاسل متعددة الأسطر شيوعًا.
الأسئلة الشائعة

هل يغيّر التنسيق بياناتي؟

فقط التخطيط — تُعاد تنظيم المفاتيح ليأتي البدائيون قبل الجداول الفرعية (قاعدة TOML)، تُطبَّع المسافات، وتُزال الشرطات السفلية في الأعداد الصحيحة (دلالات TOML). لا تتغيَّر القيم نفسها.

هل تُحفَظ تعليقات TOML؟

لا. يحذف @iarna/toml التعليقات أثناء دورة تحليل-وإصدار. لتنسيق يحفظ التعليقات ستحتاج مكتبة أخرى تحتفظ بمعلومات موضع المصدر.

هل يتحقق هذا من TOML 1.0؟

نعم. يتبع @iarna/toml TOML 1.0 — بما في ذلك السماح بمصفوفات بأنواع مختلطة، ومفاتيح منقَّطة، وقواعد سلاسل منقَّحة. المدخلات التي تعتمد على سلوك TOML 0.5 الحصري (مصفوفات متجانسة مطلوبة) ستُحلَّل هنا أيضًا، لكنها قد تنكسر على محلِّلات 0.5 الأكثر صرامة.

ما حجم ملف TOML الذي يمكنه التعامل معه؟

حتى نحو 30 ميغابايت قبل أن تتباطأ منطقة النص. معظم ملفات الإعدادات أقل بكثير من 1 ميغابايت.

هل يُرفَع TOML الخاص بي؟

لا. كل شيء يعمل في متصفحك — يُحلَّل مدخلك ويُعاد تسلسله بـ JavaScript على هذه الصفحة ولا يُرسَل إلى أي خادم.

لماذا يعيد المنسِّق ترتيب مفاتيحي؟

يتطلَّب TOML 1.0 أن تظهر المفاتيح ذات المستوى الأعلى (البدائيون) قبل أي رأس جدول داخل النطاق نفسه. يُطبِّق المنسِّق ذلك بترتيب البدائيين أمام الجداول الفرعية. إن كان مدخلك الأصلي بترتيب مختلف، فإن خطوة التنسيق تطبِّعه.