圖片來源: 

GitHub

微軟、紅帽及容器開發環境供應商Codenvy本周在Red Hat DevNation開放源碼大會上宣布將共同發展語言伺服器協定(Language Server Protocol,LSP)專案,讓不同的程式編輯器與整合開發環境(IDE)方便嵌入各種程式語言,允許開發人員在最喜愛的工具中使用各種語言來撰寫程式。

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

每款程式語言都有獨立的語言伺服器,這些伺服器可能是由社群或語言供應商所建置,Codenvy已展開語言伺服器的登記服務,以期打造支援LSP的語言伺服器列表,以利各種不同的編輯器存取。

Codenvy執行長Tyler Jewell指出,過去絕大多數的語言都只會針對單一工具進行最佳化,阻礙了開發人員使用他們最喜愛的編輯器,也侷限了程式語言的推廣對象,透過微軟、紅帽及Codenvy所共同支持的LSP,開發人員將可在自己喜愛的編輯器中使用任何語言。

除了可讓開發人員在習慣的編輯器中採用新語言之外,程式語言供應商也可透過LSP讓程式語言支援更多的作業系統及工具,此外,微軟的Visual Studio Code及Eclipse Che都已添增對LSP的支援。

現階段LSP已支援JSON、C++ 及Powershell等程式語言,預計今年會納入更多語言,涵蓋OmniSharp專案的C#、xText、 R by Typefox、JavaFX by Ensime及CSS by Microsoft等,紅帽也正在打造首個獨立的Java語言伺服器。


Advertisement

更多 iThome相關內容