我的vscode配置过程

版权声明:本文为博主原创文章,未经博主允许不得转载。 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.jsonc_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默认的编译器是pdflatexlatexmk,而我更喜欢用自动支持中文的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外部比较器和合并器

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/winter_wu_1998/article/details/85023845