Predefined variables
Visual Studio Code 支持在调试、任务配置文件以及一些特定的设置中使用变量替换。这些变量可以使用 ${variableName} 语法在 launch.json 和 tasks.json 文件的某些键和值字符串中使用。
Predefined variables
Visual Studio Code 支持以下预定义变量:
${userHome} - 用户主目录的路径。
${workspaceFolder} - 在 VS Code 中打开的文件夹的路径。
${workspaceFolderBasename} - 在 VS Code 中打开的文件夹的名称,不包含任何斜杠 (/)。
${file} - 当前打开的文件。
${fileWorkspaceFolder} - 当前打开文件所在的工作区文件夹。
${relativeFile} - 相对于工作区根目录的当前打开文件的路径。
${relativeFileDirname} - 相对于工作区根目录的当前打开文件所在目录的路径。
${fileBasename} - 当前打开文件的文件名(包括扩展名)。
${fileBasenameNoExtension} - 当前打开文件的文件名(不包括扩展名)。
${fileExtname} - 当前打开文件的扩展名。
${fileDirname} - 当前打开文件所在目录的绝对路径。
${fileDirnameBasename} - 当前打开文件所在目录的名称。
${cwd} - 任务运行器在 VS Code 启动时的当前工作目录。
${lineNumber} - 活动文件中当前选中的行号。
${selectedText} - 活动文件中当前选中的文本。
${execPath} - 正在运行的 VS Code 可执行文件的路径。
${defaultBuildTask} - 默认构建任务的名称。
${pathSeparator} - 操作系统用于分隔文件路径组件的字符。
${/} - ${pathSeparator} 的简写。
这些预定义变量为我们提供了丰富的上下文信息,在编写 launch.json 和 tasks.json 配置文件时非常有用
Predefined variables examples
假设您有以下要求:
文件位于 /home/your-username/your-project/folder/file.ext,在您的编辑器中打开
目录 /home/your-username/your-project 作为您的根工作区
那么,每个变量的值如下:
${userHome} - /home/your-username
${workspaceFolder} - /home/your-username/your-project
${workspaceFolderBasename} - your-project
${file} - /home/your-username/your-project/folder/file.ext
${fileWorkspaceFolder} - /home/your-username/your-project
${relativeFile} - folder/file.ext
${relativeFileDirname} - folder
${fileBasename} - file.ext
${fileBasenameNoExtension} - file
${fileDirname} - /home/your-username/your-project/folder
${fileExtname} - .ext
${lineNumber} - 光标所在行号
${selectedText} - 代码编辑器中被选中的文本
${execPath} - Code.exe 的位置
${pathSeparator} - 在 macOS 或 Linux 上是 /,在 Windows 上是
这些预定义变量可以在 Visual Studio Code 中配置各种设置和任务时非常有用,因为它们允许您编写更加便携和动态的配置,适应用户的环境。