better comments中的.py首行无法改变注释颜色(windows)

今天发现vs中编写py首行代码无法改变注释颜色,但其他地方可以,比如:c,json等,这肯定是better comments扩展的问题,在网上搜索无果后,便查询一下扩展配置

找到 "C:\Users\用户名\.vscode\extensions\aaron-bond.better-comments-3.0.2\out\parser.js",就是这个parser.js文件让我找到了解决问题的办法,在该文件中的第86行有

// Required to ignore the first line of .py files (#61)

所以便找到了问题所在,第87行代码:
if (this.ignoreFirstLine && startPos.line === 0 && startPos.character === 0) { continue; }:如果设置了忽略第一行,并且当前匹配的注释位于文件首行,则跳过该注释。

终于发现了原因:
Better Comments扩展在处理Python文件时,默认会忽略第一行的注释。这是因为某些Python文件(如shebang行)的首行可能不是真正的注释,而是一个特殊的指令。
解释shebang行请自行查询获取知识。
下面进行简略说明:
Shebang(也称Hashbang)是一个字符串行(#!),出现在文本文件的第一行的前两个字符。

 举例:在linux中如果第一行为:#!/urs/bin/python3.9
表示调用其后指定的/usr/bin/python3.9程序来执行以下的这个脚本(这是一个命令,而非注释)
在默认情况下:
"#!"在better comments中是红色注释,为了避免将其注释,所以会在处理Python文件时,默认忽略第一行的注释。

解释完毕,下面是解决办法:
目前我已经在parser.js文件中注释掉了第86-第90行的代码,这样就能解决问题了
但是为了日后需要,我也将better comments的红色注释由原先的”!“修改为”@“避免了与其的混淆
在原来的vscode设置中的setting.json中有
"better-comments.tags": [
    {better commentsvs
        "tag": "!",
        "color": "#FF2D00",
        "strikethrough": false,
        "backgroundColor": "transparent"
    },
    // ... 其他标签配置
],
,目前我已将将  "tag": "!",   修改为   "tag": "@",

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值