查看版本,帮助:
$ code -v
1.23.0
7c7da59c2333a1306c41e6e7b68d7f0caa7b3d45
x64
$ code -h
Visual Studio Code 1.23.0
修改vscode的扩展目录:
直接命令打开vscode:
//扩展目录
code --extensions-dir "D:Program FilesMicrosoft VS Code.vscodeextensions"
//用户数据
code --user-data-dir "D:Program FilesMicrosoft VS Code.vscodesettings"
或者在图标的属性,目标中修改
"D:Program FilesMicrosoft VS CodeCode.exe" --extensions-dir="D:Program FilesMicrosoft VS Code.vscodeextensions"
编辑:这是和用户数据目录:
"D:Program FilesMicrosoft VS CodeCode.exe" --user-data-dir="D:Program FilesMicrosoft VS Code.vscodesettings"
设置VSCode为便携版
解压缩VS Code下载后,只需要在Code的文件夹中创建一个data
文件夹:
|- VSCode-win32-x64-1.25.0-insider
| |- Code.exe (or code executable)
| |- data
| | |- user-data
| | | |- ...
| | |- extensions
| | | |- ...
| |- ...
从那时起,该文件夹将用于包含所有代码数据,包括会话状态,首选项,扩展等。
该data
文件夹可以移动到其他VS Code安装。这对于更新便携式代码版本非常有用:只需将data
文件夹移动到较新的VS代码提取版本即可。
默认情况下,TMP
即使在便携模式下,默认目录仍然是系统目录,因为没有保留状态。如果您还想在便携式目录中拥有TMP目录,只需tmp
在该data
文件夹中创建一个空目录即可。只要tmp
存在目录,它就会用于TMP数据。
用户和工作区设置
VS Code 的设置分为两种作用域:
- 用户设置 这些设置全局应用于您打开的任何VS Code 项目
- 工作区设置 这些设置存储在工作区内的
.vscode
文件夹中,并且仅在打开的工作区适用。在此范围上定义的设置将覆盖用户范围的设置。
具体设置:
{
"editor.fontFamily" : "YaHei Consolas Hybrid",
"editor.fontWeight" : "normal",
"editor.fontSize" : 16
"team.showWelcomeMessage" : false,
"vsicons.dontShowNewVersionMessage" : true,
"workbench.iconTheme" : "vscode-icons",
"workbench.colorTheme" : "Atom One Dark",
"window.menuBarVisibility" : "default",
"java.jdt.ls.vmargs" : "-noverify -Xmx1G -XX:+UseG1GC -XX:+UseStringDeduplication -javaagent:"C:\Users\qhong\.vscode\extensions\gabrielbb.vscode-lombok-0.9.6/server/lombok.jar" -Xbootclasspath/a:"C:\Users\qhong\.vscode\extensions\gabrielbb.vscode-lombok-0.9.6/server/lombok.jar"",
"java.configuration.maven.userSettings": "C:\Users\qhong\.m2\settings_dev.xml",
"git.confirmSync" : false,
"git.autofetch" : true,
"files.exclude" : {
".gitignore" : true,
"**/.classpath" : true,
"**/.factorypath": true,
"**/.project" : true,
"**/.settings" : true,
"**/*.iml" : true,
"**/rebel.xml" : true,
"**/.idea" : true,
"**/target" : true
},
"java.home": "D:\Program Files\Java\jdk1.8.0"
}
VS Code的设置文件为setting.json,控制台键入**>Open Settings,可以打开。
配置运行参数,配置tasks.json,使用快捷键Ctrl+SHIFT+B
用户设置的文件保存在如下目录:
- Window %APPDATA%CodeUsersettings.json
- Mac $HOME/Library/Application Support/Code/User/settings.json
- Linux $HOME/.config/Code/User/settings.json
工作空间设置的文件保存在当前目录的.vscode文件夹下。
所以有三种方式更改默认的设置:
- 使用编辑器直接打开setting.json文件;
- 点击 VS Code 的 文件 > 首选项 > 设置 ,可以打开设置面板;
- 在 VS Code 中使用 Ctrl+Shift+P打开命令面板,输入Preferences: Open User Settings或Preferences: Open Workspace Settings。
vscode同步配置:
- 拓展插件打开,搜索 Settings Sync 安装
- 打开并登录 https://github.com/settings/tokens ,页面左下角找到并点击 【Personal access tokens】
- 页面右上角 找到并点击 【Generate new token】
- description输入名称 【code_sync】CheckBox 选中【 gist Create gists 】,点击 绿色button【Generate token】,页面上会出现绿底色的tokens,复制粘贴到剪切板或保留页面不要关闭
- 切换到 vs-code,,随便找到一个页面,alt+shift+u,窗口顶部出现一个小提示,让输入 刚才绿底色的tokens,把剪切板里面的内容粘贴,return
- 会自动打开一个syncSummary提示,证明你已经同步成功
- 打开 https://gist.github.com/ 会出现一个cloudsettings的文件,里面就是你刚同步上去的配置文件
- 如果tokens在vscode里面输入错了,就按 F1,输入 【 sync 】,reset 即可。
- Ctrl+Shift+P输入:Sync,高级选项,编辑本地扩展设置,输入token和gistId
- 上传:Shift+Alt+U、下载:Shift+Alt+D
vscode启动launch.json配置:
有许多launch.json
属性可以帮助支持不同的调试器和调试方案。如上所述,一旦为属性指定了值,就可以使用IntelliSense(Ctrl + Space)查看可用属性列表type
。
每个启动配置都必须具有以下属性:
type
- 用于此启动配置的调试器类型。每个安装的调试扩展都会引入一种类型,例如,node
内置节点调试器,php
以及go
PHP和Go扩展。request
- 此启动配置的请求类型。目前支持的是launch
和attach
。name
- 友好名称,显示在“调试启动配置”下拉列表中。
以下是可用于所有启动配置的一些可选属性:
preLaunchTask
- 要在调试会话开始之前启动任务,请将此属性设置为tasks.json中指定的任务的名称(位于工作空间的.vscode
文件夹下)。postDebugTask
- 要在调试会话的最后启动任务,请将此属性设置为tasks.json中指定的任务的名称(位于工作空间的.vscode
文件夹下)。internalConsoleOptions
- 在调试会话期间控制Debug Console面板的可见性debugServer
- 仅适用于调试扩展作者:连接到指定的端口而不是启动调试适配器
许多调试器支持以下某些属性:
program
- 启动调试器时要运行的可执行文件或文件args
- 传递给程序进行调试的参数env
- 环境变量(该值null
可用于“取消定义”变量)cwd
- 当前工作目录,用于查找依赖项和其他文件port
- 连接到正在运行的进程时的端口stopOnEntry
- 程序启动时立即中断console
-要使用什么样的主机,例如internalConsole
,integratedTerminal
,externalTerminal
。
变量参考:
预定义的变量
支持以下预定义变量:
- $ {workspaceFolder} - 在VS Code中打开的文件夹的路径
- $ {workspaceRoot} - VS Code当前打开的文件夹(不推荐使用该变量,多工作区不方便使用)
- $ {workspaceFolderBasename} - VS代码中打开的文件夹的名称,没有任何斜杠(/)
- $ {file} - 当前打开的文件
- $ {relativeFile} - 当前打开的文件相对于
workspaceFolder
- $ {fileBasename} - 当前打开文件的基本名称
- $ {fileBasenameNoExtension} - 当前打开文件的基本名称,没有文件扩展名
- $ {fileDirname} - 当前打开文件的目录名
- $ {fileExtname} - 当前打开文件的扩展名
- $ {cwd} - 任务运行器在启动时的当前工作目录
- $ {lineNumber} - 活动文件中当前选定的行号
- $ {selectedText} - 活动文件中当前选定的文本
预定义变量示例
假设您有以下要求:
- 位于
/home/your-username/your-project/folder/file.ext
编辑器中打开的文件; - 该目录
/home/your-username/your-project
作为根工作空间打开。
因此,每个变量都有以下值:
- $ {workspaceFolder} -
/home/your-username/your-project
- $ {workspaceFolderBasename} -
your-project
- $ {file} -
/home/your-username/your-project/folder/file.ext
- $ {relativeFile} -
folder/file.ext
- $ {fileBasename} -
file.ext
- $ {fileBasenameNoExtension} -
file
- $ {fileDirname} -
/home/your-username/your-project/folder
- $ {fileExtname} -
.ext
- $ {lineNumber} -
5
- $ {selectedText} -
Text selected in your code editor
提示:在字符串值内使用IntelliSense
tasks.json
,launch.json
以获取预定义变量的完整列表。
环境变量
您还可以通过$ {env:Name}语法引用环境变量(例如,${env:PATH}
)。
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceFolder}/app.js",
"cwd": "${workspaceFolder}",
"args": [ "${env:USERNAME}" ]
}
注意:确保匹配环境变量名称的大小写,例如${env:Path}
在Windows上
设置,命令变量和输入变量
您可以使用以下语法引用VS Code设置和命令:
- $ {config:Name} - 示例:
${config:editor.fontSize}
- $ {command:CommandID} - 示例:
${command:explorer.newFolder}
如果简单的变量替换是不够的,你还可以通过添加一个从你的任务或推出用户输入inputs
部分,将tasks.json
或launch.json
文件。输入具有以下属性:
-
id:输入的标识符。用来指一个输入的格式
${input:id}
中tasks
的部分tasks.json
。 -
description:显示在快速输入或快速选择中,可用于为输入提供上下文。
-
type
:区分将收集哪种用户输入。
- promptString:显示快速输入以从用户获取字符串。
- pickString:显示快速选择,让用户从多个选项中进行选择。
-
options:仅适用于
"type": "pickString"
。这是一组供用户选择的选项。 -
default:如果用户未输入其他内容,将使用的默认值。因为
"type": "pickString"
这必须是其中一个选项。
下面是一个示例tasks.json
,说明了使用inputs
Angular CLI 的用法:
{
"version": "2.0.0",
"tasks": [
{
"label": "ng g",
"type": "shell",
"command": "ng",
"args": [
"g",
"${input:componentType}",
"${input:componentName}"
],
}
],
"inputs": [
{
"id": "componentType",
"description": "What type of component do you want to create?",
"default": "component",
"type": "pickString",
"options": ["component", "directive", "pipe", "service", "class", "guard", "interface", "enum", "enum"]
},
{
"id": "componentName",
"description": "Name your component.",
"default": "my-new-component",
"type": "promptString"
}
]
}
扩展程序查看过滤器
“扩展程序”视图搜索框支持过滤器,可帮助您查找和管理扩展程序。您可能已经看过过滤器@installed
,@recommended
如果您使用了命令Show Installed Extensions和Show Recommended Extensions。还有一些过滤器可让您按受欢迎程度和评级进行排序,并按类别(例如“Linters”)和标签(例如“节点”)进行搜索。您可以通过@
在扩展搜索框中键入并浏览建议来查看所有过滤器和排序命令的完整列表:
以下是扩展程序视图过滤器:
-
@builtin
- 显示VS Code附带的扩展程序。按类型分组(编程语言,主题等)。 -
@disabled
- 显示已禁用的已安装扩展 -
@installed
- 显示已安装的扩展。 -
@outdated
- 显示过期的已安装扩展程序。市场上提供了更新的版本。 -
@enabled
- 显示已启用的已安装扩展 可以单独启用/禁用扩展。 -
@recommended
- 显示推荐的扩展名。按工作区特定或一般用途分组。 -
@category
- 显示属于指定类别的扩展。以下是一些受支持的类别。有关完整列表,请键入
@category
并按照建议列表中的选项进行操作:
@category:themes
@category:formatters
@category:linters
@category:snippets
这些过滤器也可以组合使用。例如:@installed @category:themes
用于查看所有已安装的主题。
如果未提供过滤器,则“扩展”视图将显示当前安装和建议的扩展。
排序
您可以使用@sort
可以采用以下值的过滤器对扩展进行排序:
installs
- 按市面安装计数排序,按降序排列。rating
- 按市场评级(1-5星级)排序,按降序排列。name
- 按扩展名的字母顺序排序。
类别和标签
扩展程序可以设置描述其功能的类别和标签。
您可以使用category:
和过滤类别和标记tag:
。
支持的类别包括:[Programming Languages, Snippets, Linters, Themes, Debuggers, Formatters, Keymaps, SCM Providers, Other, Extension Packs, Language Packs]
。可以通过扩展搜索框中的IntelliSense访问它们:
请注意,如果类别名称多于一个单词,则必须用引号括起该类别名称(例如,category:"SCM Providers"
)。
标签可能包含任何字符串,并且不是由IntelliSense提供的,因此请查看市场以查找有用的标签。
使用扩展
您可以从命令行安装和管理VS代码扩展。
争论 | 描述 |
---|---|
--install-extension <ext> |
安装扩展程序。提供完整的扩展名publisher.extension 作为参数。使用--force 参数来避免提示。 |
--uninstall-extension <ext> |
卸载扩展程序。提供完整的扩展名publisher.extension 作为参数。 |
--disable-extensions |
禁用所有已安装的扩展 扩展程序仍将在“ 扩展”视图的“ 已禁用”部分中显示,但永远不会激活它们。 |
--list-extensions |
列出已安装的扩展。 |
--show-versions |
使用时显示已安装扩展的版本 --list-extensions |
--enable-proposed-api <ext> |
为扩展启用建议的api功能。提供完整的扩展名publisher.extension 作为参数。 |
高级CLI选项
有几个CLI选项可以帮助重现错误和高级设置。
争论 | 描述 |
---|---|
--extensions-dir <dir> |
设置扩展的根路径。 |
--user-data-dir <dir> |
指定保留用户数据的目录,在以root身份运行时非常有用。 |
-s, --status |
打印过程使用和诊断信息。 |
-p, --performance |
从启用Developer:Startup Performance命令开始。 |
--disable-gpu |
禁用GPU硬件加速。 |
--verbose |
打印详细输出(隐含--wait )。 |
--prof-startup |
启动期间运行CPU Profiler。 |
--upload-logs |
将日志从当前会话上载到安全端点。 |
多根 | |
--add <dir> |
将文件夹添加到多根工作空间的最后一个活动窗口。 |
参考:
vs-code-多设备插件同步插件Settings Sync
Building Java project shows error: "Build failed, do you want to continue?"