许多主流编程措辞都有很好的 LSP 实现:
- JavaScript/TypeScript: TypeScript 措辞做事器是最早和最成熟的 LSP 实现之一。
- Python: Python Language Server 和 Pyright 供应了精良的支持。
- Java: Eclipse JDT Language Server 供应了全面的 Java 支持。
- C/C++: Clangd 和 cquery 为 C/C++ 供应了强大的 LSP 支持。
- Go: gopls 是 Go 措辞的官方 LSP 实现。
- Rust: rust-analyzer 为 Rust 供应了高质量的 LSP 支持。
- C#: OmniSharp 为 C# 供应了全面的 LSP 实现。
2. 其他常用措辞
许多其他常用措辞也有不错的 LSP 支持:
- PHP: Intelephense 和 PHP Language Server
- Ruby: Solargraph
- Kotlin: Kotlin Language Server
- Swift: SourceKit-LSP
- Scala: Metals
- Haskell: Haskell Language Server
- Lua: Lua Language Server
3. 特定领域措辞 (DSLs) 和配置措辞
LSP 也被用于支持各种 DSLs 和配置措辞:
- SQL: SQL Language Server
- Docker: Docker Language Server
- YAML: YAML Language Server
- JSON: JSON Language Server
- XML: XML Language Server
4. 新兴和小众措辞
一些新兴或相对小众的措辞也开始采取 LSP:
- Dart: Dart Analysis Server
- Julia: LanguageServer.jl
- Elixir: Elixir-LS
- Nim: nimlsp
- Crystal: crystalline
5. 多措辞做事器
有些 LSP 实现支持多种措辞:
- Sourcegraph: 支持多种措辞的通用 LSP 做事器。
- Eclipse Wild Web Developer: 为 Web 技能供应多措辞支持。
6. 实现质量和完全性
不同措辞的 LSP 实现质量和完全性可能有所不同:
- 一些措辞(如 TypeScript、Python、Java)的实现非常成熟和完全。
- 其他措辞可能只实现了部分 LSP 功能,或者仍在积极开拓中。
7. 社区和掩护
LSP 实现的生动度和掩护情形也各不相同:
- 一些实现有大公司或生动社区支持,更新频繁。
- 其他实现可能是个人项目,更新可能不太规律。
8. 自定义和扩展
LSP 的灵巧性许可为特定需求创建自定义措辞做事器:
- 一些公司为内部利用的专有措辞开拓 LSP 做事器。
- 研究职员利用 LSP 为实验性措辞或工具供应支持。
9. 持续发展
LSP 生态系统在不断发展:
- 新的措辞不断加入 LSP 支持。
- 现有实现持续改进,添加新功能。
总结来说,LSP 对编程措辞的支持非常广泛,涵盖了从主流措辞到小众措辞的大部分范围。虽然支持的质量和完全性可能因措辞而异,但整体趋势是积极的,越来越多的措辞正在采取或改进其 LSP 实现。这使得开拓者可以在各种编程措辞中享受到同等的、高质量的开拓体验。