尝试以扩展 VS Code 中的代理模式!

Visual Studio Code 实用技巧

使用本文中的实用技巧,您可以立即开始学习如何高效使用 Visual Studio Code。熟悉强大的编辑、代码智能和源代码控制功能,并学习有用的键盘快捷方式。请务必浏览入门用户指南中其他深入的主题,了解更多信息。

如果您刚刚开始使用,请务必查看 VS Code 教程,逐步了解其主要功能。

如果您尚未安装 Visual Studio Code,请访问下载页面。您可以在在 Linux 上运行 VS CodemacOSWindows 上找到特定于平台的设置说明。

更喜欢视频?您可以观看 VS Code Day 讲座:Visual Studio Code 实用技巧提升您的 VS Code 体验

基本功能

入门

亲身体验 VS Code 的最佳方式是打开欢迎页,然后选择一个演练,通过设置步骤、功能和 VS Code 提供的更深层次的自定义进行自我引导式浏览。在您发现和学习的过程中,演练会跟踪您的进度。

帮助 > 欢迎菜单打开欢迎页,或使用命令面板中的帮助: 欢迎命令(⇧⌘P (Windows, Linux Ctrl+Shift+P))。

Welcome page

扩展也可以贡献演练。您还可以通过使用命令面板中的帮助: 打开演练...命令直接打开演练(⇧⌘P (Windows, Linux Ctrl+Shift+P))。

Open walkthrough command in the Command Palette

如果您想提高代码编辑技能,请打开交互式编辑器 Playground。尝试 VS Code 的代码编辑功能,如多光标编辑、IntelliSense、代码片段、Emmet 等。

帮助 > 编辑器 Playground菜单打开欢迎页,或使用命令面板中的帮助: 交互式编辑器 Playground命令(⇧⌘P (Windows, Linux Ctrl+Shift+P))。

Interactive editor playground

命令面板

根据当前上下文访问所有可用命令。

键盘快捷方式:⇧⌘P (Windows, Linux Ctrl+Shift+P)

Command Palette

提示

您可以通过用鼠标光标抓住命令面板的顶部边缘并将其拖到其他位置来移动它。您还可以选择标题栏中的自定义布局控件,然后选择一个预配置的快速输入位置

Screenshot that shows the Command Palette in a different location, highlighting the Customize Layout control in the title bar and the preconfigured position options.

默认键盘快捷方式

命令面板中的许多命令都关联了默认键盘快捷方式。您可以在命令面板中看到命令旁边的默认键盘快捷方式(⇧⌘P (Windows, Linux Ctrl+Shift+P))。

keyboard references

键盘参考表

下载适用于您平台的键盘快捷方式参考表(macOSWindowsLinux)。

Keyboard Reference Sheet

浮动窗口

您可以在浮动窗口中打开编辑器、终端或特定视图,例如将编辑器移动到显示器上的另一个位置,甚至移动到另一个显示器。

Screenshot that shows the OS desktop with VS Code window and a CSV file opened in a floating window.

将编辑器选项卡拖出当前 VS Code 窗口以在浮动窗口中打开它。或者,使用编辑器选项卡中的移动到新窗口复制到新窗口上下文选项。

集成终端

键盘快捷方式:⌃` (Windows, Linux Ctrl+`)

Integrated terminal

您可以从下拉列表中选择另一个终端 shell。根据您的操作系统和系统配置,您可能会看到不同的 shell 列出。

进一步阅读

切换侧边栏

键盘快捷方式:⌘B (Windows, Linux Ctrl+B)

toggle side bar

切换面板

键盘快捷方式:⌘J (Windows, Linux Ctrl+J)

toggle panel

禅模式

进入无干扰的禅模式。

键盘快捷方式:⌘K Z (Windows, Linux Ctrl+K Z)

zen mode

按两次 Esc 退出禅模式。

命令行

VS Code 拥有强大的命令行界面 (CLI),使您能够自定义编辑器的启动方式以支持各种场景。例如,您可以从命令行启动 VS Code 以打开差异编辑器来比较两个文件。

确保 VS Code 二进制文件在您的路径中,这样您只需键入 'code' 即可启动 VS Code。如果 VS Code 在安装期间已添加到您的环境路径中,请参阅特定于平台的设置主题(在 Linux 上运行 VS CodemacOSWindows)。

# open code with current directory
code .

# open the current directory in the most recently used code window
code -r .

# create a new window
code -n

# change the language
code --locale=es

# open diff editor
code --diff <file1> <file2>

# open file at specific line and column <file:line[:character]>
code --goto package.json:10:5

# see help options
code --help

# disable all extensions
code --disable-extensions .

.vscode 文件夹

工作区特定的配置文件位于工作区根目录的 .vscode 文件夹中。例如,用于任务运行器tasks.json 和用于调试器launch.json

状态栏

错误和警告

键盘快捷方式:⇧⌘M (Windows, Linux Ctrl+Shift+M)

快速跳转到项目中的错误和警告。

使用 F8⇧F8 (Windows, Linux Shift+F8) 循环浏览错误

errors and warnings

您可以按类型(“信息”、“错误”、“警告”)或按匹配文本筛选问题列表。

更改语言模式

状态栏中的语言模式指示与活动编辑器关联的语言(例如 Markdown、Python 等)。您可以通过选择状态栏语言模式指示器或使用键盘快捷方式更改当前编辑器的语言模式。

键盘快捷方式:⌘K M (Windows, Linux Ctrl+K M)

change syntax

如果您想为文件类型保留新的语言模式,请使用配置文件关联命令将当前文件扩展名与已安装的语言关联起来。

自定义

有许多选项可自定义 VS Code 以满足您的偏好

  • 更改主题
  • 更改键盘快捷方式
  • 调整设置
  • 添加 JSON 验证
  • 创建代码片段
  • 安装扩展

更改主题

VS Code 内置了许多颜色主题。使用首选项: 颜色主题命令或使用键盘快捷方式。

键盘快捷方式:⌘K ⌘T (Windows, Linux Ctrl+K Ctrl+T)

Preview themes

您可以从 VS Code 扩展市场安装更多主题。选择首选项: 颜色主题 > + 浏览更多颜色主题...命令以从市场搜索主题。

此外,您可以安装和更改文件图标主题。

File icon themes

键映射

您习惯了其他编辑器的键盘快捷方式吗?您可以安装一个键映射扩展,将您喜欢的编辑器的键盘快捷方式带到 VS Code。使用首选项: 键映射命令以在Visual Studio 市场上查看当前列表。

一些更受欢迎的键映射是

自定义键盘快捷方式

您可以在键盘快捷方式编辑器中查看和自定义键盘快捷方式。使用首选项: 打开键盘快捷方式命令或使用快捷方式打开编辑器。

键盘快捷方式:⌘K ⌘S (Windows, Linux Ctrl+K Ctrl+S)

选择铅笔图标或在特定条目上使用 Enter 以编辑键盘快捷方式。使用搜索字段筛选列表。

keyboard shortcuts

您还可以搜索快捷方式并将自己的键盘快捷方式添加到 keybindings.json 文件中。

customize keyboard shortcuts

请参阅Visual Studio Code 的键绑定中的更多内容。

调整设置

默认情况下,VS Code 显示设置编辑器以查看和编辑设置。您还可以使用打开用户设置 (JSON)命令或通过更改workbench.settings.editor设置来更改默认设置编辑器,以编辑底层 settings.json 文件。

打开用户设置 settings.json

键盘快捷方式:⌘, (Windows, Linux Ctrl+,)

更改各种 UI 元素的字体大小

// Main editor
"editor.fontSize": 18,
// Terminal panel
"terminal.integrated.fontSize": 14,
// Output panel
"[Log]": {
    "editor.fontSize": 15
}

更改缩放级别

"window.zoomLevel": 5

字体连字

"editor.fontFamily": "Fira Code",
"editor.fontLigatures": true

提示: 您需要安装支持字体连字的字体。FiraCode 是 VS Code 团队中流行的字体。

font ligatures

自动保存

"files.autoSave": "afterDelay"

您还可以通过顶级菜单中的文件 > 自动保存来切换自动保存。

保存时格式化

"editor.formatOnSave": true

粘贴时格式化

"editor.formatOnPaste": true

更改 Tab 字符的大小

"editor.tabSize": 4

空格或 Tab

"editor.insertSpaces": true

渲染空白字符

"editor.renderWhitespace": "all"

默认情况下,空白字符在文本选择中呈现。

忽略文件/文件夹

从您的编辑器窗口中删除这些文件/文件夹。

"files.exclude": {
    "somefolder/": true,
    "somefile": true
}

从搜索结果中删除这些文件/文件夹。

"search.exclude": {
    "someFolder/": true,
    "somefile": true
}

了解更多其他自定义

语言特定设置

您可以使用语言标识符为特定语言限定设置。您可以在语言标识符参考中找到常用语言 ID 列表。

"[languageid]": {

}

提示: 您还可以使用配置语言特定设置命令创建语言特定设置。

language based settings

添加 JSON 验证

JSON 验证默认情况下为许多文件类型启用。在 settings.json 中创建您自己的架构和验证

"json.schemas": [
    {
        "fileMatch": [
            "bower.json"
        ],
        "url": "https://json.schemastore.org/bower"
    }
]

或用于工作区中定义的架构

"json.schemas": [
    {
        "fileMatch": [
            "**/foo.json"
        ],
        "url": "./myschema.json"
    }
]

或使用自定义架构

"json.schemas": [
    {
        "fileMatch": [
            "/.myconfig"
        ],
        "schema": {
            "type": "object",
            "properties": {
                "name" : {
                    "type": "string",
                    "description": "The name of the entry"
                }
            }
        }
    }
]

请参阅 JSON 文档中的更多内容。

配置默认浏览器

在 VS Code 中,您可以Ctrl+单击(macOS 上为Cmd+单击)链接以在默认浏览器中打开它。您可以通过设置workbench.externalBrowser设置来配置默认浏览器。

将浏览器的可执行文件的完整路径指定为设置值。或者,为了确保跨设备正确运行,您还可以使用浏览器别名,例如 edgechromefirefox

"workbench.externalBrowser": "edge"

将多个日志组合到一个视图中

输出面板显示各种服务的输出。每个服务通常都有自己的日志。要分析来自多个服务的相关日志信息,您可以将多个日志组合到一个**复合日志**中。

从输出面板的溢出菜单中选择创建复合日志...

扩展

键盘快捷方式:⇧⌘X (Windows, Linux Ctrl+Shift+X)

查找扩展

您可以使用多种来源查找扩展

  • 在 VS Code 市场中。
  • 在 VS Code 的扩展视图中搜索。
  • 查看扩展建议
  • 社区精选的扩展列表,例如awesome-vscode

扩展视图中,选择筛选控件,然后选择最热门排序依据 > 安装数量

install extensions

扩展建议

扩展视图中,选择筛选控件,然后选择推荐以查看推荐扩展列表。

show recommended extensions

创建您自己的扩展

您对创建自己的扩展感兴趣吗?您可以在扩展 API 文档中学习如何做到这一点,特别要查看贡献点文档

  • 配置
  • 命令
  • 键盘快捷方式
  • 语言
  • 调试器
  • 语法
  • 主题
  • 代码片段
  • jsonValidation

文件和文件夹

简单文件对话框

通过简单文件对话框,您可以将系统默认的文件打开和保存文件及文件夹对话框替换为 VS Code 内的更简单的快速选择对话框。

设置:files.simpleDialog

Simple File Dialog

提示

使用右上角的眼睛图标显示或隐藏以点开头的文件和文件夹。

显示资源管理器视图

键盘快捷方式:⇧⌘E (Windows, Linux Ctrl+Shift+E)

快速打开

快速搜索和打开文件。

键盘快捷方式:⌘P (Windows, Linux Ctrl+P)

Quick Open

提示: 键入 ? 以查看命令建议。

Quick Open command list

键入 edtterm 等命令后跟一个空格会弹出一个下拉列表。

term command in Quick Open

在最近打开的文件之间导航

重复按快速打开键盘快捷方式可在最近打开的文件之间快速循环。

从快速打开中打开多个文件

您可以通过按 右箭头快速打开中打开多个文件。这将在后台打开当前选定的文件,您可以继续从快速打开中选择文件。

在最近打开的文件夹和工作区之间导航

打开最近的文件夹或工作区。

键盘快捷方式:⌃R (Windows, Linux Ctrl+R)

显示一个快速选择下拉列表,其中包含文件 > 打开最近中的最近打开的文件夹和工作区,后面是文件。

键盘快捷方式:Ctrl+单击(macOS 上为Cmd+单击

您可以通过将光标移动到文件链接,然后按 Ctrl+单击来快速打开文件或图像,或创建新文件。

create and open file

关闭当前打开的文件夹

键盘快捷方式:⌘K F (Windows, Linux Ctrl+K F)

导航历史

导航整个历史记录:⌃Tab (Windows, Linux Ctrl+Tab)

向后导航:⌃- (Windows Alt+Left, Linux Ctrl+Alt+-)

向前导航:⌃⇧- (Windows Alt+Right, Linux Ctrl+Shift+-)

navigate history

文件关联

为未正确检测到的文件创建语言关联。例如,许多带有自定义文件扩展名的配置文件实际上是 JSON。

"files.associations": {
    ".database": "json"
}

防止脏写入

当您尝试保存一个因磁盘上已更改而无法保存的文件时,VS Code 将显示错误消息。VS Code 会阻止保存文件,以防止覆盖在编辑器外部进行的更改。

要解决保存冲突,请在通知弹出窗口中选择比较操作以打开差异编辑器,该编辑器显示磁盘上的文件内容(左侧)与 VS Code 中的内容(右侧)的比较。

dirty write

使用编辑器工具栏中的操作来解决保存冲突。您可以接受您的更改,从而覆盖磁盘上的任何更改,或者恢复到磁盘上的版本。恢复意味着您的更改将丢失。

注意: 在您选择两种操作之一来解决冲突之前,文件将保持脏状态且无法保存。

编辑技巧

以下是编辑代码的一些常见功能。如果您更熟悉其他编辑器的键盘快捷方式,请考虑安装一个键映射扩展

提示:您可以通过将搜索筛选为 @recommended:keymaps 来在扩展视图中查看推荐的键映射扩展。

并排编辑

键盘快捷方式:⌘\ (Windows, Linux Ctrl+\)

您还可以拖放编辑器以创建新的编辑器组并在组之间移动编辑器。

split editors

在编辑器之间切换

键盘快捷方式:⌘1 (Windows, Linux Ctrl+1), ⌘2 (Windows, Linux Ctrl+2), ⌘3 (Windows, Linux Ctrl+3)

navigate editors

多光标选择

要在任意位置添加光标,请用鼠标选择一个位置并使用 Alt+单击(macOS 上为Option+单击)。

要设置当前位置上方或下方的光标,请使用

键盘快捷方式:⌥⌘↑ (Windows Ctrl+Alt+Up, Linux Shift+Alt+Up)⌥⌘↓ (Windows Ctrl+Alt+Down, Linux Shift+Alt+Down)

multi cursor

您可以使用 ⇧⌘L (Windows, Linux Ctrl+Shift+L) 将其他光标添加到当前选择的所有出现位置。

add cursor to all occurrences of current selection

注意:您还可以使用editor.multiCursorModifier设置将修饰符更改为 Ctrl/Cmd 以应用多个光标。有关详细信息,请参阅多光标修饰符

如果您不想添加当前选择的所有出现位置,可以使用 ⌘D (Windows, Linux Ctrl+D)。这只选择您选择的下一个出现位置,这样您就可以一个接一个地添加选择。

add cursor to next occurrences of current selection one by one

列(框)选择

您可以通过在拖动鼠标时按住 Shift+Alt(macOS 上为Shift+Option)来选择文本块。每个选定行的末尾将添加一个单独的光标。

Column text selection

您还可以使用键盘快捷方式触发列选择。

垂直标尺

您可以使用editor.rulers设置向编辑器添加垂直列标尺,该设置接受一个数组,其中包含您想要垂直标尺的列字符位置。

{
  "editor.rulers": [20, 40, 60]
}

Editor rulers in the editor

快速滚动

按下 Alt 键可在编辑器和资源管理器中启用快速滚动。默认情况下,快速滚动使用 5 倍速度乘数,但您可以通过编辑器: 快速滚动灵敏度 (editor.fastScrollSensitivity) 设置来控制乘数。

锁定滚动

您可以使用视图: 切换编辑器锁定滚动命令同步所有可见编辑器的滚动。这意味着当您在一个编辑器中滚动时,所有其他编辑器将滚动相同的量,保持一切对齐。

Locked scrolling in the editor

您可以选择仅在按住特定键盘快捷方式时激活滚动同步。为 workbench.action.holdLockedScrolling 命令设置键盘快捷方式,以暂时锁定编辑器之间的滚动。

向上/向下复制行

键盘快捷方式:⇧⌥↑ (Windows Shift+Alt+Up, Linux Ctrl+Shift+Alt+Up)⇧⌥↓ (Windows Shift+Alt+Down, Linux Ctrl+Shift+Alt+Down)

向上/向下复制行命令在 Linux 上未绑定,因为 VS Code 的默认键盘快捷方式会与 Ubuntu 键盘快捷方式冲突,请参阅问题 #509。您仍然可以将命令 editor.action.copyLinesUpActioneditor.action.copyLinesDownAction 设置为您自己的首选键盘快捷方式。

copy line down

向上和向下移动行

键盘快捷方式:⌥↑ (Windows, Linux Alt+Up)⌥↓ (Windows, Linux Alt+Down)

move line up and down

收缩/扩展选择

键盘快捷方式:⌃⇧⌘← (Windows, Linux Shift+Alt+Left)⌃⇧⌘→ (Windows, Linux Shift+Alt+Right)

shrink expand selection

您可以在基本编辑文档中了解更多信息。

转到文件中的符号

键盘快捷方式:⇧⌘O (Windows, Linux Ctrl+Shift+O)

Find by symbol

您可以通过添加冒号 @: 按类型对符号进行分组。

group symbols by kind

转到工作区中的符号

键盘快捷方式:⌘T (Windows, Linux Ctrl+T)

go to symbol in workspace

大纲视图

文件资源管理器中的大纲视图(默认在底部折叠)显示当前打开文件的符号。

Outline view

您可以按符号名称、类别和文件中位置进行排序,并允许快速导航到符号位置。

导航到特定行

键盘快捷方式:⌃G (Windows, Linux Ctrl+G)

撤消光标位置

键盘快捷方式:⌘U (Windows, Linux Ctrl+U)

修剪尾随空白

键盘快捷方式:⌘K ⌘X (Windows, Linux Ctrl+K Ctrl+X)

trailing whitespace

转换文本命令

您可以使用命令面板中的转换命令将选定文本更改为大写、小写和标题大小写。

Transform text commands

代码格式化

当前选定的源代码:⌘K ⌘F (Windows, Linux Ctrl+K Ctrl+F)

整个文档格式化:⇧⌥F (Windows Shift+Alt+F, Linux Ctrl+Shift+I)

code formatting

代码折叠

键盘快捷方式:⌥⌘[ (Windows, Linux Ctrl+Shift+[), ⌥⌘] (Windows, Linux Ctrl+Shift+])⌘K ⌘L (Windows, Linux Ctrl+K Ctrl+L)

code folding

您还可以使用折叠所有⌘K ⌘0 (Windows, Linux Ctrl+K Ctrl+0))和展开所有⌘K ⌘J (Windows, Linux Ctrl+K Ctrl+J))来折叠/展开编辑器中的所有区域。

您可以使用折叠所有块注释⌘K ⌘/ (Windows, Linux Ctrl+K Ctrl+/))来折叠所有块注释。

选择当前行

键盘快捷方式:⌘L (Windows, Linux Ctrl+L)

导航到文件开头和结尾

键盘快捷方式:⌘↑ (Windows, Linux Ctrl+Home)⌘↓ (Windows, Linux Ctrl+End)

打开 Markdown 预览

在 Markdown 文件中,使用

键盘快捷方式:⇧⌘V (Windows, Linux Ctrl+Shift+V)

Markdown preview

并排 Markdown 编辑和预览

在 Markdown 文件中,使用

键盘快捷方式:⌘K V (Windows, Linux Ctrl+K V)

预览和编辑器将与您在任一视图中的滚动同步。

side by side Markdown preview

IntelliSense

⌃Space (Windows, Linux Ctrl+Space) 触发建议小部件。

intellisense

您可以查看可用方法、参数提示、简短文档等。

速览

选择一个符号,然后键入 ⌥F12 (Windows Alt+F12, Linux Ctrl+Shift+F10)。或者,您可以使用上下文菜单。

peek

转到定义

选择一个符号,然后键入 F12。或者,您可以使用上下文菜单或Ctrl+单击(macOS 上为Cmd+单击)。

go to definition

您可以使用转到 > 返回命令或 ⌃- (Windows Alt+Left, Linux Ctrl+Alt+-) 返回到上一个位置。

当您将鼠标悬停在类型上时,如果按 Ctrl(macOS 上为Cmd),您还可以看到类型定义。

转到引用

选择一个符号,然后键入 ⇧F12 (Windows, Linux Shift+F12)。或者,您可以使用上下文菜单。

peek references

查找所有引用视图

选择一个符号,然后键入 ⇧⌥F12 (Windows, Linux Shift+Alt+F12) 以打开引用视图,该视图在专用视图中显示您文件的所有符号。

重命名符号

选择一个符号,然后键入 F2。或者,您可以使用上下文菜单。

rename symbol

搜索和修改

除了搜索和替换表达式,您还可以使用带有捕获组的正则表达式搜索和重用匹配的部分。通过点击使用正则表达式.*按钮(⌥⌘R (Windows, Linux Alt+R))在搜索框中启用正则表达式,然后编写正则表达式并使用括号定义组。然后,您可以使用替换字段中的 $1$2 等来重用每个组中匹配的内容。

search and modify

.eslintrc.json

安装ESLint 扩展。根据您的喜好配置 linter。有关其 linting 规则和选项的详细信息,请查阅ESLint 规范

以下是使用 ES6 的配置。

{
  "env": {
    "browser": true,
    "commonjs": true,
    "es6": true,
    "node": true
  },
  "parserOptions": {
    "ecmaVersion": 6,
    "sourceType": "module",
    "ecmaFeatures": {
      "jsx": true,
      "classes": true,
      "defaultParams": true
    }
  },
  "rules": {
    "no-const-assign": 1,
    "no-extra-semi": 0,
    "semi": 0,
    "no-fallthrough": 0,
    "no-empty": 0,
    "no-mixed-spaces-and-tabs": 0,
    "no-redeclare": 0,
    "no-this-before-super": 1,
    "no-undef": 1,
    "no-unreachable": 1,
    "no-use-before-define": 0,
    "constructor-super": 1,
    "curly": 0,
    "eqeqeq": 0,
    "func-names": 0,
    "valid-typeof": 1
  }
}

package.json

请参阅 package.json 文件的 IntelliSense。

package json intellisense

Emmet 语法

支持 Emmet 语法.

emmet syntax

代码片段

创建自定义代码片段

文件 > 首选项 > 配置代码片段,选择语言,然后创建代码片段。

"create component": {
    "prefix": "component",
    "body": [
        "class $1 extends React.Component {",
        "",
        "\trender() {",
        "\t\treturn ($2);",
        "\t}",
        "",
        "}"
    ]
},

有关详细信息,请参阅创建您自己的代码片段

Git 集成

键盘快捷方式:⌃⇧G (Windows, Linux Ctrl+Shift+G)

Git 集成在 VS Code 中是“开箱即用”的。您可以从 VS Code 扩展市场安装其他源代码控制管理 (SCM) 提供程序。本节介绍 Git 集成,但大部分 UI 和手势对于其他 SCM 提供程序是通用的。

Git blame

VS Code 在编辑器内和状态栏中以内联方式显示 Git blame 信息。将鼠标悬停在状态栏项目或内联提示上,以查看详细的 Git blame 信息。

Screenshot that shows Git blame information when hovering over the git blame item in the Status Bar.

要启用或禁用 Git blame 信息,请使用Git: 切换 Git Blame 编辑器装饰Git: 切换 Git Blame 状态栏项目命令,或配置这些设置

了解有关 VS Code 中的 Git blame 支持以及如何自定义布局的更多信息。

差异

源代码控制视图中,选择一个文件以打开差异编辑器。或者,选择右上角的打开更改按钮以对当前打开的文件进行差异比较。

git diff from source control

视图

差异的默认视图是并排视图

通过选择右上角的更多操作 (...) 按钮,然后选择内联视图来切换内联视图

Screenshot that shows the More Actions menu in the diff editor, highlighting the Inline View menu item

如果您希望内联视图作为默认视图,请配置 "diffEditor.renderSideBySide": false 设置。

可访问的差异查看器

使用 F7⇧F7 (Windows, Linux Shift+F7) 导航差异。这以统一的补丁格式显示更改。可以使用箭头键导航行,按 Enter 可返回差异编辑器和选定行。

diff_review_pane

编辑待定更改

在差异编辑器中查看更改时,您可以直接在差异编辑器的待定更改侧进行编辑。

分支

通过状态栏轻松在 Git 分支之间切换。

switch branches

暂存

暂存文件更改

将鼠标悬停在文件数量上,然后选择加号按钮以暂存文件。

选择减号按钮以取消暂存更改。

git stage all

暂存选定内容

您可以通过在文件中进行文本选择,然后从命令面板或差异编辑器上下文菜单(右键单击)中选择暂存选定范围来暂存文件的一部分。

撤消上次提交

选择 (...) 按钮,然后选择提交 > 撤消上次提交以撤消上次提交。更改将添加到已暂存更改部分。

undo last commit

查看 Git 输出

VS Code 使查看实际运行的 Git 命令变得容易。当您仍在学习 Git 或正在调试困难的源代码控制问题时,这可能会很有帮助。

要查看 Git 输出,请在源代码控制视图中选择 (...) 按钮,然后选择显示 Git 输出,使用Git: 显示 Git 输出命令,或使用切换输出命令(⇧⌘U (Windows Ctrl+Shift+U, Linux Ctrl+K Ctrl+H)),然后从下拉列表中选择Git

槽指示器

编辑器在槽中提供视觉线索,指示更改(添加、更改或删除的行)的位置和类型。有关详细信息,请参阅源代码控制文档

git gutter indicators

解决合并冲突

在合并期间,转到源代码控制视图(⌃⇧G (Windows, Linux Ctrl+Shift+G))并在差异视图中进行更改。

您可以使用内联 CodeLens 解决合并冲突,它允许您接受当前更改接受传入更改接受所有更改比较更改

Git merge

在源代码控制文档中了解有关解决合并冲突的更多信息。

将 VS Code 设置为默认合并工具

git config --global merge.tool vscode
git config --global mergetool.vscode.cmd 'code --wait $MERGED'

将 VS Code 设置为默认差异工具

git config --global diff.tool vscode
git config --global difftool.vscode.cmd 'code --wait --diff $LOCAL $REMOTE'

比较文件与剪贴板

键盘快捷方式:⌘K C (Windows, Linux Ctrl+K C)

使用命令面板中的文件: 比较活动文件与剪贴板命令(⇧⌘P (Windows, Linux Ctrl+Shift+P))快速将活动文件与剪贴板内容进行比较。

调试

配置调试器

在“运行和调试”视图(⇧⌘D (Windows, Linux Ctrl+Shift+D))中,选择创建 launch.json 文件,它会提示您选择与项目匹配的环境(Node.js、Python、C++ 等)。这会在您的工作区中生成一个包含调试器配置的 launch.json 文件。

Node.js 支持是内置的,其他环境需要安装相应的语言扩展。有关详细信息,请参阅调试文档

configure debugging

断点和单步执行

通过选择编辑器边距或在当前行使用 F9 来切换断点。编辑器边距中的断点通常显示为红色的实心圆圈。

调试会话开始后,调试工具栏将出现在编辑器顶部,使您能够在调试时单步执行或进入代码。在调试文档中了解有关调试操作的更多信息。

debug

数据检查

可以在运行和调试视图的变量部分、通过将鼠标悬停在编辑器中的源上或通过使用调试控制台来检查变量。

data inspection

日志点

日志点与断点非常相似,但它们在命中时不会暂停调试器,而是将消息记录到控制台。日志点对于在调试无法修改或暂停的生产服务器时注入日志记录特别有用。

在左侧编辑器边槽中添加一个日志点,它将显示为“菱形”图标。日志消息是纯文本,但可以包含在花括号 ('{}') 中求值的表达式。

Logpoint set in the editor

触发断点

触发断点是一种在另一个断点命中后自动启用的断点。当代码中出现仅在特定先决条件发生后才出现的故障情况时,它们非常有用。

可以通过右键单击字形边距,选择 添加触发断点,然后选择哪个其他断点启用此断点来设置触发断点。

任务运行器

VS Code 中的任务可以配置为运行脚本和启动进程,以便这些工具可以在 VS Code 中使用,而无需输入命令行或编写新代码。

自动检测任务

从顶级菜单中选择终端,运行命令配置任务,然后选择您要运行的任务类型。这将生成一个包含以下内容的 tasks.json 文件。有关详细信息,请参阅任务文档。

{
  // See https://go.microsoft.com/fwlink/?LinkId=733558
  // for the documentation about the tasks.json format
  "version": "2.0.0",
  "tasks": [
    {
      "type": "npm",
      "script": "install",
      "group": {
        "kind": "build",
        "isDefault": true
      }
    }
  ]
}

自动生成偶尔会出现问题。请查阅文档以确保一切正常运行。

从终端菜单运行任务

从顶级菜单中选择终端,运行命令运行任务,然后选择您要运行的任务。通过运行命令终止任务来终止正在运行的任务。

task runner

为任务定义键盘快捷方式

您可以为任何任务定义键盘快捷方式。从命令面板⇧⌘P (Windows, Linux Ctrl+Shift+P))中,选择首选项: 打开键盘快捷方式文件,将所需快捷方式绑定到 workbench.action.tasks.runTask 命令,并将任务定义为 args

例如,要将 Ctrl+H 绑定到 Run tests 任务,请添加以下内容

{
  "key": "ctrl+h",
  "command": "workbench.action.tasks.runTask",
  "args": "Run tests"
}

从资源管理器中将 npm 脚本作为任务运行

从资源管理器视图中,您可以在编辑器中打开脚本,将其作为任务运行,并使用 Node 调试器启动它(当脚本定义了调试选项,如 --inspect-brk 时)。单击时的默认操作是打开脚本。要单击一次即可运行脚本,请将npm.scriptExplorerAction设置为 run。使用npm.exclude设置来排除特定文件夹中 package.json 文件中包含的脚本。

Filter problems

通过npm.enableRunFromFolder设置,您可以启用从文件夹的资源管理器视图上下文菜单中运行 npm 脚本。当选择一个文件夹时,该设置会启用在文件夹中运行 NPM 脚本...命令。该命令会显示此文件夹中包含的 npm 脚本的快速选择列表,您可以选择要作为任务执行的脚本。

便携模式

VS Code 具有便携模式,可让您将设置和数据保存在与安装位置相同的位置,例如在 U 盘上。

Insider 版本

Visual Studio Code 团队使用 Insiders 版本测试 VS Code 的最新功能和错误修复。您也可以通过在此处下载来使用 Insiders 版本。

  • 对于早期采用者 - Insiders 包含供用户和扩展作者试用的最新代码更改。
  • 频繁构建 - 每天都有新构建,包含最新的错误修复和功能。
  • 并排安装 - Insiders 与稳定版并排安装,允许您独立使用两者。