منسق ومدقق TOML
مرشد
منسق ومدقق TOML
أصبح TOML (لغة توم البسيطة الواضحة) صيغة التكوين المفضلة لمشاريع Rust (Cargo.toml)، وتعبئة Python (pyproject.toml)، والعديد من الأدوات الأخرى. تم تصميمها لتكون قابلة للقراءة من قبل الإنسان، لكن ملفات التكوين التي يتم تحريرها يدويًا تنحرف حتمًا - تباعد غير متناسق، ترتيب مفاتيح مشوش، وأخطاء بناء دقيقة لا تظهر إلا في وقت البناء.
تقوم هذه الأداة بتحليل TOML الخاص بك من جانب العميل، وتتحقق من صحته مقابل المواصفات، وتعيد إصداره بتنسيق نظيف ومتناسق. كما أنها تحول TOML إلى JSON لفحوصات التوافق السريعة. لا شيء يغادر متصفحك.
كيف تستعمل
الصق محتوى TOML الخاص بك في منطقة الإدخال أو جرب أحد الأمثلة المضمنة (Cargo.toml، pyproject.toml). حدد تفضيل المسافة البادئة لديك، وقم بتبديل فرز المفاتيح الأبجدي إذا رغبت في ذلك، ويظهر الناتج المنسق على الفور. استخدم علامة التبويب JSON لرؤية البنية المحللة كـ JSON. انسخ أو قم بتنزيل النتيجة بنقرة واحدة.
سمات
- التحقق من بناء الجملة – يلتقط الأخطاء بأرقام الأسطر والرسائل الوصفية قبل أن تكسر عملية البناء الخاصة بك
- تنسيق متسق – يقوم بتطبيع المسافة البادئة، والمسافات حول علامات المساواة، والأسطر الفارغة بين الجداول
- فرز المفاتيح – اختياريًا، قم بفرز المفاتيح أبجديًا داخل كل جدول لترتيب متوقع
- مسافة بادئة قابلة للتكوين – اختر مسافتين أو 4 مسافات لتتناسب مع اصطلاحات مشروعك
- تحويل TOML إلى JSON – شاهد التكوين الخاص بك كـ JSON لتصحيح الأخطاء السريع أو التكامل مع واجهات برمجة التطبيقات
- أمثلة مضمنة – قم بتحميل تكوينات Cargo.toml أو pyproject.toml النموذجية لاختبار التنسيق فورًا
- معالجة جانب العميل – تبقى ملفات التكوين الخاصة بك في متصفحك — لا يتم إرسال أي شيء إلى خادم
متى تستخدم هذه الأداة
قم بتشغيل TOML الخاص بك عبر المنسق قبل الالتزام بتغييرات التكوين، أو عند دمج التكوينات من عدة مساهمين، أو عند الترحيل بين إصدارات TOML. يعد تحويل JSON مفيدًا بشكل خاص عندما تحتاج إلى تغذية التكوينات المستندة إلى TOML في أدوات أو واجهات برمجة تطبيقات تستخدم JSON فقط.
التعليمات
-
ما هو TOML وكيف يختلف عن YAML و JSON؟
TOML (لغة توم البسيطة الواضحة) هي صيغة ملف تكوين مصممة لتكون سهلة القراءة والكتابة. على عكس YAML، يتجنب TOML المسافات البيضاء الهامة والتداخل المعقد الذي يسبب أخطاء دقيقة. على عكس JSON، يدعم TOML التعليقات، ولديه أنواع تواريخ / أوقات أصلية، وهو أكثر سهولة في القراءة لملفات التكوين. يتبادل TOML بعض مرونة YAML مقابل القدرة على التنبؤ — هناك بشكل عام طريقة واحدة فقط للتعبير عن شيء ما في TOML.
-
ما هي جداول TOML وكيف تختلف الجداول المضمنة؟
جدول TOML هو مجموعة من أزواج المفاتيح والقيم تحت عنوان مثل [package] أو [dependencies]. يمكن تداخل الجداول باستخدام عناوين منقطعة مثل [server.database]. الجداول المضمنة هي صيغة موجزة من سطر واحد باستخدام الأقواس المتعرجة: key = { name = 'value', version = '1.0' }. الجداول العادية أفضل لقابلية القراءة مع العديد من المفاتيح، بينما تعمل الجداول المضمنة بشكل جيد للمجموعات الصغيرة من القيم المترابطة بشكل وثيق.
-
لماذا تستخدم مشاريع Rust ملف Cargo.toml بدلاً من JSON أو YAML؟
اختارت Rust صيغة TOML لـ Cargo لأنها تحقق توازنًا بين قابلية القراءة البشرية وقابلية التحليل الآلي. يقلل النوع الصريح في TOML (سلاسل، أعداد صحيحة، قيم منطقية، تواريخ) من الغموض الذي يبتلي YAML (حيث يمكن تفسير 'no' كقيمة منطقية). دعمه للتعليقات ضروري لتوثيق خيارات التبعية. بساطة الصيغة تعني أيضًا حالات حافة أقل للتحليل وسلوكًا أكثر قابلية للتنبؤ عبر الأدوات والمحررات المختلفة.
-
ما هي مصفوفات الجداول في TOML؟
تستخدم مصفوفات الجداول أقواس مزدوجة [[table_name]] لتحديد مثيلات متعددة من نفس نوع الجدول. على سبيل المثال، [[bin]] في Cargo.toml يحدد أهداف ثنائية متعددة. كل كتلة [[bin]] تضيف عنصرًا جديدًا إلى مصفوفة. هذه هي طريقة TOML لتمثيل مصفوفات الكائنات دون الضوضاء البصرية لمصفوفات JSON أو قوائم YAML القائمة على الشرطات.
-
كيف يعمل pyproject.toml لتعبئة Python؟
pyproject.toml هو ملف تكوين المشروع القياسي في Python (المحدد في PEP 518 و PEP 621). يحل محل النهج القديم setup.py و setup.cfg. يحدد جدول [build-system] متطلبات البناء، ويحتوي [project] على بيانات وصفية مثل الاسم والإصدار والتبعيات، وتوجد جداول [tool.*] لتكوين أدوات محددة مثل pytest أو black أو mypy. هذا يدمج ملفات تكوين متعددة في موقع قياسي واحد.
تثبيت ملحقاتنا
أضف أدوات IO إلى متصفحك المفضل للوصول الفوري والبحث بشكل أسرع
恵 وصلت لوحة النتائج!
لوحة النتائج هي طريقة ممتعة لتتبع ألعابك، يتم تخزين جميع البيانات في متصفحك. المزيد من الميزات قريبا!
