LSP[開源協定 LSP Language-Server-Protocol]

LSP(Language-Server-Protocol)開源的語言伺服器協定。由紅帽、微軟和 Codenvy 聯合推出,可以讓不同的程式編輯器與集成開發環境(IDE)方便嵌入各種程式語言,允許開發人員在最喜愛的工具中使用各種語言來撰寫程式。

唯一基於JSON的語言伺服器數據交換協定,目前由GitHub代管,並採用CC及MIT授權。該協定主要用來促進編輯器及語言伺服器之間的互動,允許開 發人員在各種編輯器或整合開發環境中存取智慧型的程式語言工具,像是以符號搜尋、語法分析、自動完成代碼、移至定義、描繪輪廓或重構等。

現階段LSP已支持C++、 PowerShell、JSON、CSS/LESS/SASS、Xtext、GOLang、Ruby、Crane PHP、Haxe、Java和RAML。集成開發環境方面,微軟Visual Studio Code和Eclipse Che目前已經實現了LSP協定。LSP協定在Eclipse Che的實現是個開原始碼分支,第三季度開始提供給一般用戶下載。同時,紅帽也正在打造首個獨立的Java語言伺服器。

語言伺服器協定方面的協作提供的功能包括:

開發人員的靈活性和選擇性:開發人員可以在使用新程式語言時試用各種豐富編輯體驗,而同時仍繼續使用自己的首選工具。

多個作業系統:程式語言提供商可以在多種作業系統里支持幾種工具,可最大限度地實現覆蓋範圍和和相關性。

編輯器支持:微軟Visual Studio Code和Eclipse Che、新一代的Eclipse IDE增添了對LSP協定的支持。

多種程式語言的支持:除了今天起可供使用的程語言伺服器,年內計畫將啟動更多支持LSP的語言伺服器。其中包括Omnisharp項目的C#, Typefox的xText和R、Ensime的JavaFX和微軟的CSS。紅帽開源了一個項目的工作,以提供首個獨立的Java語言伺服器,紅帽提議 將其捐給Eclipse基金會。

開放合作:Codenvy、微軟和紅帽致力於與開源社區合作開發LSP協定。LSP協定託管在公共存儲伺服器里,任何人都可以提交反饋,或是貢獻項目修改請求,達到提高和完善LSP項目的目的。

語言伺服器註冊:語言伺服器在全球性註冊表里公開發布,該註冊表由Codenvy建立,是Eclipse項目的一部分,託管在Eclipse基金會裡。任何工具軟體藉助全球性註冊表就可以找到語言伺服器並對其進行使用。

熱門詞條

聯絡我們