获取 VSCode 任务中文件的相对路径

13

我在 vscode 的 tasks.json 文件中定义了以下任务:

{
    "version": "0.1.0",
    "tasks": [
        {
            "command": "gulp",
            "taskName": "eslint_task",
            "args": [
                "eslint",
                "--file",
                "${file}"
            ],
            "echoCommand": true
        }
    ]
}

${file} 提供了我在执行此命令的文件的绝对路径(从 macOS 中的 /Volumes 开始)。 有没有办法获取相同文件的相对路径(从工作区文件夹开始的路径)?

我已经查阅了任务的官方文档,但在那里找不到任何参数列表。

1个回答

24

找到答案了。我只需要使用${relativeFile}而不是${file}

以下是我找到的占位符列表:

  • ${workspaceRoot}: 工作区根目录
  • ${file}: 已保存文件的路径
  • ${relativeFile}: 已保存文件的相对路径
  • ${fileBasename}: 已保存文件的基本名称
  • ${fileDirname}: 已保存文件的目录名称
  • ${fileExtname}: 已保存文件的扩展名(包括“。”)
  • ${fileBasenameNoExt}: 已保存文件的无扩展名基本名称
  • ${cwd}: 当前工作目录

来源: 取自此处


相对目录名有什么要求吗? - Sayan Dey
3
@SayanDey ${relativeFileDirname}。完整列表请点击这里 - Gee-Bee
之前已经明白了。 - Sayan Dey
提醒一下:在2023年,他们将${fileBasenameNoExt}更改为${fileBasenameNoExtension}。不过,我不知道这个变化背后的意图... - undefined

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