如何在我的 VS 代码扩展中获得选定的诊断?
Posted
技术标签:
【中文标题】如何在我的 VS 代码扩展中获得选定的诊断?【英文标题】:How to get selected diagnostic in my VS Code Extension? 【发布时间】:2021-12-17 05:52:37 【问题描述】:在 VS Code Extension API 的帮助下,我可以在打开的编辑器中获得所有当前的诊断信息,如下所示:
const allDiagnostics = vscode.languages.getDiagnostics();
我编写了一个命令,删除生成这些诊断的所有提及:当您将鼠标悬停在诊断上并单击“快速修复...”时,该命令出现,单击它后,所有那些产生诊断的提及已从编辑器中删除:
但是,我一直无法找到获得所选诊断的方法。例如,在上图中,我希望该命令仅删除 Calibrate()
,而不是在编辑器中产生诊断的其他提及。比如:
const selectedDiagnostic = vscode.languages.getSelectedDiagnostic();
有没有办法在我的代码中只检索选定的诊断?
【问题讨论】:
【参考方案1】:在方法provideCodeActions
中的CodeActionProvider 中,诊断位于context
参数中
【讨论】:
以上是关于如何在我的 VS 代码扩展中获得选定的诊断?的主要内容,如果未能解决你的问题,请参考以下文章