fsouza/prettierd

Overrides do not work in default config.

TSoli opened this issue · 5 comments

TSoli commented

I am using prettierd with null-ls in neovim. Basically, I can see that the default config is working because changing it is causing changes in the formatting when I apply it with :lua vim.lsp.buf.format() after reloading prettierd. However, adding overrides to this default config does not work. Overrides do seem to work if I make a .pretterrc file in the project directory though which is how I think this is different from #200 ?

To reproduce do something like this for the default prettierrc.json

{
  "printWidth": 80,
  "proseWrap": "always",
  "overrides": [
    {
      "files": "**/*.md",
      "options": {
        "printWidth": 100
      }
    }
  ]
}

And to test, also try putting the same file in the cwd of the markdown file in question.

I also tried playing around with the semi option for js files and similar results so it seems to be an issue with overrides in default config.

I can confirm this is happening.

What works for me:

  • Creating a local project configuration file ✔️
  • The default prettierd configuration file if no local project file exists ✔️

What does not work for me:

  • Setting PRETTIERD_DEFAULT_CONFIG environment variable to the path of the prettier config as a source of truth for default

I can confirm this is happening.

What works for me:

  • Creating a local project configuration file ✔️
  • The default prettierd configuration file if no local project file exists ✔️

What does not work for me:

  • Setting PRETTIERD_DEFAULT_CONFIG environment variable to the path of the prettier config as a source of truth for default

What is the difference between the second point in what works for you and the what is not working for you? I.e isn't the default config pointed to by the environment variable? For me it's just this overrides in the default config pointed to by the environment variable that does not work.

What is the difference between the second point in what works for you and the what is not working for you? I.e isn't the default config pointed to by the environment variable? For me it's just this overrides in the default config pointed to by the environment variable that does not work.

Not exactly. The env variable is only going to be used if it is set - otherwise it will use prettierd default configuration.

I am setting it and prettierd is not picking it up.

Same here. Overrides in the default config (PRETTIERD_DEFAULT_CONFIG) are ignored.

I'm also having this problem