aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChing Pei Yang <59727193+horriblename@users.noreply.github.com>2025-06-21 12:04:17 +0200
committerGitHub <noreply@github.com>2025-06-21 03:04:17 -0700
commitce3e92cfc60480acd9b7086caa6cbf3f10fb2d67 (patch)
tree74c35e8cd16927080148e505bdb170e50464d6bb
parentfix(csharp_ls): add "slnx" root pattern #3921 (diff)
downloadnvim-lspconfig-ce3e92cfc60480acd9b7086caa6cbf3f10fb2d67.tar
nvim-lspconfig-ce3e92cfc60480acd9b7086caa6cbf3f10fb2d67.tar.gz
nvim-lspconfig-ce3e92cfc60480acd9b7086caa6cbf3f10fb2d67.tar.bz2
nvim-lspconfig-ce3e92cfc60480acd9b7086caa6cbf3f10fb2d67.tar.lz
nvim-lspconfig-ce3e92cfc60480acd9b7086caa6cbf3f10fb2d67.tar.xz
nvim-lspconfig-ce3e92cfc60480acd9b7086caa6cbf3f10fb2d67.tar.zst
nvim-lspconfig-ce3e92cfc60480acd9b7086caa6cbf3f10fb2d67.zip
fix(omnisharp): *.csproj, *.sln root_dir patterns #3919
-rw-r--r--lsp/omnisharp.lua12
1 files changed, 11 insertions, 1 deletions
diff --git a/lsp/omnisharp.lua b/lsp/omnisharp.lua
index ca69c79f..ee3c960e 100644
--- a/lsp/omnisharp.lua
+++ b/lsp/omnisharp.lua
@@ -14,6 +14,8 @@
---
---
+local util = require 'lspconfig.util'
+
return {
cmd = {
vim.fn.executable('OmniSharp') == 1 and 'OmniSharp' or 'omnisharp',
@@ -26,7 +28,15 @@ return {
'--languageserver',
},
filetypes = { 'cs', 'vb' },
- root_markers = { '.sln', '.csproj', 'omnisharp.json', 'function.json' },
+ root_dir = function(bufnr, on_dir)
+ local fname = vim.api.nvim_buf_get_name(bufnr)
+ on_dir(
+ util.root_pattern '*.sln'(fname)
+ or util.root_pattern '*.csproj'(fname)
+ or util.root_pattern 'omnisharp.json'(fname)
+ or util.root_pattern 'function.json'(fname)
+ )
+ end,
init_options = {},
capabilities = {
workspace = {