How can I tell Prettier to ignore a package.json file?

Viewed 14113

I am using prettier-standard because the project uses the standard for linting.

Following the prettier pre-commit hook example I am running prettier on commits. However I would like to ignore the package.json file. I tried adding package.json to a .prettierignore file but this did not work.

Code from the prettier pre-commit hook example that I am using in my package.json

{
  "scripts": {
    "precommit": "lint-staged"
  },
  "lint-staged": {
     "*.{js,json,css}": [
       "prettier --write",
       "git add"
     ]
  }
}

```

2 Answers

The limitation here is due to how lint-staged is used. I personally end up using a simple command (fast enough for me), without lint-staged (but still using husky+precommit).

prettier --write "**/*.{js,json,css,md}" !package.json

This command is in my package.json as a "format" script.

"precommit": "yarn format", // can be "npm run format"
"format": "prettier --write \"**/*.{js,json,css,md}\" \"!package.json\""

Please note the escaped quotes.

Related