csharp-ls 0.21.0
Description
csharp-ls brings advanced language features like code completion, diagnostics, and refactoring to your editor for C# projects. It supports projects targeting older .NET SDK versions including .NET Core 3, .NET Framework 4.8, and potentially earlier ones.
See FEATURES.md for a more detailed discussion regarding features and customization provided with csharp-ls.
See CHANGELOG.md for the list of recent improvements/fixes.
See TROUBLESHOOTING.md for server troubleshooting and diagnostics.
csharp-ls is MIT-licensed (see LICENSE) and is provided with no warranty of any kind.
Quick Start
csharp-ls requires the .NET 10 SDK or later to be installed on your machine. Please head to Download .NET to download it.
The server can be installed as csharp-ls dotnet tool:
dotnet tool install --global csharp-ls
Once installed, your editor's LSP client should automatically detect and start
csharp-ls when opening C# project files.
Settings
Configuration
csharp.solution- solution to load, optionalcsharp.applyFormattingOptions- use formatting options as supplied by the client (may override.editorconfigvalues), defaults tofalse
Command Line Arguments
USAGE: csharp-ls [--help]
[--version]
[--loglevel <level>]
[--solution <solution>]
[--debug]
[--diagnose]
[--features <features>]
OPTIONS:
--version, -v display versioning information
--loglevel, -l <level>
set log level, <trace|debug|info|warning|error>; default is `info`
--solution, -s <solution>
specify .sln file to load (relative to CWD)
--debug enable debug mode
--diagnose run diagnostics
--features, -f <features>
enable optional features, comma-separated: metadata-uris
--help display this list of options.
See csharp-ls --help.
Experimental Client Capabilities
Decompiled Code/Metadata URIs
csharp:/ metadata URIs can be enabled by setting the
experimental.csharp.metadataUris client capability to true.
Clients
csharp-ls implements the standard LSP protocol to interact with your editor.
However, there are some features that require a non-standard implementation.
This is where editor-specific plugins can be helpful.
Notable clients:
- Neovim: csharpls-extended-lsp.nvim
- Emacs: emacs/lsp-mode
- Visual Studio Code: vscode-csharp-ls @ github
Acknowledgements
- csharp-ls is not affiliated with Microsoft Corp.,
- csharp-ls uses Roslyn to parse and update code,
- csharp-ls uses the LSP interface from the Ionide.LanguageServerProtocol project,
- csharp-ls uses ILSpy/ICSharpCode.Decompiler to decompile types in assemblies to C# source.
Alternatives
| Version | Downloads | Last updated |
|---|---|---|
| 0.22.0 | 0 | 2026-02-05 |
| 0.21.0 | 1 | 2026-01-16 |
| 0.20.0 | 0 | 2025-11-13 |
| 0.19.0 | 0 | 2025-08-20 |
| 0.18.0 | 0 | 2025-06-23 |
| 0.17.0 | 0 | 2025-04-30 |
| 0.16.0 | 0 | 2024-12-24 |
| 0.15.0 | 0 | 2024-08-15 |
| 0.14.0 | 0 | 2024-06-23 |
| 0.13.0 | 0 | 2024-05-08 |
| 0.12.0 | 0 | 2024-04-22 |
| 0.11.0 | 0 | 2024-01-21 |
| 0.10.0 | 0 | 2023-11-04 |
| 0.9.0 | 0 | 2023-08-12 |
| 0.8.0 | 0 | 2023-05-06 |
| 0.7.1 | 0 | 2023-04-08 |
| 0.7.0 | 0 | 2023-03-25 |
| 0.6.1 | 0 | 2023-02-26 |
| 0.6.0 | 0 | 2022-12-30 |
| 0.5.7 | 0 | 2022-10-09 |
| 0.5.6 | 0 | 2022-09-05 |
| 0.5.5 | 0 | 2022-08-23 |
| 0.5.4 | 0 | 2022-08-20 |
| 0.5.3 | 0 | 2022-07-29 |
| 0.5.2 | 0 | 2022-07-02 |
| 0.5.1 | 0 | 2022-05-19 |
| 0.5.0 | 0 | 2022-04-23 |
| 0.4.3 | 0 | 2022-04-04 |
| 0.4.2 | 0 | 2022-03-29 |
| 0.4.1 | 0 | 2022-03-23 |
| 0.4.0 | 0 | 2022-03-08 |
| 0.3.0 | 0 | 2022-02-04 |
| 0.2.1 | 0 | 2022-01-22 |
| 0.2.0 | 0 | 2022-01-17 |
| 0.1.9 | 0 | 2021-12-27 |
| 0.1.8 | 0 | 2021-12-08 |
| 0.1.7 | 0 | 2021-11-26 |
| 0.1.6 | 0 | 2021-11-09 |
| 0.1.5 | 0 | 2021-11-03 |
| 0.1.4 | 0 | 2021-10-20 |
| 0.1.3 | 0 | 2021-10-02 |
| 0.1.2 | 0 | 2021-09-14 |
| 0.1.1-alpha | 0 | 2021-09-11 |