开源的语言服务器协议可能成为编程IDE标准

Codenvy, Microsoft, 和Red Hat已经联合宣布采取通用语言服务器协议(Language Server Protocol,简称LSP)作为集成开发环境的统一标准。

LSP试图提供一种跨各种代码编辑器和IDE的集成各种语言的协调协议,能够为不同编程语言在不同工具内提供各种丰富代码编程功能。

大部分编程语言只是在某个具体编程工具中进行了优化,这会阻止程序员选择他们喜爱的编辑器。

LSP是一个定义基于Javascript Object Notation(JSON)数据交换协议的开源项目,针对不同的语言服务器进行数据交换,项目在Github

LSP在编辑器和语言服务器之间提供协同能力,能够激活开发者的智能编辑功能,如搜索代码,语义分析,代码自动提醒完成,outlining和重构等,无论程序员选择什么代码编辑器IDE,只要IDE支持LSP协议,上述这些智能代码辅助功能将会自动配置。

目前,已经集成了C和Typescript服务器到VS Code中,LSP还支持下面语言: C++, PowerShell, JSON, CSS/LESS/SASS, Xtext, Crane PHP, Haxe, Java, 和 RAML.

当前微软的Visual Studio Code 和 Eclipse已经实现该协议,Eclipse Che的实现将在Q3版本中发布。


​Open-source Microsoft protocol aims to be a progr