منسّق Python (Ruff)

نسّق كود Python بمنسّق Ruff المتوافق مع Black والمترجم إلى WebAssembly. اختر المسافة البادئة ونمط الاقتباس؛ وتظهر أخطاء الصياغة مع السطر والعمود.

يُنزَّل منسّق Ruff عند التشغيل الأول (WebAssembly، بضعة ميغابايتات).
الإخراج

يعمل بالكامل في متصفحك. لا يتم رفع بياناتك أبدًا.

أدوات ذات صلة

عرض الكل

ما هو منسّق Python؟

يشغّل منسّق Python منسّق Ruff – منسّق Python سريع ومتوافق مع Black – مباشرة في متصفحك عبر WebAssembly. يوحّد المسافات البادئة والتباعد وعلامات الاقتباس والأسطر الفارغة والتفاف الأسطر عند 88 حرفًا.

كيفية استخدام منسّق Python

  1. الصق كود Python في مربع الإدخال أو اضغط تحميل مثال.
  2. اختر المسافة البادئة ونمط علامات الاقتباس.
  3. اضغط التنسيق. يُنزَّل محرك Ruff (WebAssembly، بضعة ميغابايت) عند التشغيل الأول؛ وتكون التشغيلات التالية فورية.
  4. انسخ الكود المنسّق أو نزّله.

مثال

الإدخال
def f(a,b):
  return {'x':a}
الإخراج
def f(a, b):
    return {"x": a}

متى تستخدم منسّق Python

استخدمه لترتيب السكربتات والمقاطع، أو تنسيق الكود للإجابات والتعليم، أو التأكد من أن الكود قابل للتحليل. يقتصر على التنسيق – لا يطبّق إصلاحات lint مثل حذف الاستيرادات غير المستخدمة أو ترتيبها. وفي المشاريع شغّل ruff format أو Black محليًا بإعداداتك.

كيف يعمل منسّق Python

تُحمَّل عند الطلب النسخة الرسمية @astral-sh/ruff-wasm-web من Ruff. تُنشأ مساحة عمل Ruff بقيمة line-length = 88 وقيم indent-width / indent-style وquote-style المختارة، ثم تُستدعى دالة format. يحلّل Ruff الكود إلى شجرة صياغة ويطبعه بأسلوب Black (مثلًا سطران فارغان بين التعريفات في المستوى الأعلى والفواصل الأخيرة السحرية). وإذا تعذّر تحليل الكود يُعرض خطأ Ruff مع السطر والعمود.

حالات الاستخدام الشائعة

  • تنسيق كود Jupyter أو السكربتات قبل مشاركتها
  • جعل كود الدروس متوافقًا مع PEP 8
  • فحص صياغة Python دون تثبيت أي شيء
  • تحويل المسافة البادئة من 2 إلى 4

ملاحظة أمنية

كل شيء يعمل محليًا داخل متصفحك؛ الكود الذي تلصقه لا يُرفع إلى أي خادم.

الأسئلة الشائعة

هل الناتج مطابق لـ Black؟

صُمّم منسّق Ruff ليكون متوافقًا مع Black؛ والاختلافات نادرة.

لماذا يبطؤ التشغيل الأول؟

تُنزَّل وحدة Ruff WebAssembly (بضعة ميغابايت) مرة واحدة ويخزّنها المتصفح مؤقتًا.

هل يرتّب الاستيرادات أو يحذف غير المستخدمة؟

لا، يُنسّق فقط. تلك إصلاحات lint (قاعدتا Ruff I وF401).

هل ينفَّذ كودي؟

لا، يُحلَّل ويُطبع فقط.

استكشف المزيد من الفئات