Visual studio code 如何知道在vscode中选择了什么建议项
我通过Visual studio code 如何知道在vscode中选择了什么建议项,visual-studio-code,vscode-extensions,Visual Studio Code,Vscode Extensions,我通过vscode.languages.RegisterCompletionImprovider(选择器,new FunctionCompletionProvider(),'.')完成了vscode扩展。 我想听听哪个建议被选中。在下图中,当我单击当前项目时,我希望获得完成项信息。 我试图使用resolveCompletionItem功能,但在选择建议之前,触发了resolveCompletionItem 我尝试使用resolveCompletionItem函数,但在选择建议之前,resolv
vscode.languages.RegisterCompletionImprovider(选择器,new FunctionCompletionProvider(),'.')完成了vscode扩展。
我想听听哪个建议被选中。在下图中,当我单击当前项目时,我希望获得完成项
信息。
我试图使用resolveCompletionItem
功能,但在选择建议之前,触发了resolveCompletionItem
我尝试使用resolveCompletionItem函数,但在选择建议之前,resolveCompletionItem已触发
看来这是故意的。根据他们的文件:
请注意,当完成项已显示在UI中或已选择要插入的项时,将调用此函数
“选定”表示在列表中选定,未提交
要了解何时插入
完成项
,建议使用以下属性:
插入此完成后执行的可选命令。请注意,对当前文档的其他修改应使用additionalTextEdits属性进行描述
示例用法:
导出函数激活(上下文:vscode.ExtensionContext){
context.subscriptions.push(
vscode.languages.RegisterCompletionImprovider('html',新的MyCompletionProvider),
vscode.commands.registerCommand(“doTheThing”,()=>{
log('dothething!!');
});
);
}
类MyCompletionProvider实现vscode.CompletionTemprovider{
provideCompletionItems(文档:vscode.TextDocument,位置:vscode.position,标记:vscode.CancellationToken,上下文:vscode.CompletionContext):vscode.ProviderResult{
const myHTMLCompletionItem:vscode.CompletionItem=新的vscode.CompletionItem(“myHTML”);
myHTMLCompletionItem.command={
标题:“”,
命令:“doTheThing”
};
返回新的vscode.CompletionList([myHTMLCompletionItem]);
}
}
我尝试使用resolveCompletionItem函数,但在选择建议之前,resolveCompletionItem已触发
看来这是故意的。根据他们的文件:
请注意,当完成项已显示在UI中或已选择要插入的项时,将调用此函数
“选定”表示在列表中选定,未提交
要了解何时插入
完成项
,建议使用以下属性:
插入此完成后执行的可选命令。请注意,对当前文档的其他修改应使用additionalTextEdits属性进行描述
示例用法:
导出函数激活(上下文:vscode.ExtensionContext){
context.subscriptions.push(
vscode.languages.RegisterCompletionImprovider('html',新的MyCompletionProvider),
vscode.commands.registerCommand(“doTheThing”,()=>{
log('dothething!!');
});
);
}
类MyCompletionProvider实现vscode.CompletionTemprovider{
provideCompletionItems(文档:vscode.TextDocument,位置:vscode.position,标记:vscode.CancellationToken,上下文:vscode.CompletionContext):vscode.ProviderResult{
const myHTMLCompletionItem:vscode.CompletionItem=新的vscode.CompletionItem(“myHTML”);
myHTMLCompletionItem.command={
标题:“”,
命令:“doTheThing”
};
返回新的vscode.CompletionList([myHTMLCompletionItem]);
}
}
谢谢你的回答,这个答案对我非常有用。谢谢你的回答,这个答案对我非常有用