نسخه:

لاراول پینت

معرفی

لاراول پینت یک اصلاح کننده سبک کد 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"
]
}