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

如何优化Sublime Text中TODO、TEST/INFO注释的高亮效果?

解决Sublime Text中TODO类注释高亮的进阶需求

问题背景

已通过SublimeLinter + SublimeLinter-annotations配置TODO/WARNING/ERROR注释高亮,但大文件里效果不清晰,需要实现:

  1. 给整行注释设置专属前景色、背景色
  2. 高亮多行块注释(如/* TODO ... \n ... */)
  3. 区分// TEST和// INFO的高亮颜色
    另外,曾尝试SublimeTODO工具,但存在嵌套注释错误高亮的问题,不符合需求。

当前配置的SublimeLinter.sublime-settings:

// SublimeLinter Settings - User
{
    "linters": {
        "annotations": {
            "infos": ["TODO"],
            "warnings": ["WARNING"],
            "errors": ["ERROR"],
            "mark_message": true
        }
    }
}

解决方案

1. 设置整行注释的前景色与背景色

SublimeLinter的注释高亮样式由当前配色方案控制,需修改对应配色文件(例如Monokai.sublime-color-scheme,路径:Preferences > Browse Packages > Color Scheme - Default):

  1. 打开当前使用的配色方案文件
  2. 在rules数组中添加针对annotations不同级别的规则:
{
    "name": "SublimeLinter Annotation Info",
    "scope": "message.info.annotation.sublime_linter",
    "foreground": "#ffffff",
    "background": "#2ecc71"
},
{
    "name": "SublimeLinter Annotation Warning",
    "scope": "message.warning.annotation.sublime_linter",
    "foreground": "#ffffff",
    "background": "#f39c12"
},
{
    "name": "SublimeLinter Annotation Error",
    "scope": "message.error.annotation.sublime_linter",
    "foreground": "#ffffff",
    "background": "#e74c3c"
}

保存后重启Sublime,整行注释会应用对应背景色和前景色。

2. 高亮多行块注释

默认情况下SublimeLinter-annotations未覆盖块注释范围,需调整linter配置中的selector确保匹配块注释:
修改SublimeLinter.sublime-settings:

"linters": {
    "annotations": {
        "infos": ["TODO"],
        "warnings": ["WARNING"],
        "errors": ["ERROR"],
        "mark_message": true,
        "selector": "comment.line, comment.block"
    }
}

selector指定了linter生效的语法作用域,添加comment.block后,块注释内的标记会被识别并高亮。

3. 区分// TEST和// INFO的高亮颜色

将两个标记分到annotations的不同级别,再通过配色区分:

  1. 更新SublimeLinter.sublime-settings:
"linters": {
    "annotations": {
        "infos": ["TODO", "INFO"],
        "warnings": ["WARNING", "TEST"],
        "errors": ["ERROR"],
        "mark_message": true,
        "selector": "comment.line, comment.block"
    }
}
  1. 确保配色方案中info和warning级别的样式不同(参考步骤1的配置),这样// INFO会用info级别的颜色,// TEST会用warning级别的颜色。

解决嵌套注释错误高亮问题

SublimeLinter-annotations基于语法作用域识别注释,只要配置的selector仅匹配真实的注释作用域(comment.line和comment.block),就不会错误高亮嵌套注释里的内容,天然避免SublimeTODO的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.26 04:02:34