关于VSCode tasks.json中的各种替换变量,我整理了如下攻略:
一、什么是tasks.json
tasks.json是Visual Studio Code中用来指定任务的一个配置文件,可以用来运行一些自定义的构建、测试、调试等任务。在这个配置文件中,可以指定任务的执行命令,参数,以及一些特定的配置项。
二、tasks.json中的替换变量
在指定任务的执行命令、参数等过程中,可以使用一些替换变量来代替一些常用的路径或文件名,从而方便地生成任务的描述。这些替换变量以 ${ } 的形式出现在tasks.json文件中。
1. ${workspaceFolder}
代表当前工作区的绝对路径。一般用于指定构建、编译、打包等任务的输出路径。
示例:将ts文件编译成js文件并输出到指定的out文件夹中
{
"label": "tsc build",
"type": "shell",
"command": "tsc ${workspaceFolder}/src/*.ts --outDir ${workspaceFolder}/out",
"group": {
"kind": "build",
"isDefault": true
}
}
2. ${file}
代表当前打开的文件的绝对路径。一般用于指定运行程序的输入文件。
示例:运行python程序并将当前打开的py文件作为输入文件
{
"label": "Run Python File",
"type": "shell",
"command": "python ${file}",
"group": {
"kind": "test",
"isDefault": true
}
}
3. ${fileBasename}
代表当前打开的文件的文件名,不包含文件路径。一般用于指定运行程序的输入文件名。
示例:运行指定的jar文件并将当前打开的文件作为输入文件名
{
"label": "Run Java Test",
"type": "shell",
"command": "java -jar ${workspaceFolder}/lib/test.jar ${fileBasename}",
"group": {
"kind": "test",
"isDefault": true
}
}
4. ${fileDirname}
代表当前打开的文件所在的目录的绝对路径。一般用于指定程序运行时的工作目录。
示例:运行指定的python程序并设置工作目录为当前文件所在目录
{
"label": "Run Python Script",
"type": "shell",
"command": "python ${file} ${fileDirname}",
"options": {
"cwd": "${fileDirname}"
},
"group": {
"kind": "test",
"isDefault": true
}
}
5. ${fileExtname}
代表当前打开的文件的扩展名,包含点号。
示例:指定输入文件和输出文件的扩展名一致
{
"label": "Compile Markdown to HTML",
"type": "shell",
"command": "pandoc -f markdown -t html -s ${file} -o ${fileDirname}/${fileBasenameNoExtension}.html",
"group": "build"
}
6. ${fileBasenameNoExtension}
代表当前打开的文件的文件名,不包含文件路径和扩展名。
示例:将Markdown文件转换成LaTeX格式并输出到指定路径
{
"label": "Convert Markdown to LaTeX",
"type": "shell",
"command": "pandoc ${file} -o ${workspaceFolder}/out/${fileBasenameNoExtension}.tex",
"group": {
"kind": "build",
"isDefault": true
}
}
三、总结
以上就是VSCode tasks.json中的各种替换变量的详细讲解。在配置任务时使用这些替换变量,可以方便地指定任务的输入、输出路径、运行时工作目录等信息,使得任务的配置更加方便快捷。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:浅析VSCode tasks.json中的各种替换变量的意思 ${workspaceFolder} ${file} ${fileBasename} ${fileDirname}等 - Python技术站