我的问题是关于VSCODE编辑器中的代码折叠。 我想知道是否可以在定义的符号上进行代码折叠?
我创建了一个扩展程序,可以查找文件中的所有符号,以便可以导航到这些符号。 现在我想将我的代码折叠基于这些符号的范围。 这可能吗?
在我的扩展程序中,我实现了类似于此示例的内容,以查找所有符号及其范围。
直接实施
class GoDocumentSymbolProvider implements vscode.DocumentSymbolProvider {
public provideDocumentSymbols(
document: vscode.TextDocument, token: vscode.CancellationToken):
Thenable<vscode.SymbolInformation[]> {
...
}
}
export function activate(ctx: vscode.ExtensionContext): void {
...
ctx.subscriptions.push(
vscode.languages.registerDocumentSymbolProvider(
GO_MODE, new GoDocumentSymbolProvider()));
...
}