لاراول پینت
معرفی
لاراول پینت یک اصلاح کننده سبک کد PHP برای مینیمالیست ها است. Pint بر روی PHP-CS-Fixer ساخته شده است و اطمینان از تمیز و ثابت ماندن سبک کد شما را ساده می کند.
Pint به طور خودکار با تمام برنامه های جدید لاراول نصب می شود، بنابراین می توانید بلافاصله از آن استفاده کنید. به طور پیشفرض، Pint به هیچ پیکربندی نیاز ندارد و با پیروی از سبک کدنویسی لاراول، مشکلات سبک کد را در کد شما برطرف میکند.
نصب و راه اندازی
Pint در نسخه های اخیر چارچوب لاراول گنجانده شده است، بنابراین نصب معمولاً غیر ضروری است. با این حال، برای برنامه های قدیمی تر، می توانید Laravel Pint را از طریق Composer نصب کنید:
composer require laravel/pint --dev
در حال اجرا پینت
میتوانید به Pint دستور دهید تا مشکلات سبک کد را با فراخوانی
pint
باینری موجود در
vendor/bin
فهرست پروژهتان برطرف کند:
./vendor/bin/pint
همچنین میتوانید Pint را روی فایلها یا دایرکتوریهای خاصی اجرا کنید:
./vendor/bin/pint app/Models ./vendor/bin/pint app/Models/User.php
Pint لیست کاملی از تمام فایل هایی که به روز می کند را نمایش می دهد. میتوانید با ارائه این گزینه هنگام فراخوانی Pint، جزئیات بیشتری درباره تغییرات Pint مشاهده کنید
-v
:
./vendor/bin/pint -v
اگر میخواهید Pint به سادگی کد شما را برای خطاهای سبک بررسی کند بدون اینکه فایلها را تغییر دهد، میتوانید از این
--test
گزینه استفاده کنید:
./vendor/bin/pint --test
اگر میخواهید Pint فقط فایلهایی را که تغییرات غیرمتعهد دارند مطابق با Git تغییر دهد، میتوانید از این
--dirty
گزینه استفاده کنید:
./vendor/bin/pint --dirty
پیکربندی Pint
همانطور که قبلا ذکر شد، Pint به هیچ پیکربندی نیاز ندارد. با این حال، اگر میخواهید پیشتنظیمها، قوانین یا پوشههای بازرسیشده را سفارشی کنید، میتوانید این کار را با ایجاد یک
pint.json
فایل در فهرست اصلی پروژه خود انجام دهید:
{ "preset": "laravel"}
علاوه بر این، اگر میخواهید
pint.json
از یک دایرکتوری خاص استفاده کنید، میتوانید
--config
هنگام فراخوانی Pint این گزینه را ارائه دهید:
pint --config vendor/my-company/coding-style/pint.json
تنظیمات از پیش تعیین شده
Presets مجموعه ای از قوانین را تعریف می کند که می تواند برای رفع مشکلات سبک کد در کد شما استفاده شود. بهطور پیشفرض، Pint از
laravel
پیشتنظیم استفاده میکند که با پیروی از سبک کدنویسی لاراول، مشکلات را برطرف میکند. با این حال، میتوانید با ارائه گزینه
--preset
Pint، پیشتنظیم دیگری را مشخص کنید:
pint --preset psr12
در صورت تمایل، می توانید پیش تنظیم را در
pint.json
فایل پروژه خود نیز تنظیم کنید:
{ "preset": "psr12"}
پیشتنظیمهای پشتیبانی شده Pint عبارتند از
:
laravel
،،،
و
.
per
psr12
symfony
قوانین
قوانین دستورالعمل های سبکی هستند که Pint برای رفع مشکلات سبک کد در کد شما استفاده می کند. همانطور که در بالا ذکر شد، از پیش تعیین شده گروه های از پیش تعریف شده ای از قوانین هستند که باید برای اکثر پروژه های PHP مناسب باشند، بنابراین شما معمولاً نیازی به نگرانی در مورد قوانین فردی آنها نخواهید داشت.
با این حال، در صورت تمایل، می توانید قوانین خاصی را در
pint.json
فایل خود فعال یا غیرفعال کنید:
{ "preset": "laravel", "rules": { "simplified_null_return": true, "braces": false, "new_with_braces": { "anonymous_class": false, "named_class": false } }}
Pint بر روی PHP-CS-Fixer ساخته شده است . بنابراین، می توانید از هر یک از قوانین آن برای رفع مشکلات سبک کد در پروژه خود استفاده کنید: PHP-CS-Fixer Configurator .
به استثنای فایل ها / پوشه ها
.php
به طور پیشفرض، Pint همه فایلهای پروژه شما را بهجز فایلهای موجود در فهرست
بازرسی میکند
vendor
. اگر می خواهید پوشه های بیشتری را حذف کنید، می توانید این کار را با استفاده از
exclude
گزینه پیکربندی انجام دهید:
{ "exclude": [ "my-specific/folder" ]}
اگر میخواهید همه فایلهایی را که دارای یک الگوی نام مشخص هستند حذف کنید، میتوانید این کار را با استفاده از
notName
گزینه پیکربندی انجام دهید:
{ "notName": [ "*-my-file.php" ]}
اگر می خواهید یک فایل را با ارائه یک مسیر دقیق برای فایل حذف کنید، می توانید این کار را با استفاده از
notPath
گزینه پیکربندی انجام دهید:
{ "notPath": [ "path/to/excluded-file.php" ]}