shufo / prettier-plugin-blade

Format your blade template using Prettier
https://www.npmjs.com/package/@shufo/prettier-plugin-blade
MIT License
318 stars 8 forks source link

[Bug]: Recommended configuration for using plugin-blade together with plugin-php? #198

Closed vinkla closed 1 year ago

vinkla commented 1 year ago

Description

It appears that prettier-plugin-blade is being utilized instead of plugin-php for PHP files. Could you please advise on the recommended approach for using @shufo/prettier-plugin-blade in conjunction with @prettier/plugin-php to ensure proper formatting of both PHP and Blade files?

Expected Behavior

It should only format PHP files using plugin-php and Blade files using plugin-blade.

Actual Behavior

It formats PHP files using plugin-blade.

Additional Context

// prettier.config.js
module.exports = {
  singleQuote: true,
  plugins: [require('@prettier/plugin-php'), require('@shufo/prettier-plugin-blade')],
  overrides: [
    {
      files: ['*.php'],
      options: {
        parser: 'php',
      },
    },
    {
      files: ['*.blade.php'],
      options: {
        tabWidth: 4,
        parser: 'blade',
      },
    },
  ],
};
// package.json
{
  "private": true,
  "type": "module",
  "dependencies": {
    "@prettier/plugin-php": "^0.19.4",
    "@shufo/prettier-plugin-blade": "^1.8.12",
    "prettier": "^2.8.8"
  }
}
// .vscode/settings.json
{
  "[blade][php]": {
    "editor.defaultFormatter": "esbenp.prettier-vscode"
  },
  "prettier.documentSelectors": ["**/*.php"]
}
izham commented 1 year ago

files: ['*.php', '!*.blade.php'],

should fix it

vinkla commented 1 year ago

Thank you @izham for your assistance! Modifying the setting did not resolve my issue.

// prettier.config.js
module.exports = {
  singleQuote: true,
  plugins: [require('@prettier/plugin-php'), require('@shufo/prettier-plugin-blade')],
  overrides: [
    {
      files: ['*.php', '!*.blade.php'],
      options: {
        parser: 'php',
      },
    },
    {
      files: ['*.blade.php'],
      options: {
        tabWidth: 4,
        parser: 'blade',
      },
    },
  ],
};
vinkla commented 1 year ago

The issue was resolved by replacing @shufo/prettier-plugin-blade with prettier-plugin-blade.