You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为VS Code语义高亮功能创建自定义token图例

为VS Code语义高亮创建自定义token图例的方法

你可以通过VS Code扩展开发API自定义语义高亮的token图例,标准的token类型与修饰符列表可查阅VS Code官方扩展开发文档的语义高亮指南相关内容。
完整实现示例如下:

// 定义需要用到的token类型列表
const tokenTypes = ['class', 'interface', 'enum', 'function', 'variable'];
// 定义需要用到的token修饰符列表
const tokenModifiers = ['declaration', 'documentation'];
// 实例化token图例
const legend = new vscode.SemanticTokensLegend(tokenTypes, tokenModifiers);

// 实现文档语义token提供器
const provider: vscode.DocumentSemanticTokensProvider = {
  provideDocumentSemanticTokens(
    document: vscode.TextDocument
  ): vscode.ProviderResult<vscode.SemanticTokens> {
    // 此处添加你分析文档、生成语义token的逻辑
    const tokensBuilder = new vscode.SemanticTokensBuilder(legend);
    // 示例:第1行第1到第5个字符是类声明类型的token
    tokensBuilder.push(
      new vscode.Range(new vscode.Position(1, 1), new vscode.Position(1, 5)),
      'class',
      ['declaration']
    );
    return tokensBuilder.build();
  }
};

// 定义匹配规则,此处示例为匹配所有本地文件系统的Java文档
const selector = { language: 'java', scheme: 'file' };

// 注册语义token提供器
vscode.languages.registerDocumentSemanticTokensProvider(selector, provider, legend);

内容的提问来源于stack exchange,提问作者henee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.11 04:36:03