VS Code: 较为轻量的IDE
VS Code
基本功能介绍
VS Code是微软开发的开源的代码编辑器,支持Windows、MacOS、Linux等操作系统 其最显著的优点是轻量且快速,且得益于活跃的插件生态而支持多种编程语言 高度灵活的自定义配置也是其吸引我的一点- 左侧一栏为快捷的插件打开方式,包括资源管理器、项目管理器、扩展市场等
- 资源管理器:与其他
IDE类似,VS Code将一个项目当作一个工作区来管理,提供的快捷方式包括打开文件夹等 其它更多有关文件管理的功能在顶栏的“文件”中 - 项目管理器是图标为分叉的一项,它允许将项目绑定一个版本控制管理器,例如
Git或SVN,同时也支持绑定Github或其它远程仓库托管网站的账号 - 扩展市场:这是体现
VS Code丰富生态的地方
- 资源管理器:与其他
- 顶上一个搜索栏可以最重要的作用是通过键入一个
>,以快速搜索并调用插件的功能,之前所说的功能均可由搜索栏搜索得到 - 以上
UI的布局均可随意拖动,以及可以在右上方调整布局 - 配置:
VS Code将配置分为三级,默认配置、用户配置、工作区配置,默认配置存储于defaultSettings.json中,另外两者存储在同名文件settings.json中,所有均在首选项:打开XX配置(JSON)中,VS Code提供了UI界面帮助修改,但建议直接编辑json文件- 默认配置:
VS Code本身及其插件会提供一系列的配置项,插件维护者需要为每一个配置项提供默认值,用户下载该插件后则会登记在默认配置中 该文件是只读文件,无需在意 - 用户配置:用户配置是用户自定义的全局的配置,存放在本机用户家目录下,是最常改的配置文件,在用户定义后,它会覆盖默认配置,否则使用默认配置
- 工作区配置:存放在工作文件夹下自动生成的
./vscode/settings.json,它会覆盖所有上级配置,未定义的配置项使用用户配置
- 默认配置:
基本的配置
编辑器的基本配置(仅包括影响较大的可设置为非默认值的配置):
区分内联建议与快速建议:快速建议指的是由字典服务提供的键入值后在光标右侧显示的提示,内联建议指由内置
AI智能生成的代码补全 不建议使用内联建议不在提交字符时接受建议(建议即快速提示):
1
"editor.acceptSuggestionOnCommitCharacter": false
不在按下
Enter时接受建议:1
"editor.acceptSuggestionOnEnter": "off"
设置在保存代码时进行的动作:
1
2
3
4
5"editor.codeActionsOnSave": {
// 在显示保存时自动import所需包
"source.organizeImports": "explicit",
// 有其它source动作
}设置打开文件时不检测
tabSize与insertSpaces,即编辑器无法改变预设tab的空格数以及预设的是否用空格代替tab1
"editor.detectIndentation": false
设置保存文件时自动格式化(格式化程序需可用,通常分别设置格式化程序而在全局设置一次以下属性):
1
"editor.formatOnSave": true
设置键入
Tab键时写入\t而不是空格:1
"editor.insertSpaces": false
此外,如果要设置一个
\t的空格数以及一个缩进的空格数,可以设置editor.tabSize以及editor.indentSize设置接受快速建议时,替换右侧的代码:
1
"editor.suggest.insertMode": "replace"
设置在宽度不足时换行显示:
1
"editor.wordWrap": "on"
通过设置
"[xxx]"字典,可以设置专门适用于某种文件的配置,例如:1
2
3"[java]": {
"editor.defaultFormatter": "redhat.java"
}很常用的是对不同的文件配置不同的默认格式化程序
推荐插件
中文与颜色主题
Chinese (Simplified) (简体中文) Language Pack for Visual Studio Code:简体中文插件- 设置颜色主题:在左下齿轮图标中设置
主题>颜色主题,或通过搜索栏搜索>首选项: 颜色主题,第一项可以搜索查找本机没有的主体并自动下载对应的插件 - 推荐的主题(浅色党),安装对应的浅色主题插件后会有对应的暗色主题
Default Light Modern:VS Code的内置浅色主题Github Light:类Github风格Monokai Pro Light:偏灰色主题Falcon Light:比较护眼的主题,有青、绿、灰、粉、黄色Trae Light、Pure White、Solarized Light也是不错的主题- 其它主题可在https://vscodethemes.com/快速预览
Markdown
Markdown PDF:支持导出为PDF、HTML、图片、json等markdownlint:语法高亮与风格检测,同时提供更好用的格式化程序,通过以下配置来设置格式化程序、忽略部分警告:1
2
3
4
5
6
7
8"[markdown]": {
"editor.defaultFormatter": "DavidAnson.vscode-markdownlint",
},
"markdownlint.config": {
// 警告与错误提示
"default": true,
"MD033": false,
}Markdown Preview Enhanced:提供更好的预览,通过以下配置来支持行内LaTeX公式渲染:1
"markdown-preview-enhanced.mathRenderingOption": "MathJax"
Markdown Preview Mermaid Support:提供mermaid代码块的渲染GitHub Markdown Preview:使用Github的预览风格
C/C++
C/C++:C/C++ Runner:支持运行C/Cpp代码,包含以下配置:1
2
3
4
5
6// 额外包含的路径
"C_Cpp_Runner.includePaths": [
],
// C/Cpp标准
"C_Cpp_Runner.cStandard": "c17"
"C_Cpp_Runner.cppStandard": "c++17"clangdCMake与CMake Tools
Java
Extension Pack for Java- ?
Java Language Support Spring Boot Extension Pack
远程连接
Remote Development
数据库
Database Client
Vim
Vimsettings.json代替了vimrc配置:配置插入模式的快捷键,建议绑定
esc1
2
3
4
5
6
7
8
9
10
11"vim.insertModeKeyBindings": [
{
"before": [
"j",
"j"
],
"after": [
"<esc>"
]
}
]在插入模式下键入两次
j等价于键入esc配置在正常模式下的快捷键(例如将保存文件设置为
<leader>+s):1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20"vim.normalModeKeyBindingsNonRecursive": [
{
"before": [
"<leader>",
"s"
],
"commands": [
":w!"
]
},
{
"before": [
"<leader>",
"q"
],
"commands": [
":q!"
]
}
]配置
leader键为空格(默认为\):1
"vim.leader": "<space>",
LaTeX
LaTeX
Vue
Vue (Official)Vetur
Python
Python Extension PackBlack FormatterFlake8Jupyter
Rust
其它插件
GitHub Pull Requests:支持在VS Code中提PR与讨论Issue