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

VS Code中Python的print()高亮异常,如何统一为普通函数样式?

VS Code Python语法高亮自定义规则问题及解决方法

问题描述

我不满意VS Code自带的Python语法高亮配色,于是通过TextMate作用域添加了自定义规则:

  • 针对普通函数,用"entity.name.function.python"作用域设置颜色;
  • 发现print()打印字符串时显示正确的绿色,但打印类时,它的TextMate作用域变成"support.function.builtin.python",颜色也跟着变了;
  • 尝试给"support.function.builtin.python"加规则,但该规则显示为删除线,完全不生效;
  • 需求:让__init__()这类魔法方法显示单独的颜色,同时print()无论打印什么内容,都显示普通函数的颜色。

以下是我当前settings.json中的代码片段:

{
                "scope":[
                    "entity.name.function",
                    "support.function.builtin.python"
                ],
                "settings": {
                    "foreground": "#97c516",

                },
                
            },
            {
                "scope":[
                    "support.function.magic.python"
                ],
                "settings": {
                    "foreground": "#5b7611",

                },
                
            },

解决方法

问题根源

你的自定义规则显示删除线,是因为VS Code内置主题里已经有针对"support.function.builtin.python"的规则,且内置规则优先级更高,直接覆盖了你的自定义规则。另外,作用域的特异性、规则的排列顺序也会影响最终高亮效果。

修正后的配置

调整规则顺序和结构,确保自定义规则能正确覆盖内置规则,满足你的配色需求:

{
  "editor.tokenColorCustomizations": {
    "textMateRules": [
      // 魔法方法单独配色(更具体的作用域,优先级更高)
      {
        "scope": "support.function.magic.python",
        "settings": {
          "foreground": "#5b7611"
        }
      },
      // 普通函数+内置函数统一配色,放在后面确保覆盖内置规则
      {
        "scope": [
          "entity.name.function",
          "support.function.builtin.python"
        ],
        "settings": {
          "foreground": "#97c516"
        }
      }
    ]
  }
}

关键说明

  1. 作用域特异性优先级:support.function.magic.python是support.function.builtin.python的子作用域,特异性更高,所以即使它的规则放在前面,也会优先生效,保证__init__()等魔法方法显示指定颜色;
  2. 规则顺序:把通用函数规则放在魔法方法规则之后,能让它覆盖VS Code内置的support.function.builtin.python规则,解决之前规则被覆盖(显示删除线)的问题;
  3. 结构完整性:确保所有自定义规则都包裹在editor.tokenColorCustomizations.textMateRules数组内,这是VS Code识别自定义语法高亮规则的正确结构,之前的代码片段可能缺少外层结构导致规则不生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 03:35:58