切片软件Prusaslicer(编辑器的自动补全神器LSP)

编程世界的编辑器就像编程语言一样,百花争放,百家争鸣,有的有着出色的速度,有的有着高冷的颜值,有的有着强大的功能性,有的则有着丰富的插件,然而对于开发人员来说,拥有者自动完成功能的编辑器才是开发者最喜爱的。

切片软件Prusaslicer(编辑器的自动补全神器LSP)(1)

很久之前,每当出现一个编程语言,就需要各个编辑器来重新实现自动提示功能,这不仅浪费人力物力,最重要的是严重影响一门开发语言的普及,而LSP的出现改变了一切,通过定义一个统一的接口,现在人们只需要为一种语言编写一个自动完成服务器,然后各个编辑器实现自动完成客户端就可以,也就说一个自动完成服务器可以服务所有的编辑器,当前前提是你得实现人家定义的接口规范。

语言服务协议

lsp的全称是language server protocol,它是红帽和微软等公司提出来的开源的语言服务器协定,可以让不同的编辑器实现自动补全,代码跳转,这样每个人都可以用自己喜爱的编辑器进行代码编辑,而这些在很早之前完全是不能够想象的事情。

切片软件Prusaslicer(编辑器的自动补全神器LSP)(2)

有了语言服务器,编辑器可以像IDE一样可以自动跳转补全,这对于不喜欢IDE的人来说是让人值得兴奋的,而且目前,很多编辑器比如,vim,sublime,atom等都开始支持lsp了,未来当新发明一种语言的时候,也许官方都会给出这种语言的服务器。

CS模式

LSP遵循的是client-server模式,就是需要一个语言服务器提供自动补全和跳转的功能,需要编辑器充当客户端对服务器进行接口请求,这种cs模型对于熟悉编程的人来说再熟悉不过了,因为我们平时不是在进行bs的开发就是在进行cs的开发。

切片软件Prusaslicer(编辑器的自动补全神器LSP)(3)

未来

我们都知道规范的制定需要有人去遵守,而目前的现状是,很多编辑器都开始支持了LSP协议,毕竟没有人不喜欢自动补全,没有人不喜欢代码跳转,没有人不喜欢符号查询,LSP带来的好处太大了。

切片软件Prusaslicer(编辑器的自动补全神器LSP)(4)

然而LSP的发展还任重道远,我们发现现在虽然有很多语言提供了LSP,但是这些大部分都是民间个人开发的,性能方面还有很多问题,如果有更多的大公司能够参与到这方面来,我相信LSP的未来会变得更加美好。

虽然使用统一的编辑器会让这些问题变得简单,但是这个世界不是非此即彼,正是因为存在各种各样的编辑器,存在各种各样的编程语言,存在各种各样的开发人员,这个世界才变得丰富多彩。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页