这个问题与以下内容完全相同:
我正在编写自定义VSCode扩展。我需要从用户当前所在的Javascript文件中获取符号(例如变量,函数等)以找到它们的定义,并在用户悬停时对它们执行某些操作。 VSCode / JS扩展是否公开API以查找这些符号及其定义而不手动执行此操作?
API(https://code.visualstudio.com/api/references/vscode-api)似乎都没有公开此功能。
我已经尝试查看内置的JS / TS扩展,看看它暴露了什么样的API但什么也没找到。
async function getSymbols(document: vscode.TextDocument): Promise<vscode.DocumentSymbol[]> {
return await commands.executeCommand<vscode.DocumentSymbol[]>('vscode.executeDocumentSymbolProvider', document.uri) || [];
}