Swift采用语言服务器协议

苹果的Swift团队宣布将为Swift提供语言服务器协议(LSP)支持,允许开发者在任何支持LSP的编辑器中使用Swift,享受代码补全、语法高亮等功能。SwiftLSP服务将提高Swift在Linux上的可用性,可能改善该语言在苹果生态系统外的采用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

\u003cp\u003e苹果的Swift团队宣布,他们将\u003ca href=\"https://forums.swift.org/t/new-lsp-language-service-supporting-swift-and-c-family-languages-for-any-editor-and-platform/17024\"\u003e为Swift提供语言服务器协议(LSP)支持\u003c/a\u003e。这将为开发者提供在支持LSP的任何编辑器中使用Swift的可能性,并获得代码补全、语法高亮等功能。\u003c/p\u003e\n\u003cp\u003e除了代码补全和语法高亮之外,兼容LSP语言服务的Swift还将支持跨C/C++/ObjC源码的跨语言索引,从而实现转到定义、调用层次、搜索符号和重构功能。苹果的团队计划将Xcode引入新的语言服务,并对协议进行扩展,以支持LSP中不包含的Xcode编辑功能。\u003c/p\u003e\n\u003cp\u003e根据目前的计划,Swift LSP服务将使用\u003ca href=\"https://github.com/apple/swift/tree/master/tools/SourceKit\"\u003eSourceKit\u003c/a\u003e,并将其与\u003ca href=\"https://clang.llvm.org/extra/clangd.html\"\u003eClangd\u003c/a\u003e集成,后者是一个基于Clang的语言服务器协议开源实现。GitHub上\u003ca href=\"https://github.com/apple/sourcekit-lsp\"\u003e提供\u003c/a\u003e了Swift的语言服务器协议实现。尽管如此,它尚处于早期开发阶段,大多数更高级的特性还没有提供。\u003c/p\u003e\n\u003cp\u003eSwift LSP服务的其中一个好处是,它将提高Swift在Linux上的可用性,从而可能会改善该语言在苹果生态系统之外的采用。此外,作为将LSP引入Xcode的附带效果,Xcode可以包括对其他语言的支持,如C#、Rust等等,也包括一些理论上Xcode已经支持的语言,如XML、JSON等。不过,使Xcode兼容LSP目前并不是团队的重点。\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://langserver.org/\"\u003e语言服务器协议\u003c/a\u003e最初是\u003ca href=\"https://www.infoq.cn/article/2016%2F07%2Flanguage-server-protocol\"\u003e微软开发\u003c/a\u003e的,作为Visual Studio Code用于与其他语言服务通信的协议。2016年,\u003ca href=\"https://github.com/Microsoft/language-server-protocol\"\u003e微软开源了LSP\u003c/a\u003e。LSP带来的最大好处是语言服务可以跨兼容LSP的编辑器重用。这大大减少了语言团队为使各种编辑器充分支持其语言所需的工作量,因为他们只需要实现一个兼容LSP的语言服务器,而该服务器可以在任何兼容LSP的编辑器中使用。\u003c/p\u003e\n\u003cp\u003e目前,有\u003ca href=\"https://microsoft.github.io/language-server-protocol/implementors/servers/\"\u003e超过70个兼容LSP的语言服务器\u003c/a\u003e,\u003ca href=\"https://microsoft.github.io/language-server-protocol/implementors/tools/\"\u003e许多主流的编程工具也支持LSP\u003c/a\u003e,包括Eclipse、emacs、GNOME Builder、Atom、vim、Visual Studio和Visual Studio Code。\u003c/p\u003e\n\u003cp\u003e查看英文原文:\u003ca href=\"https://www.infoq.com/news/2018/11/swift-language-server-protocol\"\u003eSwift Adopts the Language Server Protocol\u003c/a\u003e\u003c/p\u003e\n
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值