如何在Visual Studio Code中实现输入数字+prem自动转成对应rem?
实现方法:用VS Code用户代码片段搞定
完全可以实现,不需要额外扩展,直接用VS Code的用户代码片段结合正则捕获和算术转换就能完成。具体步骤如下:
打开用户代码片段配置:
- 按下
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(Mac)调出命令面板 - 输入
Configure User Snippets并回车 - 选择适用范围:比如选
css.json仅在CSS文件生效,或选global.code-snippets全局生效
- 按下
粘贴以下片段代码:
{ "Px to Rem (prem trigger)": { "scope": "css,scss,less,html,jsx,tsx", // 按需添加需要生效的语言 "prefix": "(\\d+)prem", "body": "${TM_CURRENT_LINE/(\\d+)prem/${1/16}rem/}", "description": "Convert [number]prem to (number/16)rem" } }
- 使用方式:
- 输入数字+
prem(比如40prem) - 按下
Tab键触发替换,自动转换成2.5rem;输入16prem按Tab则变成1rem
- 输入数字+
代码逻辑说明:
scope:指定片段生效的语言场景,可根据需求增减(比如添加vue适配Vue文件)prefix:用正则(\\d+)prem匹配「数字+prem」的格式,\\d+用于捕获任意长度的数字body:核心转换规则,${TM_CURRENT_LINE/(\\d+)prem/${1/16}rem/}的作用是:- 捕获当前行中符合「数字+prem」的内容
- 将捕获到的数字除以16(
${1/16}),再拼接rem后缀 - 用转换后的结果替换原内容
如果需要调整基准换算值(比如不用16作为除数),直接把代码里的16改成目标数字即可。
内容的提问来源于stack exchange,提问作者MojoExMachina
相关产品推荐
相关产品推荐

