版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/winter_wu_1998/article/details/85023845
必装插件
- Chinese language pack
- 支持中文
- C/C++
- 各种c,c++所需拓展,如dubug工具
- Code Runner
- 单独运行一个文件
- Include autocomplete
- 自动补全C++头文件
- Settings Sync
- 同步所有vscode配置
- shift+alt+U 上传配置
- shift+alt+D 下载配置
- TODO Highlight
- 高亮TODO注释
- Bracket Pair Colorizer
- 给括号涂色
- vscode-icons
- 使得vscode左边和各种图表易于分别
- project manager
- 管理项目
- VS Live Share
- 共享协作信息(精确到光标位置)
- One Dark Pro
- 一个比较出名的主题
- LaTeX workshop
- 编译LaTeX文件
- git history
- 查看git log信息
C\C++ 配置
-
下载 MinGW-w64编译器
- vscode本身只是一个文本编辑器,为了编译C、C++文件,需要自己下载编译器
- 注意在安装时勾选X86_64选项,默认为32位
-
将MinGW-w64添加入系统环境变量
- cmd+R运行sysdm.cpl任务进入系统属性界面
- 高级/环境变量/系统变量/Path,然后编辑
- 将mingw-w64的bin目录添加入环境变量
- 如:
C:\mingw-w64\mingw64\bin\
- 如:
- 重启电脑
-
配置四个.json文件
- 在想要存储所有代码的地方新建一个目录
- 然后再目录中再新建一个.vscode文件
- 在该目录中分别创建 launch.json, tasks.json, settings.json 和 c_cpp_properties.json四个文件
-
launch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "(gdb) Launch", // 配置名称,将会在启动配置的下拉菜单中显示
"type": "cppdbg", // 配置类型,这里只能为cppdbg
"request": "launch", // 请求配置类型,可以为launch(启动)或attach(附加)
"program": "${fileDirname}/${fileBasenameNoExtension}.exe", // 将要进行调试的程序的路径
"args": [], // 程序调试时传递给程序的命令行参数,一般设为空即可
"stopAtEntry": false, // 设为true时程序将暂停在程序入口处,我一般设置为true
"cwd": "${workspaceFolder}", // 调试程序时的工作目录
"environment": [], // (环境变量?)
"externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台
"internalConsoleOptions": "neverOpen", // 如果不设为neverOpen,调试时会跳到“调试控制台”选项卡,你应该不需要对gdb手动输命令吧?
"MIMode": "gdb", // 指定连接的调试器,可以为gdb或lldb。但目前lldb在windows下没有预编译好的版本。
"miDebuggerPath": "gdb.exe", // 调试器路径,Windows下后缀不能省略,Linux下则去掉
"setupCommands": [ // 用处未知,模板如此
{
"description": "Enable pretty-printing for gdb",
"text": "-enable-pretty-printing",
"ignoreFailures": false
}
],
"preLaunchTask": "Compile" // 调试会话开始前执行的任务,一般为编译程序。与tasks.json的label相对应
}
]
}
-
tasks.json
{ "version": "2.0.0", "tasks": [ { "label": "Compile", // 任务名称,与launch.json的preLaunchTask相对应 "command": "g++", // 要使用的编译器 "args": [ "${file}", "-o", // 指定输出文件名,不加该参数则默认输出a.exe,Linux下默认a.out "${fileDirname}/${fileBasenameNoExtension}.exe", "-g", // 生成和调试有关的信息 "-Wall", // 开启额外警告 "-static-libgcc", // 静态链接 "-std=c++11" // C语言最新标准为c11,或根据自己的需要进行修改 ], // 编译命令参数 "type": "process", // 可以为shell或process,前者相当于先打开shell再输入命令,后者是直接运行命令 //选择shell不知为何会有问题 "group": { "kind": "build", "isDefault": true // 设为false可做到一个tasks.json配置多个编译指令,需要自己修改本文件,我这里不多提 }, "presentation": { "echo": true, "reveal": "always", // 在“终端”中显示编译信息的策略,可以为always,silent,never。具体参见VSC的文档 "focus": false, // 设为true后可以使执行task时焦点聚集在终端,但对编译c和c++来说,设为true没有意义 "panel": "shared" // 不同的文件的编译信息共享一个终端面板 }, "problemMatcher": { "owner": "cpp", "fileLocation": [ "relative", "\\" ], "pattern": { "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$", "file": 1, "line": 2, "column": 3, "severity": 4, "message": 5 } } } ] }
-
settings.json
- 该文件有问题
{
"window.zoomLevel": 1,
"editor.snippetSuggestions": "top",
"editor.minimap.renderCharacters": false,
"editor.formatOnPaste": true,
"editor.formatOnType": true,
"editor.wordWrap": "on",
"C_Cpp.clang_format_sortIncludes": true,
"[cpp]": {
"editor.quickSuggestions": true
},
"[c]": {
"editor.quickSuggestions": true
},
"problems.decorations.enabled": true,
"C_Cpp.intelliSenseEngineFallback": "Enabled",
"files.associations": {
"*.cfg": "ini",
"*.fsh": "glsl",
"stack": "cpp",
"iostream": "cpp",
"ostream": "cpp",
"*.tcc": "cpp",
"cctype": "cpp",
"clocale": "cpp",
"cmath": "cpp",
"cstdint": "cpp",
"cstdio": "cpp",
"cstdlib": "cpp",
"cwchar": "cpp",
"cwctype": "cpp",
"exception": "cpp",
"initializer_list": "cpp",
"iosfwd": "cpp",
"istream": "cpp",
"limits": "cpp",
"new": "cpp",
"stdexcept": "cpp",
"streambuf": "cpp",
"system_error": "cpp",
"type_traits": "cpp",
"typeinfo": "cpp",
"utility": "cpp"
}
}
- c_cpp_properties.json
- compilerPath选项必须是完整路径
- C是gcc.exe,C++是g++.exe
{
"configurations": [
{
"name": "MinGW",
"intelliSenseMode": "clang-x64",
"compilerPath": "C:/mingw-w64/mingw64/bin/g++.exe",
"includePath": [
"${workspaceFolder}"
],
"defines": [],
"browse": {
"path": [
"${workspaceFolder}"
],
"limitSymbolsToIncludedHeaders": true,
"databaseFilename": ""
},
"cStandard": "c11",
"cppStandard": "c++11"
}
],
"version": 4
}
LaTeX配置
-
首先要安装 Tex Live
- 下载**.iso**文件
- 右键 install-tl-advanced.bat,以管理员身份运行
- 和前面一样,也要写入环境变量
- 如
C:\texlive\2017\bin\win32
- 如
-
在vscode中安装 LaTex Workshop 拓展
-
然后我们调整用户设置
-
vscode默认的编译器是pdflatex和latexmk,而我更喜欢用自动支持中文的xelatex,于是我在设置中将其设置为默认编译器
-
默认为直接xelatex编译一次就好,但是当设计到引用文件的时候就要 xe->bib->xe->xe 四次编译才行,当然我一般不加引用文件
-
更多的配置我在下面的代码中已经注释好了,将其加入全局用户设置就好了
"latex-workshop.latex.tools": [ { // 编译工具和命令 "name": "xelatex", "command": "xelatex", "args": [ "-synctex=1", "-interaction=nonstopmode", "-file-line-error", "%DOC%" ] }, { "name": "bibtex", "command": "bibtex", "args": [ "%DOCFILE%" ] } ], "latex-workshop.latex.recipes": [ //默认编译方式 { "name": "xelatex", "tools": [ "xelatex" ] }, { "name": "xe->bib->xe->xe", "tools": [ "xelatex", "bibtex", "xelatex", "xelatex" ] } ], //禁止保存时自动编译 "latex-workshop.latex.autoBuild.onSave.enabled": false, //默认内置查看器 "latex-workshop.view.pdf.viewer": "tab", //是否删除临时文件 "latex-workshop.latex.clean.enabled": false, //右键菜单 "latex-workshop.showContextMenu": true,
-
-
右键 build LaTeX project 执行默认编译选项
- 或者可以点击左下角的对勾符号选择编译方式
-
右上角执行默认预览
- 或者可以点击左下角的对勾符号选择预览方式
-
右键 synctex with cursor 由代码跳转到PDF内容,预览器中Ctrl+鼠标左键由内容跳转到代码
- 或者可以使用Ctrl+alt+J 快捷键由代码到内容
-
注意路径一定是全英文且无空格和引号的!
Git配置
- vscode自带git工具
- 添加 gitLens 插件获得更好的体验
- 可以将vscode作为sourcetree外部比较器和合并器