是否可以在 VS Code 中指定用户特定的预命令?
Is it possible to specify user specific pre commands in VS Code?
我们有很多人通过同一个 GitLab 存储库进行开发。我们正在使用 VS Code 任务来执行内部命令。主要命令对每个人都是一样的:internal_command
on Windows and internalCommand
on Linux.
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label" : "do it",
"type" : "shell",
"windows": {
"command": "internal_command"
},
"linux": {
"command": "internalCommand"
}
}
]
}
这按预期工作。
一些用户need/want到运行一个特定的命令在主命令之前。例如,一个用户想要重命名一个文件,另一个用户想要更改一个环境变量等等...
我们不希望 .vscode/tasks.json
有多个版本,因为在将内容推送到 GitLab 时会造成混乱。
所以我想知道是否有办法在项目的 .vscode/tasks.json
文件中指定用户特定任务?
您可以借助扩展 Command Variable it allows you to use the content of a file as a command in the terminal. The file can also contain Key-Value pairs or be a JSON 文件。
假设您将此 userTask.txt
或 userTask.json
文件存储在 .vscode
文件夹中,并将该文件添加到 .gitignore
文件。
使用当前版本的扩展文件 userTask.txt
必须 存在,如果文件不存在,我将添加一个选项来提供替代文本。您可以使用 echo No User Task
等虚拟命令填充文件
设置你的task.json
喜欢
{
"version": "2.0.0",
"tasks": [
{
"label" : "do it",
"type" : "shell",
"windows": {
"command": "internal_command"
},
"linux": {
"command": "internalCommand"
},
"dependsOrder": "sequence",
"dependsOn": ["userTask"]
},
{
"label" : "userTask",
"type" : "shell",
"command": "${input:getUserTask}"
}
],
"inputs": [
{
"id": "getUserTask",
"type": "command",
"command": "extension.commandvariable.file.content",
"args": {
"fileName": "${workspaceFolder}/.vscode/userTask.txt"
}
}
]
}
我们有很多人通过同一个 GitLab 存储库进行开发。我们正在使用 VS Code 任务来执行内部命令。主要命令对每个人都是一样的:internal_command
on Windows and internalCommand
on Linux.
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label" : "do it",
"type" : "shell",
"windows": {
"command": "internal_command"
},
"linux": {
"command": "internalCommand"
}
}
]
}
这按预期工作。
一些用户need/want到运行一个特定的命令在主命令之前。例如,一个用户想要重命名一个文件,另一个用户想要更改一个环境变量等等...
我们不希望 .vscode/tasks.json
有多个版本,因为在将内容推送到 GitLab 时会造成混乱。
所以我想知道是否有办法在项目的 .vscode/tasks.json
文件中指定用户特定任务?
您可以借助扩展 Command Variable it allows you to use the content of a file as a command in the terminal. The file can also contain Key-Value pairs or be a JSON 文件。
假设您将此 userTask.txt
或 userTask.json
文件存储在 .vscode
文件夹中,并将该文件添加到 .gitignore
文件。
使用当前版本的扩展文件 userTask.txt
必须 存在,如果文件不存在,我将添加一个选项来提供替代文本。您可以使用 echo No User Task
设置你的task.json
喜欢
{
"version": "2.0.0",
"tasks": [
{
"label" : "do it",
"type" : "shell",
"windows": {
"command": "internal_command"
},
"linux": {
"command": "internalCommand"
},
"dependsOrder": "sequence",
"dependsOn": ["userTask"]
},
{
"label" : "userTask",
"type" : "shell",
"command": "${input:getUserTask}"
}
],
"inputs": [
{
"id": "getUserTask",
"type": "command",
"command": "extension.commandvariable.file.content",
"args": {
"fileName": "${workspaceFolder}/.vscode/userTask.txt"
}
}
]
}