以编程方式获取VS Code工作区中所有符号的列表以进行自定义扩展

时间:2018-10-18 23:01:53

标签: visual-studio-code vscode-extensions

在VS Code的快速视图中,您可以键入#mySymbol在工作区中搜索名为mySymbol的符号。我想以编程方式获取这些符号结果,但没有找到通过API进行编码的方法。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您可以为此运行vscode.executeWorkspaceSymbolProvider command

  

vscode.executeWorkspaceSymbolProvider-执行所有工作区符号提供程序。

     
      
  • 查询-搜索字符串
  •   
  • (返回)-承诺解析为SymbolInformation实例数组。
  •   
vscode.commands.executeCommand("vscode.executeWorkspaceSymbolProvider", "mySymbol").then(
    function (symbols: vscode.SymbolInformation[]) {
        // do something with the symbols
    }
);

请注意,如果搜索查询为空字符串,则某些符号提供程序实现可能不会返回任何结果。