Guybrush Threepwood
Guybrush Threepwood

Reputation: 41

How can I set up Prettier in VSCode settings to conditionally apply single quotes by file type?

I'm trying to set up Prettier in VSCode settings so that for all file types except JS it will default to double quotes.

I've disabled ESLint to make sure it's not the problem. I've also check Prettier documentation on configuration overrides in JSON. But my settings don't seem to work.

  "prettier": {
    "singleQuote": false,
    "overrides": [
      {
        "files": "*.js",
        "options": {
          "singleQuote": true
        }
      }
    ]
  }

When I save a CSS file I expect to see double quotes and I do. When I save a JS file I expect to see single quotes (when there's no apostrophes used in the string) but it sets double quotes on all strings.

Upvotes: 4

Views: 1568

Answers (1)

nCardot
nCardot

Reputation: 6587

To use single quotes for JavaScript but double quotes for CSS, SCSS, and HTML, in your project root directory, add a .prettierrc file with this JSON:

{
  "singleQuote": true,
  "overrides": [
    {
      "files": ["**/*.css", "**/*.scss", "**/*.html"],
      "options": {
        "singleQuote": false
      }
    }
  ]
}

(Bonus info: The ** is a glob character and represents any number of subfolders within the current folder.)

Upvotes: 6

Related Questions