kabouzeid / nvim-lspinstall

Provides the missing :LspInstall for nvim-lspconfig
MIT License
526 stars 67 forks source link

Problem with "csharp" language #77

Open kolpav opened 3 years ago

kolpav commented 3 years ago

https://github.com/kabouzeid/nvim-lspinstall/issues/75

I think I pinpointed problem I am having with :LspInstall csharp I don't know anything about lua but if I am understanding the code correctly I think you should rename csharp to omnisharp because language name you are using in lspinstall is then used as a key to select language in lspconfig but there is no csharp in lspconfing. I am not 100% sure but based on code below where setup_servers() is not working but setup_servers2() does it seems that way. Please note I am using omnisharp from lspinstall in my setup_servers2() fn

local function setup_servers()
  require'lspinstall'.setup()
  local servers = require'lspinstall'.installed_servers()
  for _, server in pairs(servers) do
    local config = make_config()
    require'lspconfig'[server].setup(config)
  end
end
-- setup_servers()

local function setup_servers2()
  local pid = vim.fn.getpid()
  local omnisharp_bin = "/root/.local/share/nvim/lspinstall/csharp/run"
  require'lspconfig'.omnisharp.setup {
    cmd = { omnisharp_bin, "--languageserver" , "--hostPID", tostring(pid) };
    on_attach = on_attach;
  }
end
setup_servers2()

I tested everything on clean ubuntu inside docker.

kolpav commented 3 years ago

Fix I am using

local function setup_servers()
  require'lspinstall'.setup()

  local servers = require'lspinstall'.installed_servers()

  for _, server in pairs(servers) do
    local config = make_config()

    if server == "csharp" then
      server = 'omnisharp'
      local pid = vim.fn.getpid()
      local omnisharp_bin = '/Users/kolpav/.local/share/nvim/lspinstall/csharp/run'
      config.cmd = { omnisharp_bin, "--languageserver" , "--hostPID", tostring(pid) }
    end
    require'lspconfig'[server].setup(config)

  end
end
MordechaiHadad commented 3 years ago

Hello i am the creator of the csharp server for this plugin. what is exactly your issue? It runs for me perfectly other than the startup being a bit slow. Even in the project template you used it works fine with some namespaces seem to be "missing"

kolpav commented 3 years ago

@MordechaiHadad Well I'll try to give it another look sometime. I was following everything very carefully on fresh ubuntu running in docker and I got exactly the same problem as on my local. I'll try to share the docker image next time. Thank you for reaching out

kolpav commented 3 years ago

@MordechaiHadad I have tried again on clean ubuntu install and it seems to be not very usable at the moment. It reports namespace as missing after syntax error and keeps reporting them even after you fix the error. Go to definition/implementation doesn't work across files.

https://user-images.githubusercontent.com/19467143/124333404-5ef9bd00-db94-11eb-9e84-018e293fa087.mp4

root@534e8d105493:/NvimLsp# uname -a
Linux 534e8d105493 5.10.25-linuxkit #1 SMP Tue Mar 23 09:27:39 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
root@534e8d105493:/NvimLsp# dotnet --version
5.0.301
root@534e8d105493:/NvimLsp# nvim --version
NVIM v0.5.0-dev
Build type: RelWithDebInfo
LuaJIT 2.1.0-beta3
Compilation: /usr/bin/cc -g -O2 -fdebug-prefix-map=/build/neovim-wS4eSl/neovim-0.5.0+ubuntu2+git202107021758-7685fc9ec-d569569c9=. -fstack-protector-strong -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1 -DNVIM_TS_HAS_SET_MATCH_LIMIT -O2 -g -Og -g -Wall -Wextra -pedantic -Wno-unused-parameter -Wstrict-prototypes -std=gnu99 -Wshadow -Wconversion -Wmissing-prototypes -Wimplicit-fallthrough -Wvla -fstack-protector-strong -fno-common -fdiagnostics-color=auto -DINCLUDE_GENERATED_DECLARATIONS -D_GNU_SOURCE -DNVIM_MSGPACK_HAS_FLOAT32 -DNVIM_UNIBI_HAS_VAR_FROM -DMIN_LOG_LEVEL=3 -I/build/neovim-wS4eSl/neovim-0.5.0+ubuntu2+git202107021758-7685fc9ec-d569569c9/build/config -I/build/neovim-wS4eSl/neovim-0.5.0+ubuntu2+git202107021758-7685fc9ec-d569569c9/src -I/build/neovim-wS4eSl/neovim-0.5.0+ubuntu2+git202107021758-7685fc9ec-d569569c9/.deps/usr/include -I/usr/include -I/build/neovim-wS4eSl/neovim-0.5.0+ubuntu2+git202107021758-7685fc9ec-d569569c9/build/src/nvim/auto -I/build/neovim-wS4eSl/neovim-0.5.0+ubuntu2+git202107021758-7685fc9ec-d569569c9/build/include
Compiled by buildd@lcy01-amd64-011

Features: +acl +iconv +tui
See ":help feature-compile"

   system vimrc file: "$VIM/sysinit.vim"
  fall-back for $VIM: "/usr/share/nvim"

Run :checkhealth for more info
root@534e8d105493:/NvimLsp# dotnet build
Microsoft (R) Build Engine version 16.10.1+2fd48ab73 for .NET
Copyright (C) Microsoft Corporation. All rights reserved.

  Determining projects to restore...
  All projects are up-to-date for restore.
  NvimLsp -> /NvimLsp/bin/Debug/net5.0/NvimLsp.dll

Build succeeded.
    0 Warning(s)
    0 Error(s)

Time Elapsed 00:00:02.2
[ DEBUG ] 2021-07-03T00:16:23+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "textDocument/publishDiagnostics" { client_id = 1, params = { diagnostics = { { code = "CS0234", message = "The type or namespace name 'AspNetCore' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 4 }, start = { character = 16, line = 4 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'AspNetCore' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 5 }, start = { character = 16, line = 5 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'AspNetCore' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 6 }, start = { character = 16, line = 6 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'Extensions' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 7 }, start = { character = 16, line = 7 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'Extensions' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 8 }, start = { character = 16, line = 8 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'Extensions' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 9 }, start = { character = 16, line = 9 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'Extensions' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 10 }, start = { character = 16, line = 10 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'OpenApi' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 23, line = 11 }, start = { character = 16, line = 11 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IConfiguration' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 29, line = 22 }, start = { character = 15, line = 22 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IServiceCollection' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 56, line = 25 }, start = { character = 38, line = 25 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IApplicationBuilder' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 49, line = 36 }, start = { character = 30, line = 36 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IWebHostEnvironment' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 74, line = 36 }, start = { character = 55, line = 36 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IConfiguration' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 37, line = 17 }, start = { character = 23, line = 17 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'Foo' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 29, line = 38 }, start = { character = 26, line = 38 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 41, line = 7 }, start = { character = 0, line = 7 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 13, line = 0 }, start = { character = 0, line = 0 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 35, line = 5 }, start = { character = 0, line = 5 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 35, line = 9 }, start = { character = 0, line = 9 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 18, line = 2 }, start = { character = 0, line = 2 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 35, line = 4 }, start = { character = 0, line = 4 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 33, line = 1 }, start = { character = 0, line = 1 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 31, line = 11 }, start = { character = 0, line = 11 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 31, line = 6 }, start = { character = 0, line = 6 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 35, line = 10 }, start = { character = 0, line = 10 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 29, line = 3 }, start = { character = 0, line = 3 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 47, line = 8 }, start = { character = 0, line = 8 } }, severity = 4, source = "csharp", tags = {} } }, uri = "file:///NvimLsp/Startup.cs", version = 8 }} [ DEBUG ] 2021-07-03T00:16:27+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:395 ] "rpc.send.payload" { jsonrpc = "2.0", method = "textDocument/didSave", params = { text = 'using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Threading.Tasks;\nusing Microsoft.AspNetCore.Builder;\nusing Microsoft.AspNetCore.Hosting;\nusing Microsoft.AspNetCore.Mvc;\nusing Microsoft.Extensions.Configuration;\nusing Microsoft.Extensions.DependencyInjection;\nusing Microsoft.Extensions.Hosting;\nusing Microsoft.Extensions.Logging;\nusing Microsoft.OpenApi.Models;\n\nnamespace NvimLsp\n{\n public class Startup\n {\n public Startup(IConfiguration configuration)\n {\n Configuration = configuration;\n }\n\n public IConfiguration Configuration { get; }\n\n // This method gets called by the runtime. Use this method to add services to the container.\n public void ConfigureServices(IServiceCollection services)\n {\n\n services.AddControllers();\n services.AddSwaggerGen(c =>\n {\n c.SwaggerDoc("v1", new OpenApiInfo { Title = "NvimLsp", Version = "v1" });\n });\n }\n\n // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.\n public void Configure(IApplicationBuilder app, IWebHostEnvironment env)\n {\n var foo = new Foo();\n if (env.IsDevelopment())\n {\n app.UseDeveloperExceptionPage();\n app.UseSwagger();\n app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "NvimLsp v1"));\n }\n\n app.UseRouting();\n\n app.UseAuthorization();\n\n app.UseEndpoints(endpoints =>\n {\n endpoints.MapControllers();\n });\n }\n }\n}\n', textDocument = { uri = "file:///NvimLsp/Startup.cs" } }} [ INFO ] 2021-07-03T00:16:27+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:1214 ] "exit_handler" { { _on_attach = , cancel_request = , config = { capabilities = { callHierarchy = { dynamicRegistration = false, = <1>{ __tostring = } }, textDocument = { codeAction = { codeActionLiteralSupport = { codeActionKind = { valueSet = { "", "Empty", "QuickFix", "Refactor", "RefactorExtract", "RefactorInline", "RefactorRewrite", "Source", "SourceOrganizeImports", "quickfix", "refactor", "refactor.extract", "refactor.inline", "refactor.rewrite", "source", "source.organizeImports" }, = }, =
}, dynamicRegistration = false, =
}, completion = { completionItem = { commitCharactersSupport = false, deprecatedSupport = false, documentationFormat = { "markdown", "plaintext" }, preselectSupport = false, snippetSupport = false, =
}, completionItemKind = { valueSet = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 }, =
}, contextSupport = false, dynamicRegistration = false, =
}, declaration = { linkSupport = true, =
}, definition = { linkSupport = true, =
}, documentHighlight = { dynamicRegistration = false, =
}, documentSymbol = { dynamicRegistration = false, hierarchicalDocumentSymbolSupport = true, symbolKind = { valueSet = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 }, =
}, =
}, hover = { contentFormat = { "markdown", "plaintext" }, dynamicRegistration = false, =
}, implementation = { linkSupport = true, =
}, publishDiagnostics = { relatedInformation = true, tagSupport = { valueSet = { 1, 2 }, =
}, =
}, references = { dynamicRegistration = false, =
}, rename = { dynamicRegistration = false, prepareSupport = true, =
}, signatureHelp = { dynamicRegistration = false, signatureInformation = { documentationFormat = { "markdown", "plaintext" }, =
}, =
}, synchronization = { didSave = true, dynamicRegistration = false, willSave = false, willSaveWaitUntil = false, =
}, typeDefinition = { linkSupport = true, =
}, =
}, window = { showDocument = { support = false, =
}, showMessage = { messageActionItem = { additionalPropertiesSupport = false, =
}, =
}, workDoneProgress = true, =
}, workspace = { applyEdit = true, configuration = true, symbol = { dynamicRegistration = false, hierarchicalWorkspaceSymbolSupport = true, symbolKind = { valueSet = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 }, =
}, =
}, workspaceEdit = { resourceOperations = { "rename", "create", "delete" }, =
}, workspaceFolders = true, =
} }, cmd = { "/root/.local/share/nvim/lspinstall/csharp/./omnisharp/run", "--languageserver", "--hostPID", "7925" }, cmd_cwd = "/root/.local/share/nvim/lspinstall/csharp", filetypes = { "cs", "vb" }, flags = {}, get_language_id = , handlers = <2>{}, init_options = {}, log_level = 2, message_level = 2, name = "csharp", on_attach = , on_exit = , on_init = , root_dir = "/NvimLsp", settings = vim.empty_dict(), =
}, handlers =
, id = 1, initialized = true, is_stopped = , messages = { messages = {}, name = "csharp", progress = {}, status = {} }, name = "csharp", notify = , offset_encoding = "utf-16", request = , request_sync = , resolved_capabilities = { call_hierarchy = false, code_action = <3>{ codeActionKinds = { "source.organizeImports", "refactor", "refactor.extract" } }, code_lens = true, code_lens_resolve = true, completion = true, declaration = false, document_formatting = <4>{}, document_highlight = false, document_range_formatting = <5>{}, document_symbol = <6>{}, execute_command = true, find_references = <7>{}, goto_definition = <8>{}, hover = <9>{}, implementation = false, rename = true, signature_help = true, signature_help_trigger_characters = <10>{ ".", "?", "[" }, text_document_did_change = 1, text_document_open_close = true, text_document_save = <11>{ includeText = true }, text_document_save_include_text = true, text_document_will_save = false, text_document_will_save_wait_until = false, type_definition = false, workspace_folder_properties = { changeNotifications = true, supported = true }, workspace_symbol = <12>{} }, rpc = { handle = , notify = , pid = 7927, request = }, server_capabilities = { codeActionProvider =
, codeLensProvider = { resolveProvider = true }, completionProvider = { resolveProvider = true, triggerCharacters = { ".", " " } }, definitionProvider =
, documentFormattingProvider =
, documentOnTypeFormattingProvider = { firstTriggerCharacter = ";", moreTriggerCharacter = { "}", ")" } }, documentRangeFormattingProvider =
, documentSymbolProvider =
, executeCommandProvider = { commands = { "omnisharp/executeCodeAction", "omnisharp/executeCodeAction" } }, experimental = {}, hoverProvider =
, implementationProvider = {}, referencesProvider =
, renameProvider = {}, signatureHelpProvider = { triggerCharacters =
}, textDocumentSync = { change = 1, openClose = true, save =
}, workspace = { fileOperations = {}, workspaceFolders = { changeNotifications = true, supported = true } }, workspaceSymbolProvider =
}, stop = , supports_method = , workspaceFolders = { { name = "/NvimLsp", uri = "file:///NvimLsp" } }, workspace_did_change_configuration = } } [ DEBUG ] 2021-07-03T00:16:27+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:395 ] "rpc.send.payload" { id = 2, jsonrpc = "2.0", method = "shutdown"} [ DEBUG ] 2021-07-03T00:16:27+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "textDocument/publishDiagnostics", params = { diagnostics = { { code = "CS0234", message = "The type or namespace name 'AspNetCore' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 4 }, start = { character = 16, line = 4 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'AspNetCore' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 5 }, start = { character = 16, line = 5 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'AspNetCore' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 6 }, start = { character = 16, line = 6 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'Extensions' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 7 }, start = { character = 16, line = 7 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'Extensions' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 8 }, start = { character = 16, line = 8 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'Extensions' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 9 }, start = { character = 16, line = 9 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'Extensions' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 10 }, start = { character = 16, line = 10 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'OpenApi' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 23, line = 11 }, start = { character = 16, line = 11 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IConfiguration' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 29, line = 22 }, start = { character = 15, line = 22 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IServiceCollection' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 56, line = 25 }, start = { character = 38, line = 25 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IApplicationBuilder' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 49, line = 36 }, start = { character = 30, line = 36 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IWebHostEnvironment' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 74, line = 36 }, start = { character = 55, line = 36 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IConfiguration' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 37, line = 17 }, start = { character = 23, line = 17 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'Foo' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 29, line = 38 }, start = { character = 26, line = 38 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 29, line = 3 }, start = { character = 0, line = 3 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 13, line = 0 }, start = { character = 0, line = 0 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 35, line = 5 }, start = { character = 0, line = 5 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 35, line = 10 }, start = { character = 0, line = 10 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 47, line = 8 }, start = { character = 0, line = 8 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 18, line = 2 }, start = { character = 0, line = 2 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 33, line = 1 }, start = { character = 0, line = 1 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 35, line = 4 }, start = { character = 0, line = 4 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 35, line = 9 }, start = { character = 0, line = 9 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 31, line = 6 }, start = { character = 0, line = 6 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 31, line = 11 }, start = { character = 0, line = 11 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 41, line = 7 }, start = { character = 0, line = 7 } }, severity = 4, source = "csharp", tags = {} } }, uri = "file:///NvimLsp/Startup.cs", version = 0 }} [ DEBUG ] 2021-07-03T00:16:27+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "textDocument/publishDiagnostics" { diagnostics = { { code = "CS0234", message = "The type or namespace name 'AspNetCore' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 4 }, start = { character = 16, line = 4 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'AspNetCore' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 5 }, start = { character = 16, line = 5 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'AspNetCore' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 6 }, start = { character = 16, line = 6 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'Extensions' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 7 }, start = { character = 16, line = 7 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'Extensions' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 8 }, start = { character = 16, line = 8 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'Extensions' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 9 }, start = { character = 16, line = 9 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'Extensions' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 10 }, start = { character = 16, line = 10 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'OpenApi' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 23, line = 11 }, start = { character = 16, line = 11 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IConfiguration' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 29, line = 22 }, start = { character = 15, line = 22 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IServiceCollection' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 56, line = 25 }, start = { character = 38, line = 25 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IApplicationBuilder' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 49, line = 36 }, start = { character = 30, line = 36 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IWebHostEnvironment' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 74, line = 36 }, start = { character = 55, line = 36 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IConfiguration' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 37, line = 17 }, start = { character = 23, line = 17 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'Foo' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 29, line = 38 }, start = { character = 26, line = 38 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 29, line = 3 }, start = { character = 0, line = 3 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 13, line = 0 }, start = { character = 0, line = 0 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 35, line = 5 }, start = { character = 0, line = 5 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 35, line = 10 }, start = { character = 0, line = 10 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 47, line = 8 }, start = { character = 0, line = 8 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 18, line = 2 }, start = { character = 0, line = 2 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 33, line = 1 }, start = { character = 0, line = 1 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 35, line = 4 }, start = { character = 0, line = 4 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 35, line = 9 }, start = { character = 0, line = 9 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 31, line = 6 }, start = { character = 0, line = 6 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 31, line = 11 }, start = { character = 0, line = 11 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 41, line = 7 }, start = { character = 0, line = 7 } }, severity = 4, source = "csharp", tags = {} } }, uri = "file:///NvimLsp/Startup.cs", version = 0} [ DEBUG ] 2021-07-03T00:16:27+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "textDocument/publishDiagnostics" { client_id = 1, params = { diagnostics = { { code = "CS0234", message = "The type or namespace name 'AspNetCore' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 4 }, start = { character = 16, line = 4 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'AspNetCore' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 5 }, start = { character = 16, line = 5 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'AspNetCore' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 6 }, start = { character = 16, line = 6 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'Extensions' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 7 }, start = { character = 16, line = 7 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'Extensions' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 8 }, start = { character = 16, line = 8 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'Extensions' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 9 }, start = { character = 16, line = 9 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'Extensions' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 26, line = 10 }, start = { character = 16, line = 10 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0234", message = "The type or namespace name 'OpenApi' does not exist in the namespace 'Microsoft' (are you missing an assembly reference?)", range = { end = { character = 23, line = 11 }, start = { character = 16, line = 11 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IConfiguration' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 29, line = 22 }, start = { character = 15, line = 22 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IServiceCollection' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 56, line = 25 }, start = { character = 38, line = 25 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IApplicationBuilder' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 49, line = 36 }, start = { character = 30, line = 36 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IWebHostEnvironment' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 74, line = 36 }, start = { character = 55, line = 36 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'IConfiguration' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 37, line = 17 }, start = { character = 23, line = 17 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS0246", message = "The type or namespace name 'Foo' could not be found (are you missing a using directive or an assembly reference?)", range = { end = { character = 29, line = 38 }, start = { character = 26, line = 38 } }, severity = 1, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 29, line = 3 }, start = { character = 0, line = 3 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 13, line = 0 }, start = { character = 0, line = 0 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 35, line = 5 }, start = { character = 0, line = 5 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 35, line = 10 }, start = { character = 0, line = 10 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 47, line = 8 }, start = { character = 0, line = 8 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 18, line = 2 }, start = { character = 0, line = 2 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 33, line = 1 }, start = { character = 0, line = 1 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 35, line = 4 }, start = { character = 0, line = 4 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 35, line = 9 }, start = { character = 0, line = 9 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 31, line = 6 }, start = { character = 0, line = 6 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 31, line = 11 }, start = { character = 0, line = 11 } }, severity = 4, source = "csharp", tags = {} }, { code = "CS8019", message = "Unnecessary using directive.", range = { end = { character = 41, line = 7 }, start = { character = 0, line = 7 } }, severity = 4, source = "csharp", tags = {} } }, uri = "file:///NvimLsp/Startup.cs", version = 0 }} [ DEBUG ] 2021-07-03T00:16:27+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { id = 2, jsonrpc = "2.0", result = vim.NIL} [ DEBUG ] 2021-07-03T00:16:27+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:395 ] "rpc.send.payload" { jsonrpc = "2.0", method = "exit"} [ START ] 2021-07-03T00:20:55+0200 ] LSP logging initiated [ INFO ] 2021-07-03T00:21:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:1214 ] "exit_handler" {} [ START ] 2021-07-03T00:21:40+0200 ] LSP logging initiated [ INFO ] 2021-07-03T00:22:15+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:1214 ] "exit_handler" {} [ START ] 2021-07-03T00:23:06+0200 ] LSP logging initiated [ INFO ] 2021-07-03T00:23:06+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:316 ] "Starting RPC client" { args = { "--languageserver", "--hostPID", "8002" }, cmd = "/root/.local/share/nvim/lspinstall/csharp/./omnisharp/run", extra = { cwd = "/root/.local/share/nvim/lspinstall/csharp" }} [ DEBUG ] 2021-07-03T00:23:06+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:827 ] "LSP[csharp]" "initialize_params" { capabilities = { callHierarchy = { dynamicRegistration = false, = <1>{ __tostring = } }, textDocument = { codeAction = { codeActionLiteralSupport = { codeActionKind = { valueSet = { "", "Empty", "QuickFix", "Refactor", "RefactorExtract", "RefactorInline", "RefactorRewrite", "Source", "SourceOrganizeImports", "quickfix", "refactor", "refactor.extract", "refactor.inline", "refactor.rewrite", "source", "source.organizeImports" }, =
}, =
}, dynamicRegistration = false, =
}, completion = { completionItem = { commitCharactersSupport = false, deprecatedSupport = false, documentationFormat = { "markdown", "plaintext" }, preselectSupport = false, snippetSupport = false, =
}, completionItemKind = { valueSet = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 }, =
}, contextSupport = false, dynamicRegistration = false, =
}, declaration = { linkSupport = true, =
}, definition = { linkSupport = true, =
}, documentHighlight = { dynamicRegistration = false, =
}, documentSymbol = { dynamicRegistration = false, hierarchicalDocumentSymbolSupport = true, symbolKind = { valueSet = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 }, =
}, =
}, hover = { contentFormat = { "markdown", "plaintext" }, dynamicRegistration = false, =
}, implementation = { linkSupport = true, =
}, publishDiagnostics = { relatedInformation = true, tagSupport = { valueSet = { 1, 2 }, =
}, =
}, references = { dynamicRegistration = false, =
}, rename = { dynamicRegistration = false, prepareSupport = true, =
}, signatureHelp = { dynamicRegistration = false, signatureInformation = { documentationFormat = { "markdown", "plaintext" }, =
}, =
}, synchronization = { didSave = true, dynamicRegistration = false, willSave = false, willSaveWaitUntil = false, =
}, typeDefinition = { linkSupport = true, =
}, =
}, window = { showDocument = { support = false, =
}, showMessage = { messageActionItem = { additionalPropertiesSupport = false, =
}, =
}, workDoneProgress = true, =
}, workspace = { applyEdit = true, configuration = true, symbol = { dynamicRegistration = false, hierarchicalWorkspaceSymbolSupport = true, symbolKind = { valueSet = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 }, =
}, =
}, workspaceEdit = { resourceOperations = { "rename", "create", "delete" }, =
}, workspaceFolders = true, =
} }, clientInfo = { name = "Neovim", version = "0.5.0" }, initializationOptions = {}, processId = 8002, rootPath = "/NvimLsp", rootUri = "file:///NvimLsp", trace = "off", workspaceFolders = { { name = "/NvimLsp", uri = "file:///NvimLsp" } }} [ DEBUG ] 2021-07-03T00:23:06+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:395 ] "rpc.send.payload" { id = 1, jsonrpc = "2.0", method = "initialize", params = { capabilities = { callHierarchy = { dynamicRegistration = false, = <1>{ __tostring = } }, textDocument = { codeAction = { codeActionLiteralSupport = { codeActionKind = { valueSet = { "", "Empty", "QuickFix", "Refactor", "RefactorExtract", "RefactorInline", "RefactorRewrite", "Source", "SourceOrganizeImports", "quickfix", "refactor", "refactor.extract", "refactor.inline", "refactor.rewrite", "source", "source.organizeImports" }, =
}, =
}, dynamicRegistration = false, =
}, completion = { completionItem = { commitCharactersSupport = false, deprecatedSupport = false, documentationFormat = { "markdown", "plaintext" }, preselectSupport = false, snippetSupport = false, =
}, completionItemKind = { valueSet = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 }, =
}, contextSupport = false, dynamicRegistration = false, =
}, declaration = { linkSupport = true, =
}, definition = { linkSupport = true, =
}, documentHighlight = { dynamicRegistration = false, =
}, documentSymbol = { dynamicRegistration = false, hierarchicalDocumentSymbolSupport = true, symbolKind = { valueSet = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 }, =
}, =
}, hover = { contentFormat = { "markdown", "plaintext" }, dynamicRegistration = false, =
}, implementation = { linkSupport = true, =
}, publishDiagnostics = { relatedInformation = true, tagSupport = { valueSet = { 1, 2 }, =
}, =
}, references = { dynamicRegistration = false, =
}, rename = { dynamicRegistration = false, prepareSupport = true, =
}, signatureHelp = { dynamicRegistration = false, signatureInformation = { documentationFormat = { "markdown", "plaintext" }, =
}, =
}, synchronization = { didSave = true, dynamicRegistration = false, willSave = false, willSaveWaitUntil = false, =
}, typeDefinition = { linkSupport = true, =
}, =
}, window = { showDocument = { support = false, =
}, showMessage = { messageActionItem = { additionalPropertiesSupport = false, =
}, =
}, workDoneProgress = true, =
}, workspace = { applyEdit = true, configuration = true, symbol = { dynamicRegistration = false, hierarchicalWorkspaceSymbolSupport = true, symbolKind = { valueSet = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 }, =
}, =
}, workspaceEdit = { resourceOperations = { "rename", "create", "delete" }, =
}, workspaceFolders = true, =
} }, clientInfo = { name = "Neovim", version = "0.5.0" }, initializationOptions = {}, processId = 8002, rootPath = "/NvimLsp", rootUri = "file:///NvimLsp", trace = "off", workspaceFolders = { { name = "/NvimLsp", uri = "file:///NvimLsp" } } }} [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.Services.DotNetCliService: DotNetPath set to dotnet | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.Services.DotNetCliService: DotNetPath set to dotnet | ", type = 3} [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.Services.DotNetCliService: DotNetPath set to dotnet | ", type = 3 }} [ INFO ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.Services.DotNetCliService: DotNetPath set to dotnet | " [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.Services.DotNetCliService: DotNetPath set to dotnet | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.Services.DotNetCliService: DotNetPath set to dotnet | ", type = 3} [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.Services.DotNetCliService: DotNetPath set to dotnet | ", type = 3 }} [ INFO ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.Services.DotNetCliService: DotNetPath set to dotnet | " [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = 'OmniSharp.MSBuild.Discovery.MSBuildLocator: Located 1 MSBuild instance(s)\n 1: StandAlone 16.11.0 - "/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin" | ', type = 3 }} [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = 'OmniSharp.MSBuild.Discovery.MSBuildLocator: Located 1 MSBuild instance(s)\n 1: StandAlone 16.11.0 - "/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin" | ', type = 3} [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = 'OmniSharp.MSBuild.Discovery.MSBuildLocator: Located 1 MSBuild instance(s)\n 1: StandAlone 16.11.0 - "/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin" | ', type = 3 }} [ INFO ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] 'OmniSharp.MSBuild.Discovery.MSBuildLocator: Located 1 MSBuild instance(s)\n 1: StandAlone 16.11.0 - "/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin" | ' [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = 'OmniSharp.MSBuild.Discovery.MSBuildLocator: Located 1 MSBuild instance(s)\n 1: StandAlone 16.11.0 - "/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin" | ', type = 3 }} [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = 'OmniSharp.MSBuild.Discovery.MSBuildLocator: Located 1 MSBuild instance(s)\n 1: StandAlone 16.11.0 - "/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin" | ', type = 3} [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = 'OmniSharp.MSBuild.Discovery.MSBuildLocator: Located 1 MSBuild instance(s)\n 1: StandAlone 16.11.0 - "/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin" | ', type = 3 }} [ INFO ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] 'OmniSharp.MSBuild.Discovery.MSBuildLocator: Located 1 MSBuild instance(s)\n 1: StandAlone 16.11.0 - "/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin" | ' [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.MSBuild.Discovery.MSBuildLocator: MSBUILD_EXE_PATH environment variable set to '/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin/MSBuild.exe' | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.MSBuild.Discovery.MSBuildLocator: MSBUILD_EXE_PATH environment variable set to '/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin/MSBuild.exe' | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.MSBuild.Discovery.MSBuildLocator: MSBUILD_EXE_PATH environment variable set to '/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin/MSBuild.exe' | ", type = 3} [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.MSBuild.Discovery.MSBuildLocator: MSBUILD_EXE_PATH environment variable set to '/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin/MSBuild.exe' | ", type = 3 }} [ INFO ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.MSBuild.Discovery.MSBuildLocator: MSBUILD_EXE_PATH environment variable set to '/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin/MSBuild.exe' | " [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.MSBuild.Discovery.MSBuildLocator: MSBUILD_EXE_PATH environment variable set to '/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin/MSBuild.exe' | ", type = 3} [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.MSBuild.Discovery.MSBuildLocator: MSBUILD_EXE_PATH environment variable set to '/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin/MSBuild.exe' | ", type = 3 }} [ INFO ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.MSBuild.Discovery.MSBuildLocator: MSBUILD_EXE_PATH environment variable set to '/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin/MSBuild.exe' | " [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = 'OmniSharp.MSBuild.Discovery.MSBuildLocator: Registered MSBuild instance: StandAlone 16.11.0 - "/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin"\n CscToolExe = csc.exe\n MSBuildToolsPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin\n CscToolPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin/Roslyn\n BypassFrameworkInstallChecks = true\n MSBuildExtensionsPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild | ', type = 3 }} [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = 'OmniSharp.MSBuild.Discovery.MSBuildLocator: Registered MSBuild instance: StandAlone 16.11.0 - "/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin"\n CscToolExe = csc.exe\n MSBuildToolsPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin\n CscToolPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin/Roslyn\n BypassFrameworkInstallChecks = true\n MSBuildExtensionsPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild | ', type = 3 }} [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = 'OmniSharp.MSBuild.Discovery.MSBuildLocator: Registered MSBuild instance: StandAlone 16.11.0 - "/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin"\n CscToolExe = csc.exe\n MSBuildToolsPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin\n CscToolPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin/Roslyn\n BypassFrameworkInstallChecks = true\n MSBuildExtensionsPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild | ', type = 3} [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = 'OmniSharp.MSBuild.Discovery.MSBuildLocator: Registered MSBuild instance: StandAlone 16.11.0 - "/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin"\n CscToolExe = csc.exe\n MSBuildToolsPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin\n CscToolPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin/Roslyn\n BypassFrameworkInstallChecks = true\n MSBuildExtensionsPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild | ', type = 3 }} [ INFO ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] 'OmniSharp.MSBuild.Discovery.MSBuildLocator: Registered MSBuild instance: StandAlone 16.11.0 - "/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin"\n CscToolExe = csc.exe\n MSBuildToolsPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin\n CscToolPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin/Roslyn\n BypassFrameworkInstallChecks = true\n MSBuildExtensionsPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild | ' [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = 'OmniSharp.MSBuild.Discovery.MSBuildLocator: Registered MSBuild instance: StandAlone 16.11.0 - "/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin"\n CscToolExe = csc.exe\n MSBuildToolsPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin\n CscToolPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin/Roslyn\n BypassFrameworkInstallChecks = true\n MSBuildExtensionsPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild | ', type = 3} [ DEBUG ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = 'OmniSharp.MSBuild.Discovery.MSBuildLocator: Registered MSBuild instance: StandAlone 16.11.0 - "/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin"\n CscToolExe = csc.exe\n MSBuildToolsPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin\n CscToolPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin/Roslyn\n BypassFrameworkInstallChecks = true\n MSBuildExtensionsPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild | ', type = 3 }} [ INFO ] 2021-07-03T00:23:09+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] 'OmniSharp.MSBuild.Discovery.MSBuildLocator: Registered MSBuild instance: StandAlone 16.11.0 - "/root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin"\n CscToolExe = csc.exe\n MSBuildToolsPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin\n CscToolPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild/Current/Bin/Roslyn\n BypassFrameworkInstallChecks = true\n MSBuildExtensionsPath = /root/.local/share/nvim/lspinstall/csharp/omnisharp/omnisharp/.msbuild | ' [ DEBUG ] 2021-07-03T00:23:11+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpFormattingWorkspaceOptionsProvider, Order: 0 | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:11+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpFormattingWorkspaceOptionsProvider, Order: 0 | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:11+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpFormattingWorkspaceOptionsProvider, Order: 0 | ", type = 3} [ DEBUG ] 2021-07-03T00:23:11+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpFormattingWorkspaceOptionsProvider, Order: 0 | ", type = 3 }} [ INFO ] 2021-07-03T00:23:11+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpFormattingWorkspaceOptionsProvider, Order: 0 | " [ DEBUG ] 2021-07-03T00:23:11+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpFormattingWorkspaceOptionsProvider, Order: 0 | ", type = 3} [ DEBUG ] 2021-07-03T00:23:11+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpFormattingWorkspaceOptionsProvider, Order: 0 | ", type = 3 }} [ INFO ] 2021-07-03T00:23:11+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.CSharpFormattingWorkspaceOptionsProvider, Order: 0 | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.Completion.CompletionOptionsProvider, Order: 0 | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.Completion.CompletionOptionsProvider, Order: 0 | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.Completion.CompletionOptionsProvider, Order: 0 | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.Completion.CompletionOptionsProvider, Order: 0 | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.Completion.CompletionOptionsProvider, Order: 0 | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.Completion.CompletionOptionsProvider, Order: 0 | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.Completion.CompletionOptionsProvider, Order: 0 | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.Completion.CompletionOptionsProvider, Order: 0 | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.RenameWorkspaceOptionsProvider, Order: 100 | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.RenameWorkspaceOptionsProvider, Order: 100 | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.RenameWorkspaceOptionsProvider, Order: 100 | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.RenameWorkspaceOptionsProvider, Order: 100 | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.RenameWorkspaceOptionsProvider, Order: 100 | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.RenameWorkspaceOptionsProvider, Order: 100 | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.RenameWorkspaceOptionsProvider, Order: 100 | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.RenameWorkspaceOptionsProvider, Order: 100 | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.ImplementTypeWorkspaceOptionsProvider, Order: 110 | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.ImplementTypeWorkspaceOptionsProvider, Order: 110 | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.ImplementTypeWorkspaceOptionsProvider, Order: 110 | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.ImplementTypeWorkspaceOptionsProvider, Order: 110 | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.ImplementTypeWorkspaceOptionsProvider, Order: 110 | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.ImplementTypeWorkspaceOptionsProvider, Order: 110 | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.ImplementTypeWorkspaceOptionsProvider, Order: 110 | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.ImplementTypeWorkspaceOptionsProvider, Order: 110 | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.BlockStructureWorkspaceOptionsProvider, Order: 140 | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.BlockStructureWorkspaceOptionsProvider, Order: 140 | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.BlockStructureWorkspaceOptionsProvider, Order: 140 | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.BlockStructureWorkspaceOptionsProvider, Order: 140 | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.BlockStructureWorkspaceOptionsProvider, Order: 140 | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.BlockStructureWorkspaceOptionsProvider, Order: 140 | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.BlockStructureWorkspaceOptionsProvider, Order: 140 | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.WorkspaceInitializer: Invoking Workspace Options Provider: OmniSharp.Roslyn.CSharp.Services.BlockStructureWorkspaceOptionsProvider, Order: 140 | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.Cake.CakeProjectSystem: Detecting Cake files in '/root/.local/share/nvim/lspinstall/csharp'. | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.Cake.CakeProjectSystem: Detecting Cake files in '/root/.local/share/nvim/lspinstall/csharp'. | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.Cake.CakeProjectSystem: Detecting Cake files in '/root/.local/share/nvim/lspinstall/csharp'. | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.Cake.CakeProjectSystem: Detecting Cake files in '/root/.local/share/nvim/lspinstall/csharp'. | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.Cake.CakeProjectSystem: Detecting Cake files in '/root/.local/share/nvim/lspinstall/csharp'. | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.Cake.CakeProjectSystem: Detecting Cake files in '/root/.local/share/nvim/lspinstall/csharp'. | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.Cake.CakeProjectSystem: Detecting Cake files in '/root/.local/share/nvim/lspinstall/csharp'. | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.Cake.CakeProjectSystem: Detecting Cake files in '/root/.local/share/nvim/lspinstall/csharp'. | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.Cake.CakeProjectSystem: Could not find any Cake files | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.Cake.CakeProjectSystem: Could not find any Cake files | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.Cake.CakeProjectSystem: Could not find any Cake files | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.Cake.CakeProjectSystem: Could not find any Cake files | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.Cake.CakeProjectSystem: Could not find any Cake files | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.Cake.CakeProjectSystem: Could not find any Cake files | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.Cake.CakeProjectSystem: Could not find any Cake files | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.Cake.CakeProjectSystem: Could not find any Cake files | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.MSBuild.ProjectSystem: No solution files found in '/root/.local/share/nvim/lspinstall/csharp' | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.MSBuild.ProjectSystem: No solution files found in '/root/.local/share/nvim/lspinstall/csharp' | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.MSBuild.ProjectSystem: No solution files found in '/root/.local/share/nvim/lspinstall/csharp' | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.MSBuild.ProjectSystem: No solution files found in '/root/.local/share/nvim/lspinstall/csharp' | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.MSBuild.ProjectSystem: No solution files found in '/root/.local/share/nvim/lspinstall/csharp' | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.MSBuild.ProjectSystem: No solution files found in '/root/.local/share/nvim/lspinstall/csharp' | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.MSBuild.ProjectSystem: No solution files found in '/root/.local/share/nvim/lspinstall/csharp' | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.MSBuild.ProjectSystem: No solution files found in '/root/.local/share/nvim/lspinstall/csharp' | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.Script.ScriptProjectSystem: Detecting CSX files in '/root/.local/share/nvim/lspinstall/csharp'. | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.Script.ScriptProjectSystem: Detecting CSX files in '/root/.local/share/nvim/lspinstall/csharp'. | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.Script.ScriptProjectSystem: Detecting CSX files in '/root/.local/share/nvim/lspinstall/csharp'. | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.Script.ScriptProjectSystem: Detecting CSX files in '/root/.local/share/nvim/lspinstall/csharp'. | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.Script.ScriptProjectSystem: Detecting CSX files in '/root/.local/share/nvim/lspinstall/csharp'. | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.Script.ScriptProjectSystem: Detecting CSX files in '/root/.local/share/nvim/lspinstall/csharp'. | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.Script.ScriptProjectSystem: Detecting CSX files in '/root/.local/share/nvim/lspinstall/csharp'. | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.Script.ScriptProjectSystem: Detecting CSX files in '/root/.local/share/nvim/lspinstall/csharp'. | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.Script.ScriptProjectSystem: Could not find any CSX files | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.Script.ScriptProjectSystem: Could not find any CSX files | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.Script.ScriptProjectSystem: Could not find any CSX files | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.Script.ScriptProjectSystem: Could not find any CSX files | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.Script.ScriptProjectSystem: Could not find any CSX files | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.Script.ScriptProjectSystem: Could not find any CSX files | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.Script.ScriptProjectSystem: Could not find any CSX files | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.Script.ScriptProjectSystem: Could not find any CSX files | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.WorkspaceInitializer: Configuration finished. | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.WorkspaceInitializer: Configuration finished. | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.WorkspaceInitializer: Configuration finished. | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.WorkspaceInitializer: Configuration finished. | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.WorkspaceInitializer: Configuration finished. | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.WorkspaceInitializer: Configuration finished. | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.WorkspaceInitializer: Configuration finished. | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.WorkspaceInitializer: Configuration finished. | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { id = 1, jsonrpc = "2.0", result = { capabilities = { codeActionProvider = { codeActionKinds = { "source.organizeImports", "refactor", "refactor.extract" } }, codeLensProvider = { resolveProvider = true }, completionProvider = { resolveProvider = true, triggerCharacters = { ".", " " } }, definitionProvider = vim.empty_dict(), documentFormattingProvider = vim.empty_dict(), documentOnTypeFormattingProvider = { firstTriggerCharacter = ";", moreTriggerCharacter = { "}", ")" } }, documentRangeFormattingProvider = vim.empty_dict(), documentSymbolProvider = vim.empty_dict(), executeCommandProvider = { commands = { "omnisharp/executeCodeAction", "omnisharp/executeCodeAction" } }, experimental = vim.empty_dict(), hoverProvider = vim.empty_dict(), implementationProvider = vim.empty_dict(), referencesProvider = vim.empty_dict(), renameProvider = vim.empty_dict(), signatureHelpProvider = { triggerCharacters = { ".", "?", "[" } }, textDocumentSync = { change = 1, openClose = true, save = { includeText = true } }, workspace = { fileOperations = vim.empty_dict(), workspaceFolders = { changeNotifications = true, supported = true } }, workspaceSymbolProvider = vim.empty_dict() }, serverInfo = { name = "OmniSharp", version = "1.37.11+Branch.tags-v1.37.11.Sha.da1e65b1e2badf80adc7db8ccd37e4cf253ca7b2.da1e65b1e2badf80adc7db8ccd37e4cf253ca7b2" } }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:395 ] "rpc.send.payload" { jsonrpc = "2.0", method = "initialized", params = { [true] = 6 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:854 ] "LSP[csharp]" "server_capabilities" { codeActionProvider = { codeActionKinds = { "source.organizeImports", "refactor", "refactor.extract" } }, codeLensProvider = { resolveProvider = true }, completionProvider = { resolveProvider = true, triggerCharacters = { ".", " " } }, definitionProvider = {}, documentFormattingProvider = {}, documentOnTypeFormattingProvider = { firstTriggerCharacter = ";", moreTriggerCharacter = { "}", ")" } }, documentRangeFormattingProvider = {}, documentSymbolProvider = {}, executeCommandProvider = { commands = { "omnisharp/executeCodeAction", "omnisharp/executeCodeAction" } }, experimental = {}, hoverProvider = {}, implementationProvider = {}, referencesProvider = {}, renameProvider = {}, signatureHelpProvider = { triggerCharacters = { ".", "?", "[" } }, textDocumentSync = { change = 1, openClose = true, save = { includeText = true } }, workspace = { fileOperations = {}, workspaceFolders = { changeNotifications = true, supported = true } }, workspaceSymbolProvider = {}} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:855 ] "LSP[csharp]" "initialized" { resolved_capabilities = { call_hierarchy = false, code_action = { codeActionKinds = { "source.organizeImports", "refactor", "refactor.extract" } }, code_lens = true, code_lens_resolve = true, completion = true, declaration = false, document_formatting = {}, document_highlight = false, document_range_formatting = {}, document_symbol = {}, execute_command = true, find_references = {}, goto_definition = {}, hover = {}, implementation = false, rename = true, signature_help = true, signature_help_trigger_characters = { ".", "?", "[" }, text_document_did_change = 1, text_document_open_close = true, text_document_save = { includeText = true }, text_document_save_include_text = true, text_document_will_save = false, text_document_will_save_wait_until = false, type_definition = false, workspace_folder_properties = { changeNotifications = true, supported = true }, workspace_symbol = {} }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:395 ] "rpc.send.payload" { jsonrpc = "2.0", method = "textDocument/didOpen", params = { textDocument = { languageId = "cs", text = 'using System;\nusing System.Collections.Generic;\nusing System.Linq;\nusing System.Threading.Tasks;\nusing Microsoft.AspNetCore.Builder;\nusing Microsoft.AspNetCore.Hosting;\nusing Microsoft.AspNetCore.Mvc;\nusing Microsoft.Extensions.Configuration;\nusing Microsoft.Extensions.DependencyInjection;\nusing Microsoft.Extensions.Hosting;\nusing Microsoft.Extensions.Logging;\nusing Microsoft.OpenApi.Models;\n\nnamespace NvimLsp\n{\n public class Startup\n {\n public Startup(IConfiguration configuration)\n {\n Configuration = configuration;\n }\n\n public IConfiguration Configuration { get; }\n\n // This method gets called by the runtime. Use this method to add services to the container.\n public void ConfigureServices(IServiceCollection services)\n {\n\n services.AddControllers();\n services.AddSwaggerGen(c =>\n {\n c.SwaggerDoc("v1", new OpenApiInfo { Title = "NvimLsp", Version = "v1" });\n });\n }\n\n // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.\n public void Configure(IApplicationBuilder app, IWebHostEnvironment env)\n {\n var foo = new Foo();\n if (env.IsDevelopment())\n {\n app.UseDeveloperExceptionPage();\n app.UseSwagger();\n app.UseSwaggerUI(c => c.SwaggerEndpoint("/swagger/v1/swagger.json", "NvimLsp v1"));\n }\n\n app.UseRouting();\n\n app.UseAuthorization();\n\n app.UseEndpoints(endpoints =>\n {\n endpoints.MapControllers();\n });\n }\n }\n}\n', uri = "file:///NvimLsp/Startup.cs", version = 0 } }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "textDocument/publishDiagnostics" { client_id = 1, params = { diagnostics = {}, uri = "file:///NvimLsp/Startup.cs" }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.LanguageServerProtocol.LanguageServerHost: Omnisharp server running using Lsp at location '/root/.local/share/nvim/lspinstall/csharp' on host 8002. | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/rpc.lua:496 ] "decoded" { jsonrpc = "2.0", method = "window/logMessage", params = { message = "OmniSharp.LanguageServerProtocol.LanguageServerHost: Omnisharp server running using Lsp at location '/root/.local/share/nvim/lspinstall/csharp' on host 8002. | ", type = 3 }} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.LanguageServerProtocol.LanguageServerHost: Omnisharp server running using Lsp at location '/root/.local/share/nvim/lspinstall/csharp' on host 8002. | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.LanguageServerProtocol.LanguageServerHost: Omnisharp server running using Lsp at location '/root/.local/share/nvim/lspinstall/csharp' on host 8002. | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.LanguageServerProtocol.LanguageServerHost: Omnisharp server running using Lsp at location '/root/.local/share/nvim/lspinstall/csharp' on host 8002. | " [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:680 ] "notification" "window/logMessage" { message = "OmniSharp.LanguageServerProtocol.LanguageServerHost: Omnisharp server running using Lsp at location '/root/.local/share/nvim/lspinstall/csharp' on host 8002. | ", type = 3} [ DEBUG ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:434 ] "default_handler" "window/logMessage" { client_id = 1, params = { message = "OmniSharp.LanguageServerProtocol.LanguageServerHost: Omnisharp server running using Lsp at location '/root/.local/share/nvim/lspinstall/csharp' on host 8002. | ", type = 3 }} [ INFO ] 2021-07-03T00:23:12+0200 ] /usr/share/nvim/runtime/lua/vim/lsp/handlers.lua:406 ] "OmniSharp.LanguageServerProtocol.LanguageServerHost: Omnisharp server running using Lsp at location '/root/.local/share/nvim/lspinstall/csharp' on host 8002. | " [ INFO ] 2021-07-03T00:25:10+0200 ] /usr/share/nvim/runtime/lua/vim/lsp.lua:1214 ] "exit_handler" { { _on_attach = , cancel_request = , config = { capabilities = { callHierarchy = { dynamicRegistration = false, = <1>{ __tostring = } }, textDocument = { codeAction = { codeActionLiteralSupport = { codeActionKind = { valueSet = { "", "Empty", "QuickFix", "Refactor", "RefactorExtract", "RefactorInline", "RefactorRewrite", "Source", "SourceOrganizeImports", "quickfix", "refactor", "refactor.extract", "refactor.inline", "refactor.rewrite", "source", "source.organizeImports" }, =
}, =
}, dynamicRegistration = false, =
}, completion = { completionItem = { commitCharactersSupport = false, deprecatedSupport = false, documentationFormat = { "markdown", "plaintext" }, preselectSupport = false, snippetSupport = false, =
}, completionItemKind = { valueSet = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25 }, =
}, contextSupport = false, dynamicRegistration = false, =
}, declaration = { linkSupport = true, =
}, definition = { linkSupport = true, =
}, documentHighlight = { dynamicRegistration = false, =
}, documentSymbol = { dynamicRegistration = false, hierarchicalDocumentSymbolSupport = true, symbolKind = { valueSet = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 }, =
}, =
}, hover = { contentFormat = { "markdown", "plaintext" }, dynamicRegistration = false, =
}, implementation = { linkSupport = true, =
}, publishDiagnostics = { relatedInformation = true, tagSupport = { valueSet = { 1, 2 }, =
}, =
}, references = { dynamicRegistration = false, =
}, rename = { dynamicRegistration = false, prepareSupport = true, =
}, signatureHelp = { dynamicRegistration = false, signatureInformation = { documentationFormat = { "markdown", "plaintext" }, =
}, =
}, synchronization = { didSave = true, dynamicRegistration = false, willSave = false, willSaveWaitUntil = false, =
}, typeDefinition = { linkSupport = true, =
}, =
}, window = { showDocument = { support = false, =
}, showMessage = { messageActionItem = { additionalPropertiesSupport = false, =
}, =
}, workDoneProgress = true, =
}, workspace = { applyEdit = true, configuration = true, symbol = { dynamicRegistration = false, hierarchicalWorkspaceSymbolSupport = true, symbolKind = { valueSet = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 }, =
}, =
}, workspaceEdit = { resourceOperations = { "rename", "create", "delete" }, =
}, workspaceFolders = true, =
} }, cmd = { "/root/.local/share/nvim/lspinstall/csharp/./omnisharp/run", "--languageserver", "--hostPID", "8002" }, cmd_cwd = "/root/.local/share/nvim/lspinstall/csharp", filetypes = { "cs", "vb" }, flags = {}, get_language_id = , handlers = <2>{}, init_options = {}, log_level = 2, message_level = 2, name = "csharp", on_attach = , on_exit = , on_init = , root_dir = "/NvimLsp", settings = vim.empty_dict(), =
}, handlers =
, id = 1, initialized = true, is_stopped = , messages = { messages = {}, name = "csharp", progress = {}, status = {} }, name = "csharp", notify = , offset_encoding = "utf-16", request = , request_sync = , resolved_capabilities = { call_hierarchy = false, code_action = <3>{ codeActionKinds = { "source.organizeImports", "refactor", "refactor.extract" } }, code_lens = true, code_lens_resolve = true, completion = true, declaration = false, document_formatting = <4>{}, document_highlight = false, document_range_formatting = <5>{}, document_symbol = <6>{}, execute_command = true, find_references = <7>{}, goto_definition = <8>{}, hover = <9>{}, implementation = false, rename = true, signature_help = true, signature_help_trigger_characters = <10>{ ".", "?", "[" }, text_document_did_change = 1, text_document_open_close = true, text_document_save = <11>{ includeText = true }, text_document_save_include_text = true, text_document_will_save = false, text_document_will_save_wait_until = false, type_definition = false, workspace_folder_properties = { changeNotifications = true, supported = true }, workspace_symbol = <12>{} }, rpc = { handle = , notify = , pid = 8004, request = }, server_capabilities = { codeActionProvider =
, codeLensProvider = { resolveProvider = true }, completionProvider = { resolveProvider = true, triggerCharacters = { ".", " " } }, definitionProvider =
, documentFormattingProvider =
, documentOnTypeFormattingProvider = { firstTriggerCharacter = ";", moreTriggerCharacter = { "}", ")" } }, documentRangeFormattingProvider =
, documentSymbolProvider =
, executeCommandProvider = { commands = { "omnisharp/executeCodeAction", "omnisharp/executeCodeAction" } }, experimental = {}, hoverProvider =
, implementationProvider = {}, referencesProvider =
, renameProvider = {}, signatureHelpProvider = { triggerCharacters =
}, textDocumentSync = { change = 1, openClose = true, save =
}, workspace = { fileOperations = {}, workspaceFolders = { changeNotifications = true, supported = true } }, workspaceSymbolProvider =
}, stop = , supports_method = , workspaceFolders = { { name = "/NvimLsp", uri = "file:///NvimLsp" } }, workspace_did_change_configuration = } }
kolpav commented 3 years ago

My config:

root@534e8d105493:/NvimLsp# cat ~/.config/nvim/init.vim
if empty(glob('~/.local/share/nvim/site/autoload/plug.vim'))
    silent !curl -fLo ~/.local/share/nvim/site/autoload/plug.vim --create-dirs
        \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
    autocmd VimEnter * PlugInstall --sync | source ~/.config/nvim/init.vim
endif

call plug#begin('~/.config/nvim/plugged')

Plug 'neovim/nvim-lspconfig'
Plug 'kabouzeid/nvim-lspinstall'
Plug 'ahmedkhalf/lsp-rooter.nvim'

call plug#end()

syntax enable                           " Enables syntax highlighing
set hidden                              " Required to keep multiple buffers open multiple buffers
set nowrap                              " Display long lines as just one line
set encoding=utf-8                      " The encoding displayed
set pumheight=10                        " Makes popup menu smaller
set fileencoding=utf-8                  " The encoding written to file
set ruler                                   " Show the cursor position all the time
set cmdheight=2                         " More space for displaying messages
set iskeyword+=-                        " treat dash separated words as a word text object"
set mouse=a                             " Enable your mouse
set splitbelow                          " Horizontal splits will automatically be below
set splitright                          " Vertical splits will automatically be to the right
set t_Co=256                            " Support 256 colors
set conceallevel=0                      " So that I can see `` in markdown files
set tabstop=2                           " Insert 2 spaces for a tab
set shiftwidth=2                        " Change the number of space characters inserted for indentation
set smarttab                            " Makes tabbing smarter will realize you have 2 vs 4
set expandtab                           " Converts tabs to spaces
set smartindent                         " Makes indenting smart
set autoindent                          " Good auto indent
set laststatus=0                        " Always display the status line
set background=dark                     " tell vim what the background color looks like
set showtabline=2                       " Always show tabs
set nobackup                            " This is recommended by coc
set nowritebackup                       " This is recommended by coc
set updatetime=300                      " Faster completion
set timeoutlen=500                      " By default timeoutlen is 1000 ms
set formatoptions-=cro                  " Stop newline continution of comments
set clipboard=unnamedplus               " Copy paste between vim and everything else
set signcolumn=yes

lua << EOF

require'lspinstall'.setup() -- important

local servers = require'lspinstall'.installed_servers()
for _, server in pairs(servers) do
  require'lspconfig'[server].setup{}
end

EOF

lua << EOF

require("lsp-rooter").setup {
-- your configuration comes here
-- or leave it empty to use the default settings
-- refer to the configuration section below
}

EOF

lua << EOF
local nvim_lsp = require('lspconfig')

-- Use an on_attach function to only map the following keys
-- after the language server attaches to the current buffer
local on_attach = function(client, bufnr)
  local function buf_set_keymap(...) vim.api.nvim_buf_set_keymap(bufnr, ...) end
  local function buf_set_option(...) vim.api.nvim_buf_set_option(bufnr, ...) end

  --Enable completion triggered by <c-x><c-o>
  buf_set_option('omnifunc', 'v:lua.vim.lsp.omnifunc')

  -- Mappings.
  local opts = { noremap=true, silent=true }

  -- See `:help vim.lsp.*` for documentation on any of the below functions
  buf_set_keymap('n', 'gD', '<Cmd>lua vim.lsp.buf.declaration()<CR>', opts)
  buf_set_keymap('n', 'gd', '<Cmd>lua vim.lsp.buf.definition()<CR>', opts)
  buf_set_keymap('n', 'K', '<Cmd>lua vim.lsp.buf.hover()<CR>', opts)
  buf_set_keymap('n', 'gi', '<cmd>lua vim.lsp.buf.implementation()<CR>', opts)
  buf_set_keymap('n', '<C-k>', '<cmd>lua vim.lsp.buf.signature_help()<CR>', opts)
  buf_set_keymap('n', '<space>wa', '<cmd>lua vim.lsp.buf.add_workspace_folder()<CR>', opts)
  buf_set_keymap('n', '<space>wr', '<cmd>lua vim.lsp.buf.remove_workspace_folder()<CR>', opts)
  buf_set_keymap('n', '<space>wl', '<cmd>lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))<CR>', opts)
  buf_set_keymap('n', '<space>D', '<cmd>lua vim.lsp.buf.type_definition()<CR>', opts)
  buf_set_keymap('n', '<space>rn', '<cmd>lua vim.lsp.buf.rename()<CR>', opts)
  buf_set_keymap('n', '<space>ca', '<cmd>lua vim.lsp.buf.code_action()<CR>', opts)
  buf_set_keymap('n', 'gr', '<cmd>lua vim.lsp.buf.references()<CR>', opts)
  buf_set_keymap('n', '<space>e', '<cmd>lua vim.lsp.diagnostic.show_line_diagnostics()<CR>', opts)
  buf_set_keymap('n', '[d', '<cmd>lua vim.lsp.diagnostic.goto_prev()<CR>', opts)
  buf_set_keymap('n', ']d', '<cmd>lua vim.lsp.diagnostic.goto_next()<CR>', opts)
  buf_set_keymap('n', '<space>q', '<cmd>lua vim.lsp.diagnostic.set_loclist()<CR>', opts)
  buf_set_keymap("n", "<space>f", "<cmd>lua vim.lsp.buf.formatting()<CR>", opts)

end

-- Use a loop to conveniently call 'setup' on multiple servers and
-- map buffer local keybindings when the language server attaches
local servers = { "pyright", "rust_analyzer", "tsserver" }
for _, lsp in ipairs(servers) do
  nvim_lsp[lsp].setup {
    on_attach = on_attach,
    flags = {
      debounce_text_changes = 150,
    }
  }
end
EOF

lua << EOF
vim.lsp.set_log_level("debug")
EOF
ajoubert commented 3 years ago

Your issue seems to be the missing assembly references. I just had a very similar situation trying to get this plugin to work with a unity setup.

Two things need to happen for it to work: your local omnisharp server need to use your system mono, and the lspinstall server configuration needs to provide the root dir of your project as parameter when launching the lsp server so your solution file can be parsed.

In order, you should try to:

  1. Make sure mono is installed on your system
  2. Modify ~/.local/share/nvim/lspinstall/csharp/omnisharp/run (or wherever else you install your servers), and replace the line bin_dir=${base_dir}/bin with bin_dir=/usr/bin
  3. Modify your ${VIM_PLUGINS_DIR}/nvim-lspinstall/lua/lspinstall/servers/csharp.lua to include the root folder in the default command. I personally achieved this with :
    local getroot = require "lspconfig/util".root_pattern("*.csproj", "*.sln")
    config.default_config.cmd = { "./omnisharp/run", "-s", getroot(vim.fn.getcwd()), "--languageserver", "--hostPID", tostring(vim.fn.getpid()) }

    What I don't like about my approach is that I'm re-detecting the root directory while neovim's lsp client seems to already do it once (it shows up when running :LspInfo), but I did not find how to reference it...

On that topic, @MordechaiHadad do you think that passing the root directory would be a sane default to have for this plugin? If so, and if you don't know a better approach, I can open a pull request with this modification.

kabouzeid commented 3 years ago

@ajoubert you can use on_new_config when you want the root directory that is detected by lspconfig

MordechaiHadad commented 3 years ago

@kolpav this indeed is super weird, i experience the same issue with missing assemblies but i go to definition works fine. Are you using the native lsp command aka: :lua vim.lsp.buf.definition()? if not what are you using then?

@ajoubert it seems sane to use as idk another way for now, how are you even able to require lspconfig? i fail when trying to write your solution.

MordechaiHadad commented 3 years ago

@ajoubert you can use on_new_config when you want the root directory that is detected by lspconfig

what is that exactly?

kolpav commented 3 years ago

@MordechaiHadad

  buf_set_keymap('n', 'gD', '<Cmd>lua vim.lsp.buf.declaration()<CR>', opts)
  buf_set_keymap('n', 'gd', '<Cmd>lua vim.lsp.buf.definition()<CR>', opts)

At ~0:40 you can se me trying to use both of these commands.

MordechaiHadad commented 3 years ago

@MordechaiHadad

  buf_set_keymap('n', 'gD', '<Cmd>lua vim.lsp.buf.declaration()<CR>', opts)
  buf_set_keymap('n', 'gd', '<Cmd>lua vim.lsp.buf.definition()<CR>', opts)

At ~0:40 you can se me trying to use both of these commands.

declaration is the only one that doesn't work for me for some odd reason.

kabouzeid commented 3 years ago

@ajoubert you can use on_new_config when you want the root directory that is detected by lspconfig

what is that exactly?

It's documented here: https://github.com/neovim/nvim-lspconfig/blob/48e47b4d26e45977d27c06dc1bc116416ca9276d/ADVANCED_README.md#setup-function

For usage see: https://github.com/kabouzeid/nvim-lspinstall/blob/58a23802ba0b5cc1e62be4ab3e9e0c8e7033a6bc/lua/lspinstall/servers/graphql.lua or: https://github.com/neovim/nvim-lspconfig/search?q=on_new_config

Basically you can define a callback that receives the config and resolved root dir, and you can then further modify the config.

ajoubert commented 3 years ago

@kabouzeid THANK YOU! I completely missed on_new_config, that's exactly what I was looking for.

That said, if I'm understanding this properly I think there would be value in already providing an on_new_config property directly in /lua/lspinstall/servers/csharp.lua, which would then pass the detected root to the lsp server startup command. Is there any reason / downside to this approach I'm not getting?

I guess something along the lines of :

on_new_config = function(config, root)
  -- if root doesn't exist
    return
  end
  config.cmd = -- same command with root added as workspace with the `-s` argument
end,
kabouzeid commented 3 years ago

Usually language servers are notified about the root dir via the LSP protocol itself. This is how it works with every other language server. Does the csharp language server only get the correct root dir when it's passed as a command line flag?

ajoubert commented 3 years ago

It seems like so. I can't find the page that pointed me to the command line argument initially. All I can say for now is that I spent some time researching my issue (lsp working fine as long as I did not depend on any .csproj file to find assembly references).

Two things needed to be done for it to work:

  1. The omnisharp server downloaded needed to be modified to not use the mono executable it includes, but instead rely on the global one installed on the system
  2. The omnisharp server must be started by manually providing the workspace as command line parameter

I did not yet find a way to configure the server to auto-detect the workspace (though as my previous message can attest, I still have progress to make when it comes to researching through the documentation ^^'), what is certain is that this is not the default configuration, hence my suggestion to alter what we can in this project to make the task easier for future potential users.

If I have some time over the weekend, I will try and forward some more information I found on the topic.

ajoubert commented 3 years ago

Got a minute to look for it. Indeed, the need to manually specify the working directory is a requirement of the omnisharp lsp server, you can find the mention of the command over there in its documentation.

I also double-checked it initially by looking at how my other extension managed to work fine (omnisharp-vim), and saw that they were indeed using the -s command line when spinning the server, and have been doing so from the beginning.

I believe it indicates that nvim-lspinstall should also provide that behavior by default, what do you think ? I have been running this change on my local system, which seems to work as expected when working with the solution file generated by Unity (my use-case).

MordechaiHadad commented 3 years ago

Got a minute to look for it. Indeed, the need to manually specify the working directory is a requirement of the omnisharp lsp server, you can find the mention of the command over there in its documentation.

I also double-checked it initially by looking at how my other extension managed to work fine (omnisharp-vim), and saw that they were indeed using the -s command line when spinning the server, and have been doing so from the beginning.

I believe it indicates that nvim-lspinstall should also provide that behavior by default, what do you think ? I have been running this change on my local system, which seems to work as expected when working with the solution file generated by Unity (my use-case).

I agree with you, @kabouzeid got anything to say?

kabouzeid commented 3 years ago

Seems like you are right, will fix this, thanks

kolpav commented 3 years ago

@kabouzeid Here https://github.com/kabouzeid/nvim-lspinstall/issues/75#issuecomment-846569808 you said everything works for you even go to definition hows that possible? It just never worked for me maybe you did something which is not mentioned in instructions? Anyway I am glad you guys were able to figure out where the problem is 👍 the lspinstall is great btw it saves many hours trying to set up your dev environment on new machine.

ajoubert commented 3 years ago

I have to say I didn't check the 'Go to definition' specifically, I rather checked that proper code completion would happen.

When I look at the video you sent, you can see your lsp server mentioning Unecessary using directive, this means that your solution file wasn't parsed properly. Because of it, you can only get proper lsp support for things defined in your current file (and probably in other files you would import via relative paths? I'm not sure since I don't know much about lua...). 'Go to definition' as well as completion and everything else won't work for the rest.

The fix being mentioned above should at least fix that error, and would in theory allow every other lsp-related command to work (inspection, documentation, go to definition etc).

Could you verify that those Unecessary using directive are now gone and the go to definition is still not working ?

kolpav commented 3 years ago

@ajoubert Makes sense, I'll check when the fix PR is merged.

kabouzeid commented 3 years ago

1b43f88abf129e19017edb4dbec61e3eb2718bdc

MordechaiHadad commented 3 years ago

1b43f88

ayy good job

MordechaiHadad commented 3 years ago

well damn doesn't look like it works for me now

kabouzeid commented 3 years ago

Sorry to hear that. Unfortunately I don't know anything about csharp, so I won't be able to help :/

MordechaiHadad commented 3 years ago

Sorry to hear that. Unfortunately I don't know anything about csharp, so I won't be able to help :/

fair ill try looking into it once i get a chance. :)

kabouzeid commented 3 years ago

my lsp log tells me at least that omnisharp couldn't find my dotnet installation. not sure if it's relevant

tail -f ~/.cache/nvim/lsp.log

MordechaiHadad commented 3 years ago

my lsp log tells me at least that omnisharp couldn't find my dotnet installation. not sure if it's relevant

tail -f ~/.cache/nvim/lsp.log

thanks will try it out.

MordechaiHadad commented 3 years ago

Hmmm weird... it seems like lsp for csharp starts for me now only when im outside the project dir and when i open the cs file through Startify. I'll look more into it

kabouzeid commented 3 years ago

it takes a few seconds to start up. give it like 10 secs or so

MordechaiHadad commented 3 years ago

it takes a few seconds to start up. give it like 10 secs or so

yeah i know that i give it like a minute and even the lsp log doesnt say anything when im inside the project dir

MordechaiHadad commented 3 years ago

Okay so on my end i have to personally start lsp for all files no matter which using :LspStart maybe i accidentally screwed lazyloading. Anyhoo the new update works fine. good job @kabouzeid and @ajoubert

ajoubert commented 3 years ago

Thanks for the quick fix @kabouzeid (and for the credit!). I could pull the latest changes and confirms that it works as expected for me (including the auto-start).

Unfortunately @kolpav even after the fix and the lsp working, I belive your issue of 'Go to definition' will probably still not be fixed (or at least, not completely). I have not done a lot of research on the topic, but here's what I could find: when your project depends on external dependencies (in my case provided by unity, in your case that was something else), when you try to go to definition the lsp responds with a file path that does not exist yet. I believe the expectation of the server has of the client at this point is to recognize a certain pattern in the file name (%24metadata%24), and handle it by creating a temporary file in your temporary folder, and populate it through a couple additional lsp calls to get the content of the file.

Unfortunately, I do not believe this is standard and is something nvim-lspinstall can do (or should do) much about.

That said, you can make use of omnisharp-vim which seems to do what I described. You'll probably just want to disable its syntax highlighting and other features you don't use, and override your shortcut on csharp files to call 'OmsniSharpGoToDefinition' instead of the lua equivalent.

If someone at some point finds a better solution I would be very interested, but I don't have another idea at the moment.

MordechaiHadad commented 3 years ago

@ajoubert I think I misunderstood his issue, is he trying to go to definition of self defined objects or external libraries objects using c# decompilation?

ajoubert commented 2 years ago

@MordechaiHadad if I am understanding the video he sent correctly, I believe he was trying to go to the definition of external libraries objects.

mjlbach commented 2 years ago

Can you not just add the following to your omnisharp config? What needs to be implemented clientside? Is the decompiled file contents part of the response in go-to definition? https://github.com/OmniSharp/omnisharp-vim/issues/659#issuecomment-729927442

kolpav commented 2 years ago

I created class Foo somewhere inside the project and inside the same namespace as Startup.cs. Then I create an instance var foo = new Foo(); place cursor over Foo and press "go to definition" shortcut.

So to answer your question @MordechaiHadad its on self defined object.

ajoubert commented 2 years ago

@mjlbach I will check if it's a configuration issue just in case, though I highly doubt it.

The decompiled file content is not part of the response in the go-to definition (the response contains a URI to a file that doesn't exist in the system yet). Here's an example of such response for 'MonoBehaviour' as provided by Unity:

{"jsonrpc":"2.0","id":2,"result":{"uri":"file:///%24metadata%24/Project/Assembly-CSharp/Assembly/UnityEngine/CoreModule/Symbol/UnityEngine/MonoBehaviour.cs","range":{"start":{"line":21,"character":17},"end":{"line":21,"character":30}}}}Content-Length: 370

Digging a bit, it seems that it was initially raised as an issue on neovim's repo, where I see you also participated, and that support is now part of the wishlist

In any case, I believe this was only relevant for @kolpav to know in case he was struggling with going to the definition of something defined externally.

Johan-Palacios commented 2 years ago

I have the same issue, but i can´t solve it :(

MordechaiHadad commented 2 years ago

I wonder is it possible to change bin_dir=${base_dir}/bin to bin_dir=/usr/bin inside ~/.local/share/nvim/lspinstall/csharp/omnisharp/run

kabouzeid commented 2 years ago

This could work, did you try it out? I will not add this "fix" to lspinstall though. It should be fixed by omnisharp. Maybe you could create an issue there, and link back to this issue?

ajoubert commented 2 years ago

@MordechaiHadad I guess we just need to modify the install_script to perform that update right?

But I am not sure it would be wise. There is no certainty the user would have installed mono globally.

Instead of just changing that line I suppose run should be updated to automatically detect whether /usr/bin/mono exists and is executable, and replace the bin_dir only if that is the case.

Though I suppose it's rather something omnisharp should fix.

MordechaiHadad commented 2 years ago

@ajoubert @kabouzeid yeah i agree that this shouldnt be part of lsp-install but making an omnisharp issue, ill try doing that.

Johan-Palacios commented 2 years ago

I solved the problem using dotnet. For example first i create a console program, dotnet new console later of that I create a sln solution dotnet new sln, and after of that i add the sln solution for the proyect dotnet sln add [proyect_name]

And omnisharp works very well

cdimitroulas commented 2 years ago

@MordechaiHadad did you end up opening an issue with omnisharp? If so you could post the link :smile:? I couldn't seem to find it

ELLIOTTCABLE commented 2 years ago

For anybody following-along on this, I've tracked down all of the details about what's causing these problems, and proposed this change over on #127.

Basically, you shouldn't be modifying the run script that ships with Mono (and thus is bundled into OmniSharp); you should be bypassing it at the client (us.) level to directly run mono omnisharp/OmniSharp.exe in situations where you want the system-Mono to be preferred (Unity projects, mostly.)

This should be handled by this plugin; it only needs a small patch. The equivalent setting we'd be replicating, over on the VScode side, is known as omnisharp.useGlobalMono, and it has precisely the behaviour I just described.

Hope this is helpfulp! Patch incoming when I have a moment, and/or can figure out the idiomatic way to handle user-configuration in Lua!