SourceKit-LSP 是 Language Server Protocol (LSP) 针对 Swift 和基于 C 的语言的实现。它为支持 LSP 的编辑器提供智能编辑器功能,例如代码补全和跳转到定义。SourceKit-LSP 构建于 sourcekitd 和 clangd 之上,以实现高保真语言支持,并提供强大的源代码索引以及跨语言支持。SourceKit-LSP 支持使用 Swift Package Manager 的项目以及生成 compile_commands.json
文件的项目,例如 CMake。
https://swiftlang.cn/tools 列出了支持 LSP 的常用编辑器,这些编辑器可以连接到 SourceKit-LSP,以提供智能编辑器功能以及设置指南。
重要提示
SourceKit-LSP 不会在后台更新其全局索引或在后台构建 Swift 模块。因此,如果项目最近没有构建,许多跨模块或全局功能将受到限制。要更新索引或重建 Swift 模块,请构建您的项目或启用实验性后台索引,如启用实验性后台索引中所述。
要了解更多关于 SourceKit-LSP 的信息,请参阅文档。
注意
如果您在 SwiftPM 项目中使用 SourceKit-LSP,并且需要在 swift build
调用中传递额外的参数(这在嵌入式项目中很常见),则需要按照将 SourceKit-LSP 用于嵌入式项目中所述,告知 SourceKit-LSP 这些参数。
如果您在使用 SourceKit-LSP 时遇到任何问题,我们感谢您在 GitHub Issue 上提交错误报告。
如果您想为 SourceKit-LSP 贡献代码,请参阅 CONTRIBUTING.md 以获取更多信息。