visual-studio-code - VS Code launch.json 变量正则表达式替换
问题描述
在 launch.json 我有一个为当前文件运行 mocha 的调试配置:
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Mocha Current File",
"program": "${workspaceFolder}/node_modules/mocha/bin/_mocha",
"args": [
"--timeout",
"999999",
"--colors",
"${file}"
],
"console": "integratedTerminal",
"internalConsoleOptions": "neverOpen"
}
]
}
我正在使用 typescript 并且 ts 文件位于文件夹 src/... 根目录中,而 test.js 文件位于文件夹根目录 dist/... 我想打开 ts 文件,运行调试 mocha 配置并重写src 路径到 dist 路径。
几乎在那里遇到了以下内容:“dist/${relativeFileDirname}/${fileBasenameNoExtension}.js”
但 relativeFileDirname 仍然包含 src/... 作为根。我需要做一个正则表达式替换。
扩展命令变量或多或少有我需要的东西,但它执行目录向上模式,而我需要目录向下模式,即它可以采用 src/folder1/folder2 并返回 src/folder1,而我想要 folder1/folder2。
解决方案
你可以使用extension.commandvariable.transform
命令。
"inputs": [
{
"id": "down1Dir",
"type": "command",
"command": "extension.commandvariable.transform",
"args": {
"text": "${relativeFileDirname}",
"find": ".*?/(.*)",
"replace": "$1",
}
}
]
推荐阅读
- ios - iOS - 在当前视图控制器中快速绘制形状
- javascript - 将外部 JS 添加到 Magento 2
- webpack - 如果在文件系统上找不到,我们可以让 Webpack 忽略图像文件吗?
- vue.js - axios typeError:无法设置未定义的属性“用户名”
- javascript - 在反应原生应用程序开发中从 ModelDropdown 获取文本
- excel - VBA - 使用剪贴板从 Excel * 不* 导出图像(复制/粘贴)
- c - 分割位图以进行并行处理
- sql - 转换日期时间
- python - Pandas 不会使用 =10+10 这样简单的公式从 Excel 单元格中读取值
- php - 如何在 PHP 中提取 JSON 对象中的对象并为其分配正确的索引