# VSCode

## VSCode V1.0

## 摘要

本文旨在介绍一些 VSCode 搭配 NVDA 使用的小技巧。介绍的方式主要是场景式的，即介绍一下：当我们需要试用某个功能的时候所需要的一系列小操作的组合。

VSCode 是一个优秀的多语言文本编辑器，常用于代码编辑。因为使用 NVDA 操作软件，往往学习成本比较高。个人一般推荐使用这样的比较通用的工具，只要熟悉一款，就可以解决几乎所有的代码编辑问题。

## 如何启动 VSCode ？

1. 点击Win按键+S，启动搜索。
2. 输入 code 然后点击Enter。

## 如何打开文件夹?

方式1:

* alt+F 打开文件菜单。
* 多次点击上下光标，找到 Open Folder... Ctrl+K Ctrl+Of
* 点击 Enter 在系统的文件选择器中，寻找到对应文件夹路径。

方式2:

全局快捷键： Ctrl+K Ctrl+O，如果没有反应，可以先点击上下光标，再次点击。

## 如何在项目中切换编辑的文件?

编辑代码的时候，在不同文件中跳转市常见操作。这里一共有两种方式。

方式一： 如果记得到文件名的大致信息，点击 ctrl+p，然后输入文件名，可以再搜索结果列表中找到对应的文件。

方式二： 使用 VSCode 内置的文件浏览器。

1. 点击ctrl+shift+e，此时系统焦点将会转移到内置浏览器。
   * 这里的常见提示是 "File Explorer"，文件将通过树式图的方式展示。
2. 通过上下键浏览同级项目，左右键展开或者收缩下一级。
   * 如果需要编辑一个文件，点击回车即可。
3. 如果位于文件浏览器区中，点击ctrl+shift+e 或者 F6，即可返回 主要内容区（即编辑区）。

## 如何在当前文件中，定位变量名，函数名，章节名?

点击ctrl+shift+o，打开符号搜索框，输入部分名字，然后浏览搜索结果列表即可。

## 如何启动命令行?

启动内置的命令行工具：

1. 点击 ctrl + J，开关或者关闭命令行工具。
2. 点击ctrl+上下，浏览命令行中的每一行信息。
   * 内置的命令行不好用，所以用得少。感觉还有几个问题没有解决：如何快速转跳到第一行，如何在一行中进行词的快速跳转。

启动外部命令行:

1. 点击ctrl+shift+c，即可启动外置命令行. 此时的命令行的启动位置，定位是当前的文件夹。
2. 此时可以通过数字小键盘 1\~9 键的光标浏览（NVDA 台式机键盘方案），来阅读整个命令行结果。

其他技巧：

在 PowerShell 中，每次输入命令的时候，建议先清屏。

1. 输入cls清屏。
2. 输入需要的指令，通过数字小键盘4/5/6，检查指令是否正确。
3. 点击回车执行。
4. shift+7，将浏览光标移动到第一行，即可从第一行开始浏览返回的结果.

## 使用 VSCode 的导航栏来定位当前文件和函数的位置

在编辑函数的时候， VSCode 会在正文上方有一个导航栏。这个地址栏类似文件浏览器中的导航栏，或者网页浏览器的地址栏。 可以通过此导航栏提供的信息，快速定位当前位置的文件夹/文件所在的段落或者函数名的信息。同时也可以通过此导航栏跳转到其他位置。

1. 假设起始点位于 VSCode 的编辑区。
2. 点击Ctrl+M，修改 VSCode 的tab键功能. 从编辑模式中，缩进功能，变成系统焦点的跳转。
   * 切换tab功能的时候，缩进功能的提示是: "Pressing Tab will now insert the tab character"。
   * 跳转焦点的提示是： "Pressing Tab will now move focus to the next focusable element"。
3. Shift + Tab，，将系统的焦点定位到导航栏. 以此篇文章为例，此时将会提示以下内容。
   * "pylib   strategy.py   AverageLineCross5Strategy   build\_order\_list"
   * 其中："pylib" 是文件夹，"strategy.py"是文件名，"AverageLineCross5Strategy"是类名，"build\_order\_list"是函数名，这样就对当前位置有一个清楚地定位。
4. 此时可以通过左右键(Left/Right)确认是哪一级，然后通过Down键，打开当前层次的列表选项。
   * 通过上下键，浏览不同的选项. 点击Enter选中。
   * 点击左右键的时候，有时候有内容提示，有的时候没有，不知道为什么，所以我就用的比较少了。
   * 切换文件使用的还是ctrl+p。 切换函数用的是ctrl+shift+o。

## 搜索

有的时候，我们需要通过在文件中搜索，定位代码片段，有的时候还需要在整个项目文件夹的所有文本文件中，搜索文字片段。

### 如何在特定文件中搜索文字?

1. 点击Ctrl+F，打开搜索框。
2. 输入需要搜索的文字片段。
3. 点击Enter，转跳匹配的项目。
   * 此时，每点击一次Enter，会跳转一次， NVDA 也会读出含有此片段的整行文字。
   * 如果确认这是你的目标位置，点击ESC，退出搜索框。
4. 在退出搜索框的时候，点击F3，转跳到下一个匹配项。 Shift+F3转跳到上一匹配项。

### 如何在项目文件夹中搜索文字?

1. 点击Ctrl+Shift+F，打开搜索框. 此时搜索框在右侧侧边栏上，输入需要搜索的字词，然后点击Enter。
2. 此时的结果，是类似文件夹的树式图，一级项目是文件名，二级项目是结果。
3. 多次点击Tab，定位到结果。此时会听到 "results in ..."。
4. 通过上下左右键，浏览树视图，点击Enter选中。

## 如何提高 VSCode 的响应速度?

NVDA 读屏软件对系统资源消耗比较大，在和 VSCode 配合的过程中，常常带来卡顿，冗余提示等非常糟糕的体验。 以下配置主要是可以提高 VSCode 的反应速度，同时减少界面提示的干扰。 如果计算机配置比较好，可以不用设置。

操作：

* 点击alt+F，打开文件菜单。
* 点击ctrl+，打开配置界面。
* 搜索对应下面对应的配置项目。

常见的配置项：

* git.enable
* editor.hover.enable
* editor.parameterHints.enabled
* editor.quickSuggestions
* editor.snippetSuggestions
* Editor: Quick Suggestions Delay

## 如何查找文章的最新版本?

本系列的文章，是根据个人的使用经验撰写，文章的信息，会根据自己的经验不断更新。 最新的版本在此： [文章链接](https://nvda-users.gitbook.io/daily_usage/)
