Skip to content
This repository has been archived by the owner on Dec 22, 2021. It is now read-only.

matarillo/LanguageServerProtocol

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LanguageServerProtocol

A library to handle Language Server Protocol.

A sample program is available at: matarillo/vscode-languageserver-csharp-example

Installation

NuGet Package is available. Run the following command in NuGet Package Manager Console.

PM> Install-Package LanguageServerProtocol

Usage

LanguageServer.Connection is available.

  • To handle messages from client to server, call connection.RequestHandlers.Set method and/or connection.NotificationHandlers.Set method to register handler methods.
  • To handle messages from server to client, call methods of LanguageServer.Client.ClientProxy, LanguageServer.Client.WindowProxy, LanguageServer.Client.WorkspaceProxy, and LanguageServer.Client.TextDocumentProxy classes via Proxy property of the connection.
  • To start listening, call Listen() method of the connection.

For your convenience, LanguageServer.ServiceConnection is also available.

  • Define a connection class derived from LanguageServer.ServiceConnection.
  • To handle messages from client to server, override virtual methods.

Versioning

This library roughly follows SemVer, but its version is not synchronized with the protocol's.

  • Major - incremented when the release has breaking changes at .NET/IL level. Note that this may occur even if parameter types and/or return types are extended while keeping backward compatibility at JS/TS level.
  • Minor - incremented when the release has new non-breaking features.
  • Patch - incremented when other than those above.

About

A library to handle Language Server Protocol. (C#)

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages