Closed ianzhang366 closed 2 years ago
ServerCapabilities
&protocol.InitializeResult{Capabilities:protocol.ServerCapabilities{TextDocumentSync:map[string]interface {}{"change":2, "openClose":true, "save":map[string]interface {}{"includeText":true}}, CompletionProvider:(*protocol.CompletionOptions)(0xc000228a40), HoverProvider:map[string]interface {}{}, SignatureHelpProvider:(*protocol.SignatureHelpOptions)(0xc000228b00), DeclarationProvider:interface {}(nil), DefinitionProvider:map[string]interface {}{}, TypeDefinitionProvider:interface {}(nil), ImplementationProvider:map[string]interface {}{}, ReferencesProvider:map[string]interface {}{}, DocumentHighlightProvider:interface {}(nil), DocumentSymbolProvider:map[string]interface {}{}, CodeActionProvider:map[string]interface {}{"codeActionKinds":[]interface {}{"source.organizeImports", "refactor", "refactor.extract"}}, CodeLensProvider:(*protocol.CodeLensOptions)(0xc00021cd48), DocumentLinkProvider:(*protocol.DocumentLinkOptions)(nil), ColorProvider:interface {}(nil), WorkspaceSymbolProvider:map[string]interface {}{}, DocumentFormattingProvider:map[string]interface {}{}, DocumentRangeFormattingProvider:map[string]interface {}{}, DocumentOnTypeFormattingProvider:(*protocol.DocumentOnTypeFormattingOptions)(0xc000221680), RenameProvider:map[string]interface {}{}, FoldingRangeProvider:interface {}(nil), SelectionRangeProvider:interface {}(nil), ExecuteCommandProvider:(*protocol.ExecuteCommandOptions)(0xc000266180), Experimental:map[string]interface {}{}, Workspace:(*struct { WorkspaceFolders *struct { Supported bool "json:\"supported,omitempty\""; ChangeNotifications interface {} "json:\"changeNotifications,omitempty\"" } "json:\"workspaceFolders,omitempty\"" })(0xc00020e198)}, ServerInfo:(*struct { Name string "json:\"name\""; Version string "json:\"version,omitempty\"" })(0xc0002661a0), Custom:map[string]interface {}(nil)}
This is a duplicate of https://github.com/OmniSharp/omnisharp-roslyn/issues/2238 When going to a definition outside of the source, OmniSharp uses a custom workflow for providing the content of the metadata document or the decompiled document. This is currently not compatible with LSP.
Hi team,
what I'm trying to do
I'm trying to set up
omnisharp-roslyn
LSP with acme-lsp, in this way, I can makeacme
editor as a c-sharp IDE.my current blocker
I managed to get the most features from
roslyn
, however, when I dogo to definitions
on a standard library,roslyn
returns a URI with$metadata$
as prefix.The $metadata$ prefix confused the editor, thus, the editor can't open the source file.
not sure if I'm missing some configuration for
roslyn
or something elsehow I run
omnisharp-roslyn
I'm on macOS with OmniSharp binary and dotnet 6.0 CLI.
"/Users/ian/csharp/omnisharp-osx-x64-net6.0/OmniSharp -lsp -v -s /Users/ian/csharp/playground"
Here's the log of
OmniSharp
: