[发明专利]基于LSP的智能代码编辑器的设计方法及系统在审
申请号: | 202211019255.3 | 申请日: | 2022-08-24 |
公开(公告)号: | CN115454405A | 公开(公告)日: | 2022-12-09 |
发明(设计)人: | 沈泽凯;陈昊钦;黄知柏 | 申请(专利权)人: | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) |
主分类号: | G06F8/33 | 分类号: | G06F8/33;G06F8/34;H04L67/02;H04L67/133;H04L67/141;H04L69/16 |
代理公司: | 上海段和段律师事务所 31334 | 代理人: | 梁勤伟 |
地址: | 201800 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 lsp 智能 代码 编辑器 设计 方法 系统 | ||
1.一种基于LSP的智能代码编辑器的设计方法,其特征在于,包括:
步骤S1:启动资源服务器,提供界面静态资源服务、文件管理服务以及语言服务器功能初始化以提供语言服务;
步骤S2:初始化前端WEB页面环境,加载WEB相关功能以及设定URL,从静态资源服务器加载用户界面所需的渲染资源;
步骤S3:界面渲染完成后连接所述文件管理服务和语言服务器,完成用户端语言服务,文件管理服务功能的初始化;
步骤S4:利用所述文件管理服务加载本地用户模板,提供额外的接口标准支持以及用户自定义模板支持;
步骤S5:用户编辑过程中利用初始化完成的语言服务功能,动态加载所述语言服务器相关功能。
2.根据权利要求1所述的基于LSP的智能代码编辑器的设计方法,其特征在于,所述静态资源服务提供智能编辑器页面显示所需要的资源;
所述文件管理服务提供文件的修改、保存、删除、新建在内的相关智能编辑器无法直接提供的功能;
所述语言服务器需要加载对应编程语言所需要的语言服务器,并进行IO重定向,JSON-PRC封装,提供Websockeet服务以实现编辑器与服务器的必要操作。
3.根据权利要求1所述的基于LSP的智能代码编辑器的设计方法,其特征在于,所述启动资源服务包括:
步骤S1.1:初始化所述文件服务器与资源服务器;
步骤S1.2:文件服务器判断是否存在标准接口配置;若是,则加载并提供外部接口;
步骤S1.3:判断是否存在用户模板配置;若是,则加载并提供外部接口;
步骤S1.4:初始化语言服务器;
步骤S1.5:语言服务器IO重定向;
步骤S1.6:循环等待资源服务器请求;
步骤S1.7:判断是否主动关闭;若否,则返回上一步骤。
4.根据权利要求3所述的基于LSP的智能代码编辑器的设计方法,其特征在于,所述服务器请求处理包括:静态资源服务请求、文件操作服务请求与语言服务请求;按照协议划分为HTTP请求与Websocket请求。
5.根据权利要求4所述的基于LSP的智能代码编辑器的设计方法,其特征在于,接收所述HTTP请求,所述HTTP请求中包括静态资源服务和文件操作服务;
若为静态资源服务,则判断是否存在缓存;若否,则加载磁盘资源,返回所需静态资源;若是,则直接读取缓存,返回所需静态资源;
若为文件操作服务,则判断是否有相关权限;若是,则执行对应操作并返回操作结果,若否,则返回错误信息。
6.根据权利要求4所述的基于LSP的智能代码编辑器的设计方法,其特征在于,接收用户代码编辑操作对应的Websocket请求,则进行语言服务;
所述语言服务器解析用户请求,并将Websocket请求转至语言服务器,获取语言服务器的响应,利用JSON-PRC封装返回响应。
7.根据权利要求1所述的基于LSP的智能代码编辑器的设计方法,其特征在于,所述静态资源服务提供智能编辑器页面显示所需要的资源,其中,智能编辑器页面的加载流程包括:
加载界面资源、接口模板、用户模板以及当前文件;
加载完成后,建立Websocket连接;
判断Websocket连接是否建立;若是,则提供语言服务支持进行用户操作,若否,则只提供基本的语言服务。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华东计算技术研究所(中国电子科技集团公司第三十二研究所),未经华东计算技术研究所(中国电子科技集团公司第三十二研究所)许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211019255.3/1.html,转载请声明来源钻瓜专利网。