Visual Studio Code 编辑器
Visual Studio Code 安装
建议在安装时,选取下列功能
若没有「以 Code 打开」则重新安装 (不需要移除), 重新安装后所有的 Extensions 及设置会保留。
注:就算是移除,所有的 Extensions 及设置还是会保留,除非移除了下列的文件夹。
-
设置档文件夹
%USERPROFILE%\AppData\Roaming\Code
-
扩展 (Extensions) 安装文件夹
%USERPROFILE%\.vscode
将运行档加入 PATH 中,才能正确运行 Code CLI (命令行接口)。
-
运行档文件夹
%USERPROFILE%\"AppData\Local\Programs\Microsoft VS Code"
如果运行「运行档文件夹」 内的 code.exe -h
时,没有输出任何内容,而是启动 Visual Studio Code
。
实际上 Code CLI 并非运行 code.exe 而是由 %USERPROFILE%\"AppData\Local\Programs\Microsoft VS Code\bin\code.cmd"
来处理,加入 PATH 中
是将 code.cmd
的文件夹加入 PATH。
code.cmd [选项] [路径或文件] (1)
1 | [选项] 跟 [路径或文件] 不需依据顺序。 多个路径将打开成「工作区 Workspace」,多个文件则同时打开。 注: code.cmd 只是为了明确,实际上运行 code 即可。 |
Options |
|
|
比对两个文件 |
|
打开文件 |
|
打开新窗口。 |
|
等待 VSCode 关闭后再返回。 |
|
显示辅助说明 |
Extensions Management |
|
|
列出安装的扩展 |
|
显示扩展的版本,需配合 --list-extensions |
|
安装扩展或更新 |
|
卸载扩展或更新 |
Troubleshooting |
|
|
显示版本 |
|
显示进程及诊断信息。 |
显示安装的扩展及版本: code --list-extensions --show-versions 在目前路径打开新 code: code . -n
一般操作
- 打开 大纲(Outline) 窗口
-
-
选取主菜单
-
选取 Outline
-
- 全屏幕
-
F11 切换全屏幕。
(只有) 编辑器全屏幕,按快捷键 Ctrl+K 再按 Z。离开全屏幕,按两次 Esc。 - 缩放字体大小
-
按快捷键 Ctrl++,Ctrl+-。
- 编辑器自动换行
-
Alt+Z 或选取主菜单 。
- 编辑器操作
-
选择整行:Ctrl+L。
删除整行 (或选取区):Ctrl+Shift+K。
整行 (选取区) 上下移动:Alt+↑ 、Alt+↓。
拷贝 (选取区) 并粘贴:Shift+Alt+↑ (拷贝后选取「拷贝」区),Shift+Alt+↓ (拷贝后选取「粘贴」区)。
选择列:Shift+Alt 用鼠标单击 (可拖曳),Ctrl+Shift+Alt 使用键盘方向键。 - 切换大小写
-
在「命令面板 (Command Palette)」输入「Transform to Lowercase」 选取的文本转成小写,「Transform to Uppercase」 大写,「Transform to Title Case」 前缀大写。
- 格式化文档
-
-
按快捷键 Shift+ALT+F
-
在文档编辑器上按右键,选取
Format Document
的功能。 -
「命令面板 (Command Palette)」输入 Format Document。
如何自订「格式化」,如 SCSS (SASS) 在 Selectors (选择器) 中不要换行? 进入「设置 (Settings)」 找到
页面内Format: Newline Between Selectors
项目,取消Separate selectors with new line.
。
由于设置太多,也得知 VSCode 已内置那些格式化选项,可至 Visual Studio Code User and Workspace Settings 找出.format.
格式选项直接修改settings.json
比较快。 -
- 文本档比对
-
在 EXPLORER 选取两个文件,右键选择
Compare Selected
。
选取第一个文件右键选择Select for Compare
,再选取第二个文件右键选择Compare with Selected
。 - 设置 (Settings)
-
Ctrl+, 或选取主菜单 。
在
Settings
的页面中,可以看到User
、Workspace
、Folder
的分页。-
User
设置值适用所有工作区。 -
Workspace
设置值仅适用于此工作区。 -
Folder
设置值仅适用于此文件夹,工作区内有加入其他文件夹,会出现本项目。
设置值优先权为 1.Folder 2.Workspace 3.User。
- 设置文件位置
-
User
是保存在%USERPROFILE%\AppData\Roaming\Code\User\settings.json
。当 VSCode 是打开工作区文件;则Workspace
设置值是保存在工作区文件,若是打开文件夹则保存位置是在该文件夹的子目录.vscode
中的settings.json
文件。在 Settings 的页面可找到「打开设置档」的按钮。
-
- 转到文档 (Go to File)
-
Ctrl+P 或选取主菜单 ,内容为最近打开的文档,当输入内容时,会自动搜索工作区 (或单一文件夹) 内所有的文件名称。
或者可 输入安装扩展命令。ext install <Extension ID>
- 命令面板 (Command Palette)
-
Ctrl+Shift+P 或 F1 或选取主菜单 。
- 常用命令
-
-
Preferences: Open Settings (UI)
打开 「设置 (Settings)」,该如果打开的设置快捷键 (Ctrl+, ) 跟输入法相冲突,可用「命令面板 (Command Palette)」。当只输入Settings
可一并列出Open User Settings (JSON)
、Open Workspace Settings (JSON)
直接打开「设置档」。 -
Developer: Reload Window
重启 VSCode -
Developer: Open Process Explorer
打开进程浏览器。
-
「命令面板」缺省前置一个
>
(大于) 的字符;用于运行「命令」,如果去掉前置的>
(大于) 则为「转到文档 (Go to File)」(注:同样可安装扩展)。 - 修改键盘快捷键
-
- 打开
KeyboardShortcuts
页面 -
采用快捷键 Ctrl+K、Ctrl+S 或选取主菜单 。
或者在「命令面板 (Command Palette)」输入keyboard
或shortcuts
找到Preferences:Open Keyboard Shortcuts
。 - 找到快捷键项目并进入编辑
-
如要找到进入「设置 (Settings)」的快捷键 (Ctrl+, ),在
KeyboardShortcuts
搜索框中输入快捷键(以空格分隔)如ctrl ,
或者输入settings
;可找到workbench.action.openSettings
- 右键选择的功能
-
-
Change Keybinding…
修改快捷键 -
Add Keybinding…
添加快捷键 (将相同的命令增加另一组快捷键)。 -
Reset Keybinding
重置为初始值
-
- 输入新的快捷键
-
在修改快捷键的窗口中
Press desired key combination and then press ENTER
键入新的快捷键组合,键入完成之后 Enter 保存。
如果键入的快捷键组合已存在,会提示existing command has this keybinding
,按下 Esc 关闭窗口再重新设置!
快捷键设置值是保存在
%USERPROFILE%\AppData\Roaming\Code\User\keybindings.json
。在 Keyboard Shortcuts 的页面可找到「打开设置档」的按钮。
- 打开
- 其他设置
-
- 拷贝粘贴同名文件自动命名策略
-
打开「设置 (Settings)」,输入
explorer.incrementalNaming
-
simple (默认值) 增加
-copy
到文件名的尾端。 -
smart 文件名递增数字
-
disabled 询间取代文件
-
套件
- 安装扩展 (Extensions)
-
- 方式1
-
按下 Ctrl+Shift+X (快捷键也常用于设置套件) 或选取主菜单 ,进入
EXTENSIONS:MARKETPLACE
页面;搜索套件。 - 方式2
-
-
打开「转到文档 (Go to File)」 ( 按快捷键 Ctrl+P 或 选取主菜单 )。
-
输入下面的命令:
ext install <Extension ID>
如何得知
Extension ID
,在EXTENSIONS:MARKETPLACE
页面,选取扩展后;按右键选择Copy Extension ID
则会拷贝 ID 至剪贴板。
-
- 切换语系
-
安装中文套件后没有切换至中文或者更新后切换为英文时, 打开「命令面板 (Command Palette)」,搜索
display language
后选取Configure Display Language
,再选取要切换的语系。 - 常用套件
-
- 书签
-
- Bookmarks
-
在文档编辑器上按右键,可以看到
Bookmarks
的菜单。打开「命令面板 (Command Palette)」,找到Bookmarks: List from All Files
可列出所有文件的书签。
安装:ext install alefragnani.Bookmarks
- 文件处理
-
- File Utils
-
在 EXPLORER 右键选择文件会出现
Duplicate
(重复) 的功能,重复该文件时可输入路径及文件名,Move
则为移动文件。
安装:ext install sleistner.vscode-fileutils
- 图档格式
-
- SVG
-
在 EXPLORER 右键选择文件会出现
Preview SVG
、Minify SVG
。
安装:ext install jock.svg
- SVG Gallery
-
在 EXPLORER 右键选择文件或目录会出现
Open in SVG Gallery
,可跟 SVG 搭配。
安装:ext install developer2006.svg-gallery
- 字典及并字检查
-
- Dictionary Completion
-
安装:
ext install yzhang.dictionary-completion
- Code Spell Checker
-
安装:
ext install streetsidesoftware.code-spell-checker
- All Autocomplete
-
安装:
ext install Atishay-Jain.All-Autocomplete
- Explorer 图标
-
- file-icons
-
习惯用该图标 (跟 ATOM 一样) (文件夹图标只有一种)。
安装:ext install file-icons.file-icons
- vscode-icons
-
文件夹图标有多种,图标颜色丰富。
安装:ext install vscode-icons-team.vscode-icons
- Material Icon Theme
-
文件夹图标有多种,图标颜色丰富。
安装:ext install PKief.material-icon-theme
安装后选取扩展右键选择
Set File Icon Theme
或 选取主菜单 选取图标主题。
工作区 (Workspace)
- 创建工作区
-
-
选取主菜单
打开文件夹 (如: MyProject),可以发现EXPLORER
的根为文件夹名称 (MyProject)。 -
再选取主菜单
加入另一个文件夹,EXPLORER
的根变成为UNTITLED (WORKSPACE)
,根之下有两个文档夹。
现在,已经创建好了工作区,就这样。
注:实际上并不需要二个文件夹,只有一个文件夹也可以成为「工作区」;在「工作区」内只有一个根文档夹。
-
- 保存工作区
-
再来保存工作区,选取主菜单
保存工作区,缺省文件名为第一次打开的文件夹名称MyProject.code-workspace
,可以另外取名如为MyWorkspace.code-workspace
。打开 MyWorkspace 工作区文件,则EXPLORER
的根为MYWORKSPACE (WORKSPACE)
。
注:工作区文件位置跟文件夹为相对路径,这表示当要移动工作区文件时,不能直接将工作区文件拷贝粘贴新路径,应打开工作区;再选取主菜单 保存至新的工作区。 - 打开工作区
-
打开 VSCode 时会缺省跟上次相同的环境,如上次打开的工作区,你不用担心找不到工作区文件。如有多个工作区可在主菜单
中找到曾经打开过的工作区 (或文件)。当然,亦以直接打开工作档 (选取主菜单 )。
- 变更工作区根文档夹的名称
-
打开工作区文件 (
.code-workspace
),增加 "name" 的项目,如下:{ "folders": [ { "path": "." }, { "name": "根文档夹名称", (1) "path": "src" (2) } ], "settings": {} }
1 设置名称;别忘了要以逗号 ( ,
) 区分项目。2 工作区文件位置跟文件夹为相对路径,根文档夹是在工作区文件路径内的 src
文件夹。 - 调整工作区根文档夹的顺序
-
- 以鼠标拖曳文件(或文件夹)时出现下列消息
-
确定要将 <搬移的文件> 移至 <目标文件夹> 吗?
移动 取消Are you sure you want to move <搬移的文件> into <目标文件夹>?
Move Cancel - 用鼠标拖曳 (drop-drag) 工作区根文档夹 (工作区内第一层的文档夹) 出现下列消息
-
您确定要变更工作区中根文档夹 <移动的工作区根文档夹> 的顺序吗?
移动 取消Are you sure you want to change the order of root folder <移动的工作区根文档夹> in your workspace?
Move Cancel
消息跟搬移文件不一样,可判断 VSCode 的动作是否合乎预期。
- 排除「转到文档 (Go to File)」自动搜索文件名称的文件夹
-
当工作区内的某个根文档夹内有大量的文件时,需要一些时间才能找到合乎的文件。
解决方案是排除该文件夹所有搜索,但排除后Find in Folder
(找出合乎内容的文件) 将无法运作。进入「设置 (Settings)」找到
页面内Exclude
按下 Add Pattern 增加**
。 - 多个 VSCode 打开相同的文件夹或工作区
-
多个 VSCode 打开相同的文件夹或工作区时,会发现 VSCode 会跳到旧的原本已打开相同的 VSCode。
VSCode 不允许多个 VSCode 打开相同的文件夹或工作区。选取主菜单
打开相同的工作区,实际上是创建新的工作区。
新的 VSCode 窗口的 Workspace 是 UNTITLED (未命名),结束 VSCode 会询问是否保存工作区。不同的「工作区」可以操作相同的文件夹或者该文件夹只被打开 (
) 一次。 - 取消信任提示
-
每次打开文件夹时或加入至工作区时,都会询问
Do you trust the authors of the files in this folder?取消信任机制按下列步骤
-
打开「设置 (Settings)」( Ctrl+, 或选取主菜单 )
-
找到
Settings
页面中的 ,取消勾选Trust:Enabled
。
-
工作区相关套件
- Project Manager
-
安装后在左侧的 Sidebar 会多一个「多重文件夹」图标。该套件将「工作区」称为
Project
,打开工作区后可Save
(保存)至FAVORITES
,收集的FAVORITES
会存盘在%userprofile%\AppData\Roaming\Code\User\globalStorage\alefragnani.project-manager\projects.json
。
刚安装时,点击「多重文件夹」图标;会提示Project Manager: Save Project
,打开另一个工作区后也是采用Save
保存Project
(工作区) 至FAVORITES
。- 在
Project
按下右键的功能 -
-
Edit Tags
(编辑标签),标签可在套件中设置 (Settings)。 -
Delete Project
(删除项目),将该项目移除。注:并不会删除工作区文件 (.code-workspace
)。
-
- 在
- Workspace Explorer
-
安装后会在
EXPLORER
中创建WORKSPACES
「分类项目」,该套件将「工作区」称为workspace
,WORKSPACES
中项目为实际的工作区文件。 工作区文件需要集中保存在 (由套件设置的)Workspace Storage Directory
文件夹,create sub-folder
功能是在前述的路径中创建子目录,右键功能rename
将工作区文件改名,Delete
为删除工作区文件。
问题集
- 上下文感知自动完成 (Context-aware intellisense)
-
Markdown 的「上下文感知」无作用,VSCode 默认值并不激活该功能。
打开「命令面板 (Command Palette)」搜索 Language Specific Settings,再选择 Markdown 则会进入 Settings 页面;选择器内容为
@lang:markdown
。
在 Settings 页面中选取 ,在 Editor: Quick Suggestions 的 others 项目改为 on。其他类型可如法泡制,如 AsciiDoc (在「设置 (Settings)」页面搜索
@lang:asciidoc
) 或 Plaintext (@lang:plaintext
) (注:Plaintext 为纯文本档如 .txt)。
- All Autocomplete
-
安装 Dictionary Completion 后,在 Markdown 文档中输入单字时能选取「字典」。
但 Plaintext (.txt 档) 却没有「字典」,检查
@lang:plaintext
的设置;Quick Suggestions
默认值已经将 other 设置为 on (就算把 other、comments、string 全部设为 on,也一样没有「字典」),解决方式是安装 All Autocomplete 。安装 All Autocomplete 后,在
Quick Suggestions
中可能会看到Incorrect type. Expected an object.
的消息,是因为本套件造成的。如@lang:plaintext
的Quick Suggestions
;未设置或Reset Setting
则会出现,但并不影响「上下文感知自动完成」的功能。
- AsciiDoc
-
在文本编辑器中的第一个字输入
/
(斜线) 时,会读取工作区内的根文档夹内的文件 (由网络流量来观察)。另外,CPU 使用率飙高,任务管理器中的Visual Studio Code
会有rg.exe
线程。注:本现像跟 Search Exclude 无关,已加入排除文件夹内所有文件 (**
)。VSCodeProcess Explorer
运行下列"c:\Users\user\AppData\Local\Programs\Microsoft VS Code\resources\app\node_modules.asar.unpacked\@vscode\ripgrep\bin\rg.exe" --files --hidden --case-sensitive -g **/*.adoc -g !**/.git -g !**/.svn -g !**/.hg -g !**/CVS -g !**/.DS_Store -g !**/Thumbs.db --no-ignore --no-config --no-ignore-global
「上下文感知自动完成 (Context-aware intellisense)」在激活
use_asciidoctor_js
时会失效 (但不激活时 「大纲 outline」无作用)。
解决方式是安装 All Autocomplete 并设置@lang:asciidoc
中的Quick Suggestions
将 other 设置为 on。