aboutsummaryrefslogtreecommitdiffstats
path: root/lua
diff options
context:
space:
mode:
authorMaksim Terpilovskii <maximtrp@gmail.com>2025-03-20 15:20:36 +0400
committerGitHub <noreply@github.com>2025-03-20 04:20:36 -0700
commit699cf2ce74e40e7c5068cf93a6bd6a74b24c5ec3 (patch)
tree7b43dd3dc1cd4194e48d40b10f8aa08505c2cedf /lua
parentdocs: update configs.md (diff)
downloadnvim-lspconfig-699cf2ce74e40e7c5068cf93a6bd6a74b24c5ec3.tar
nvim-lspconfig-699cf2ce74e40e7c5068cf93a6bd6a74b24c5ec3.tar.gz
nvim-lspconfig-699cf2ce74e40e7c5068cf93a6bd6a74b24c5ec3.tar.bz2
nvim-lspconfig-699cf2ce74e40e7c5068cf93a6bd6a74b24c5ec3.tar.lz
nvim-lspconfig-699cf2ce74e40e7c5068cf93a6bd6a74b24c5ec3.tar.xz
nvim-lspconfig-699cf2ce74e40e7c5068cf93a6bd6a74b24c5ec3.tar.zst
nvim-lspconfig-699cf2ce74e40e7c5068cf93a6bd6a74b24c5ec3.zip
fix(tailwindcss): improved tailwindcss detection (#3648)
Problem: The Tailwind CSS language server is enabled for any workspace containing a `.git` folder, a `node_modules` folder, or a `package.json` file, which is not ideal. Solution: Introduce a specific check for the `tailwindcss` package within `package.json` file using `insert_package_json` method from `util` (this approach is used in `eslint` config). Since the latest version of Tailwind CSS (v4) no longer requires `postcss.config.*` and `tailwind.config.*` files, these can no longer be relied upon as sole criteria for enabling Tailwind CSS LSP.
Diffstat (limited to 'lua')
-rw-r--r--lua/lspconfig/configs/tailwindcss.lua10
1 files changed, 5 insertions, 5 deletions
diff --git a/lua/lspconfig/configs/tailwindcss.lua b/lua/lspconfig/configs/tailwindcss.lua
index 9bbf70f1..36becb87 100644
--- a/lua/lspconfig/configs/tailwindcss.lua
+++ b/lua/lspconfig/configs/tailwindcss.lua
@@ -100,7 +100,7 @@ return {
end
end,
root_dir = function(fname)
- return util.root_pattern(
+ local root_file = {
'tailwind.config.js',
'tailwind.config.cjs',
'tailwind.config.mjs',
@@ -108,10 +108,10 @@ return {
'postcss.config.js',
'postcss.config.cjs',
'postcss.config.mjs',
- 'postcss.config.ts'
- )(fname) or vim.fs.dirname(vim.fs.find('package.json', { path = fname, upward = true })[1]) or vim.fs.dirname(
- vim.fs.find('node_modules', { path = fname, upward = true })[1]
- ) or vim.fs.dirname(vim.fs.find('.git', { path = fname, upward = true })[1])
+ 'postcss.config.ts',
+ }
+ root_file = util.insert_package_json(root_file, 'tailwindcss', fname)
+ return util.root_pattern(unpack(root_file))(fname)
end,
},
docs = {