如何使用laravel/pint使键和值在同一级别上与空格对齐?

vuktfyat  于 2023-01-18  发布在  其他
关注(0)|答案(1)|浏览(166)

在Laravel 9应用程序中使用laravel/pint(1.4)与"psr12"预设,我更喜欢看到不是代码:

\DB::table('quizzes')->insert([
    'id' => 2,
    'question' => 'What does ORM stand for?',
    'quiz_category_id' => 1,
    'points' => 4,
    'active' => true,
]);

但是:

\DB::table('quizzes')->insert([
    'id'               => 2,
    'question'         => 'What does ORM stand for?',
    'quiz_category_id' => 1,
    'points'           => 4,
    'active'           => true,
]);

其中键和值在同一级别上与空格对齐。
我尝试修复它,发现属性"binary_operator_spaces"
但看看这些文件:https://github.com/laravel/pint/blob/main/resources/presets/laravel.php
我只看到一条规则:

'binary_operator_spaces' => [
    'default' => 'single_space',
],

我不知道,但是我该怎么设置这个规则呢?好像没有其他的规则了...
谢谢!

ozxc1zmp

ozxc1zmp1#

查看binary_operator_spaces的文档
您希望将该规则与align_single_space_minimal选项一起使用:

'binary_operator_spaces' => [
    'default' => 'align_single_space_minimal',
],

前提是您的设置与所提供的链接中显示的设置相同
如果你使用的是PHPCodeSniffer(这是laravel在幕后使用的),你可以简单地这样使用它:

$config->setRuleset([
    'Squiz.WhiteSpace.OperatorSpacing' => [
        'align_single_space_minimal' => true
    ]
]);

只要记住每个空格是1个字节,这些加起来...一个学究式的想法,但一个保持在您的头脑中,无论如何(恕我直言,没有人应该使用这个规则或添加无意义的空白数组)

相关问题