01
重点进展
只需要实现一个 registerIntelligent CompletionProvider API,以下是代码示例:
registerIntelligentCompletionFeature(registry:IIntelligentCompletionsRegistry):void{registry.registerIntelligentCompletionProvider(async(editor,position,token)=>{return{items:[{content:'completionvalue',range:{startLineNumber:position.lineNumber,startColumn:1,endLineNumber:position.lineNumber+3,endColumn:model?.getLineMaxColumn(position.lineNumber+3),},},],enableMultiLine:true};});}只需要开启 enableMultiLine 以及传递 range 范围即可,实现起来非常简单快捷。
传统的智能补全解决的是用户的 “写新代码” 场景。
也就是说,当你要开始写一段新代码了,你回个车或者先写个注释,亦或者先输入一点代码,AI 会自动帮你 “续写” 后面的内容,AI 会认为你光标之前的代码就是正确的。
但在真实的编码工作中,并不全是 “写新代码”,大多数是改写代码。
所以 “多行补全” 和 “智能重写” 解决的就是这个问题,他能对光标所在的局部区域进行 改写 和 新增 的推荐,与传统的 智能补全 相融合,让 AI 能参与更多的编码任务。
评论接口新增多行评论/展示能力,开发者可以通过接口自行拓展实现,已达到多行评论功能实现。
| 欢迎光临 链载Ai (https://www.lianzai.com/) | Powered by Discuz! X3.5 |