在VSCODE中自定义标签之间的代码

3

我希望创建一个自定义标签,仅为了改善视觉体验。

就像在php中使用注释标记一样,

/*
    comment 1
    comment 2
    comment 3
*/

IT改变了颜色编码。

同样,我想创建一个像这样的标签

// log start
    executable code here... 
    but should look like comment or blur
// log end

我知道这很奇怪,但如果在VS Code设置中或任何自定义插件或扩展中有任何帮助的东西,请告诉我。

看一下 Highlight 扩展。 - rioV8
所以你想让你的代码行在 //log start//log begin 之间都以特定颜色格式化吗?还是你只需要方便导航?如果只是为了方便导航,那么 VSCode 有一些插件可以实现,比如 BookmarkComment AnchorsTODO HIghlight - Asif Kamran Malick
@AsifKamranMalick 我想要特定的颜色或像评论一样褪色。 - LulzAsh
2个回答

2

根据你的颜色尝试这个:

"highlight.regexes": {
  "([ \\t]*// log start)([\\S\\s]+?)([ \\t]*// log end)": {
    "decorations": [
      {
        "backgroundColor": "#fff9",
        "color": "#0006",
        "letterSpacing": "4px",
         "after" : {
          "fontWeight": "bold",
          "contentText": "\u2003\u2003\u2003\u2003\u2003\u274d",
          "color": "black"
        }
      },
      {
        "color": "#0006",
        "fontWeight": "bold"
      },
      {
        "backgroundColor": "#fff9",
        "color": "#0006",
        "letterSpacing": "4px",
      }
    ]
  }
}

这里将各部分分别捕获,以便您可以对它们进行不同的操作:

突出显示日志评论


2
您可以使用Highlight扩展来实现此目的。您可以设置自定义正则表达式,并对与这些正则表达式匹配的代码应用特定的样式。
安装该扩展,将以下内容添加为自定义正则表达式:
"(// log start(.|\\n)+?// log end)": {
      "decorations": [
        {
          "overviewRulerColor": "#ffcc00",
          "backgroundColor": "#ffcc00",
          "color": "#1f1f1f",
          "fontWeight": "bold"
        }
      ]
    }

显然,用你想要的颜色替换它。这是我的设置效果: enter image description here

哇!你在最后时刻救了赏金!运行得很好。 - LulzAsh
我在这里看到一个问题,如果您在同一页上使用两对标签,它会将其视为一个标签并突出显示之间的所有内容 :( - LulzAsh
1
只需添加一个 ?,如 (\/\/ log start(.|\n)+?\/\/ log end),请参见 https://regex101.com/r/CpNxcN/1 - Mark
是的,那是我的正则表达式出了问题,就像@Mark说的那样加上一个?。我也会编辑答案的。 - nullptr

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接