پینت ۱.۳۰ حالا فایلهای Blade رو فرمت میکنه
خلاصهٔ کاملتر
پل ردموند تو Laravel News نوشته که پینت ۱.۳۰.۰ حالا Blade رو هم فرمت میکنه. با فلگ --blade قانون Pint/laravel_blade روشن میشه و فایلهای .blade.php از دل Prettier و پلاگین prettier-plugin-blade رد میشن. تا قبل از این نسخه پینت فایلهای Blade رو کلاً از فایندرش کنار میذاشت، و وقتی این قانون خاموش باشه دقیقاً همون رفتار قبلی برقراره.
فلگ فقط یه میانبره؛ اگه بخوای همیشه فعال باشه میتونی قانون رو مستقیم تو pint.json بذاری:
{
"rules": {
"Pint/laravel_blade": true
}
}یه نکتهٔ عملی اینه که فرمتکردن روی Node انجام میشه، نه PHP. پینت قبل از هر کاری وجود prettier (نسخهٔ ^3.8.4)، prettier-plugin-blade (^3.2.2) و prettier-plugin-tailwindcss (^0.8.0) رو چک میکنه. اگه Node نباشه با یه توضیح متوقف میشه، اگه پکیجها نباشن پکیجمنیجرت رو تشخیص میده و برای نصبشون ازت اجازه میگیره، و اگه نسخهها با محدودیتها جور نباشن دستور دقیق اصلاح رو چاپ میکنه.
سه دسته فایل حتی با قانون فعال هم نادیده گرفته میشن، چون فرمتکردنشون خروجی یا معنیشون رو عوض میکنه: فایلهای Envoy، فایلهای راهنمای Boost تو resources/boost/guidelines/ و ویوهای ایمیل تو resources/views/emails/ و resources/views/mail/. تستهای این قابلیت هم اتریبیوتهای Alpine، بایندینگهای wire: لایووایر، کامپوننتهای Flux، مرتبسازی کلاسهای Tailwind، بلاکهای @verbatim، heredoc و SVG اینلاین رو پوشش میدن.
کنار Blade، سه اصلاح کوچیکتر هم اومده: --diff حالا با فیلتر AMR کار میکنه و فایلهای تغییرنامداده رو از قلم نمیندازه؛ --quiet بهجای دور ریختن خطاها اونها رو به stderr میفرسته تا stdout تمیز بمونه؛ و کلید in تو pint.json اجازه میده دایرکتوریهای موردبررسی رو از خود فایل کانفیگ محدود کنی. به گفتهٔ نویسنده هیچ تغییر شکنندهای برای کانفیگهای موجود وجود نداره.
نکات کلیدی:
- پینت ۱.۳۰.۰ با فلگ --blade یا قانون Pint/laravel_blade قالبهای Blade رو فرمت میکنه
- فرمتکردن روی Node و با Prettier انجام میشه و به سه پکیج npm نیاز داره
- فایلهای Envoy، راهنماهای Boost و ویوهای ایمیل استثنا شدن
- --diff حالا فایلهای تغییرنامداده رو هم میبینه و --quiet خطاها رو به stderr میفرسته
- قابلیت اختیاریه و هیچ تغییر شکنندهای برای کانفیگهای فعلی نداره




