عن المشروع
يُعد YAPF منسّق أكواد بايثون يستخدم خوارزمية مبنية على clang-format لحساب أفضل تنسيق للكود استناداً إلى إعدادات النمط المفعّلة. يهدف إلى إنتاج أكواد تبدو وكأنها مكتوبة بواسطة مبرمج يتبع دليلاً لأنماط الكتابة، مما يقلل الجهد اليدوي اللازم لصيانة الكود.
من أبرز ميزاته:
- دعم أنماط متعددة معدّة مسبقاً، بما فيها PEP8 وGoogle وFacebook ونمط YAPF المخصص.
- قابلية عالية للتخصيص من خلال مجموعة واسعة من "المفاتيح" (الإعدادات) لضبط المسافات البادئة، ووضع الأقواس، وتقسيم الأسطر، والمسافات البادئة.
- تكوين مرن عبر وسائط سطر الأوامر، وملفات `.style.yapf`، أو `setup.cfg`، أو `pyproject.toml`.
- القدرة على التشغيل بشكل تكراري عبر المجلدات، وتنسيق نطاقات أسطر محددة، واستبعاد الملفات باستخدام `.yapfignore` أو `pyproject.toml`.
- إمكانيات التكامل كمكتبة عبر واجهتي `FormatCode` و`FormatFile`.
- أداة `yapf-diff` لإعادة تنسيق الأسطر التي تم تغييرها فقط في diff موحد، وهو أمر مفيد لسير عمل CI وإدارة التصحيحات.
يدعم YAPF بايثون 3.7+ ويتوافق مع مختلف المحررات عبر إضافات المجتمع.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.