我的vscode配置过程

在terminal/iterm2中快速打开vscode

  • 打开vscode命令面板,搜索Shell, 选择在 PATH 中安装 “Code” 命令
  • 在terminal/iterm2的项目目录执行code即可打开vscode
    • 使用code -r复用当前窗口
    • 使用code -g <file:line> 打开文件,然后滚动到文件中某个特定的行
    • 使用code -d <file1> <file2>比较两个文件
    • 使用 <command> | code -在vscode中显示管道内容

常用插件

  • Chinese language pack

    • 支持中文
  • Code Runner

    • 单独运行一个文件
  • Settings Sync

    • 同步所有vscode配置
    • shift+alt+U 上传配置
    • shift+alt+D 下载配置
  • gitLens

    • 查看git的commit,文件等信息
  • remote

    • 远程编译和debug
    • 支持SSH,WSL,Docker
    • TODO Highlight
    • 高亮TODO注释
  • Bracket Pair Colorizer

    • 给括号涂色
  • TabOut

    • TAB跳出括号
  • shell-format

    • 格式化shell, dockerfile等文件
  • VS Live Share

    • 共享协作信息(精确到光标位置)
  • REST client

    • 类似Postman
  • Docker

    • 查看本地的容器,镜像,数据卷等信息

变量

  • ${workspaceFolder}
    • 工作区目录
  • {fileBasename}
    • 当前文件的文件名
  • {fileBasenameNoExtension}
    • 当前文件的文件名,不带后缀
  • ${file}
    • 当前打开正在编辑的文件名,包括绝对路径,文件名,文件后缀名
  • ${fileDirname}
    • 文件所在的文件夹路径
  • ${env:PATH}
    • 系统中的环境变量

参考:https://code.visualstudio.com/docs/editor/variables-reference

断点

  • 右键断点可以设置额外属性
    • Hit count
      • 运行多少次后才中断
    • Expression condition
      • 条件为真才中断

配置文件

  • settings.json

    • User Settings作用于全局
    • Workspace Settings作用于工作区
  • launch.json

    • 用来配置debugger
    • 字段含义
      • preLaunchTask
        • 在运行debugger之前,按照tasks.json配置属性
      • args
        • 命令行参数
      • stopOnEntry
        • 自动停止在程序开始处
      • program
        • 程序运行的路径
        • 可用上文的变量配置
    • 可根据所处平台自动调用不同配置
      • "osx"代指mac平台
    "args": ["myFolder/path/app.js"],
    "windows": {
        "args": ["myFolder\\path\\app.js"]
    }
    
  • tasks.json

    • 用来配置编译命令
    • 可根据所处平台自动调用不同配置

通用配置

	// 主题
    "workbench.colorTheme": "One Dark Pro",
    "workbench.iconTheme": "vscode-icons",
    "window.zoomLevel": 0,
    "debug.console.fontSize": 18,
    // 终端
    "terminal.integrated.fontSize": 18,
    "terminal.integrated.shell.windows": "C:\\Program Files\\Git\\bin\\bash.exe",
    // 同步vscode配置
    "sync.gist": "XXXXX",
    "sync.autoUpload": true,
    // 文件
    "files.autoSave": "afterDelay",
    "files.trimTrailingWhitespace": true,
    "explorer.confirmDragAndDrop": false,
    "explorer.confirmDelete": false,
    // 编辑器
    "editor.fontSize": 20,
    "editor.formatOnSave": true,
    "editor.autoIndent": false,
    "editor.suggestSelection": "first",
    "editor.formatOnPaste": true,
    "editor.formatOnSave": true,
    "editor.wordWrap": "on",
    "editor.codeActionsOnSave": {
        "source.organizeImports": true
    },
    // git
    "git.confirmSync": false,
    "git.autofetch": true,
    "diffEditor.ignoreTrimWhitespace": true,

Go

settings.json

	 "[go]": {
        "editor.defaultFormatter": "ms-vscode.Go",
    },

    "go.gotoSymbol.includeGoroot": true,
    "go.gotoSymbol.includeImports": true,
    "go.installDependenciesWhenBuilding": true,
    "go.buildOnSave": "off",
    "go.buildFlags": [],
    "go.buildTags": "",
    "go.coverOnSingleTest": true,
    "go.useCodeSnippetsOnFunctionSuggest": true,
    "go.useCodeSnippetsOnFunctionSuggestWithoutType": true,
    "go.autocompleteUnimportedPackages": true,
    "go.docsTool": "guru",
    "go.formatTool": "goimports",
    "go.formatFlags": [],
    "go.lintTool": "golangci-lint",
    "go.lintOnSave": "package",
    "go.lintFlags": [
        "--fast"
    ],
    "go.vetFlags": [],
    "go.vetOnSave": "package",
    "go.generateTestsFlags": [],
    "go.liveErrors": {
        "enabled": true,
        "delay": 500
    },
    "go.gocodePackageLookupMode": "go",
    "go.gocodeAutoBuild": true,
    "go.gocodeFlags": [
        "-builtin",
        "-ignore-case",
        "-unimported-packages"
    ],
    "go.enableCodeLens": {
        "references": true,
        "runtest": true
    },
    "go.delveConfig": {
        "dlvLoadConfig": {
            "followPointers": true,
            "maxVariableRecurse": 1,
            "maxStringLen": 64,
            "maxArrayValues": 64,
            "maxStructFields": -1
        },
        "apiVersion": 2,
        "showGlobalVariables": true
    },
    "go.editorContextMenuCommands": {
        "toggleTestFile": true,
        "addTags": true,
        "removeTags": true,
        "testAtCursor": true,
        "testFile": true,
        "testPackage": true,
        "generateTestForFunction": true,
        "generateTestForFile": true,
        "generateTestForPackage": true,
        "addImport": true,
        "testCoverage": true,
        "playground": true,
        "debugTestAtCursor": true
    },
    "go.playground": {
        "openbrowser": false,
        "share": false,
        "run": false
    },
    "go.addTags": {
        "tags": "json",
        "options": "json=omitempty",
        "promptForTags": true,
        "transform": "snakecase"
    },
    "go.removeTags": {
        "tags": "",
        "options": "",
        "promptForTags": false
    }
    

C/C++

用VScode来编写C / C ++代码

launch.json

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) Launch", // 配置名称,将会在启动配置的下拉菜单中显示
            "type": "cppdbg", // 配置类型,这里只能为cppdbg
            "request": "launch", // 请求配置类型,可以为launch(启动)或attach(附加)
            "program": "${fileDirname}/${fileBasenameNoExtension}", // 将要进行调试的程序的路径
            "args": [], // 程序调试时传递给程序的命令行参数,一般设为空即可
            "stopAtEntry": false, // 设为true时程序将暂停在程序入口处,我一般设置为true
            "cwd": "${workspaceFolder}", // 调试程序时的工作目录
            "environment": [], // 环境变量
            "externalConsole": true, // 调试时是否显示控制台窗口,一般设置为true显示控制台
            "internalConsoleOptions": "neverOpen", // 如果不设为neverOpen,调试时会跳到“调试控制台”选项卡,你应该不需要对gdb手动输命令吧?
            "MIMode": "gdb", // 指定连接的调试器,可以为gdb或lldb。但目前lldb在windows下没有预编译好的版本。
            "miDebuggerPath": "gdb", // 调试器路径,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": "/usr/bin/g++", // 要使用的编译器
            "args": [
                "-Wall", // 开启额外警告
                //"-static-libgcc", // 静态链接
                "-std=c++11", // C语言最新标准为c11,或根据自己的需要进行修改
                "-g", // 生成和调试有关的信息
                "${file}",
                "-o", // 指定输出文件名,不加该参数则默认输出a.exe,Linux下默认a.out
                "${fileDirname}/${fileBasenameNoExtension}"
            ], // 编译命令参数
            "type": "shell", // 可以为shell或process,前者相当于先打开shell再输入命令,后者是直接运行命令
            // 以下命令非必须,可删
            // "group": {
            //     "kind": "build",
            //     "isDefault": true // 设为false可做到一个tasks.json配置多个编译指令,需要自己修改本文件,我这里不多提
            // },
            // // https://code.visualstudio.com/docs/editor/tasks#_output-behavior
            // "presentation": {
            //     "echo": true,
            //     "reveal": "always", // 在“终端”中显示编译信息的策略,可以为always,silent,never。具体参见VSC的文档
            //     "focus": false, // 设为true后可以使执行task时焦点聚集在终端,但对编译c和c++来说,设为true没有意义
            //     "panel": "shared" // 不同的文件的编译信息共享一个终端面板
            // },
            // // https://code.visualstudio.com/docs/editor/tasks#_processing-task-output-with-problem-matchers
            // "problemMatcher": {
            //     "owner": "cpp",
            //     "fileLocation": [
            //         "relative",
            //         "\\"
            //     ],
            //     "pattern": {
            //         "regexp": "^(.*):(\\d+):(\\d+):\\s+(warning|error):\\s+(.*)$",
            //         "file": 1,
            //         "line": 2,
            //         "column": 3,
            //         "severity": 4,
            //         "message": 5
            //     }
            // }
        }
    ]
}

c_cpp_properties.json

// windows下
{
    "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
}

// linux下
{
    "configurations": [
        {
            "name": "Linux",
            "includePath": [
                "${workspaceFolder}/**"
            ],
            "defines": [],
            "compilerPath": "/usr/bin/g++",
            "cStandard": "c11",
            "cppStandard": "c++11",
            "intelliSenseMode": "clang-x64"
        }
    ],
    "version": 4
}

Git比较

  • 可以将vscode作为sourcetree外部比较器和合并器

在这里插入图片描述

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 快捷键由代码到内容
  • 注意路径一定是全英文且无空格和引号的!

更多自定义配置

关联WSL

将用户设置中terminal.integrated.shell.windows项的路径修改为 C:\Windows\System32\wsl.exe
即:

"terminal.integrated.shell.windows": "C:\\Windows\\System32\\wsl.exe",

此时默认的终端即为ubuntu了

修改键盘映射

因为键盘的方向键举例字母区太远,所以决定通过alt+jkl;来映射方向键

  • 打开左下角的键盘快捷方式
  • 打开右上角{}图标编辑json文件
  • 把下面的代码复制到keybindings.json文件中
// 将密钥绑定放在此文件中以覆盖默认值
[
    {
    "key": "alt+j",
    "command": "cursorLeft"
    },
    {
    "key": "alt+k",
    "command": "cursorUp"
    },
    {
    "key": "alt+l",
    "command": "cursorDown"
    },
    {
    "key": "alt+;",
    "command": "cursorRight"
    }
]

在文件资源管理器中不显示exe文件

在设置中搜索files.exclude项,并添加"**/*.exe":true

  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
本套课程系大喵在**2020年****录制课程,大喵将带着大家使用vscode这款轻量级编辑器神器,快速上手Python高效开发、调试及单元测试的插件扩展和 VSCode IDE环境配置;什么是 vscode 编辑器?Visual Studio Code(以下简称vscode)是一个轻量且强大的跨平台开源代码编辑器(IDE),支持Windows,Mac OS X和Linux。内置JavaScript、TypeScript和Node.js支持,而且拥有丰富的插件生态系统,可通过插件面板来方便快捷的安装插件来支持javascript、C++、C#、Python、PHP等其他语言。什么是 python ?Python,它是一门编程语言,截止到目前python已经广泛应用在:无人驾驶、个人助理、金融、电商、医疗、教育等各大领域。尤其是在 Web开发、自动化运维与测试、游戏服务器开发方面有着先天的优势。目前许多大型网站就是用Python开发的,例如YouTube、Instagram,还有国内的豆瓣。很多大公司,包括Google、Yahoo等,甚至NASA(美国航空航天局)都大量地使用Python。VSCode + PythonVSCode毫无疑问是一款非常优秀的IDE,而Python则无疑是一门使用领域相当广泛,非常强大的高级语言;那我们如何把这两者结合起来,用**美的IDE编写最棒的语言,优雅与**,强强结合,气冲入虹,势不可挡。课程内容主要包括:01. 课程内容介绍02. VSCode IDE 介绍03. 为什么推荐使用 VSCode IDE 04. Python 语言基础介绍 05. 为什么选择 Python 语言06. VSCode和Python 强强联手07. 课程插件扩展介绍08. Python扩展安装及介绍09. Python扩展代码测试10. AREPL安装和介绍11. AREPL for Python 特点介绍12. AREPL 代码功能测试13. autoDocstring 安装和介绍14. autoDocstring 代码测试使用15. python test explorer 安装和介绍16. Python pytest 测试和使用
对于配置JavaWeb开发环境,使用VSCode是一个很好的选择。首先,你需要确保你的电脑上已经安装了Java Development Kit(JDK)和Tomcat服务器。然后,你可以按照以下步骤在VSCode配置JavaWeb开发环境: 1. 安装Java插件:打开VSCode,点击左侧的扩展图标,搜索并安装Java插件。这个插件提供了对Java语言的支持和调试功能。 2. 配置JDK路径:打开VSCode的设置,搜索Java配置项,找到Java: Home,将其设置为你电脑上JDK的安装路径。 3. 创建JavaWeb项目:使用VSCode的终端命令或者在命令行中创建一个空的JavaWeb项目。 4. 配置Tomcat服务器:打开Tomcat的安装目录,找到conf文件夹中的server.xml文件,在其中修改端口号等配置信息。你可以根据需要修改该文件,但是使用默认配置也是可以的。 5. 编写代码:在VSCode中打开JavaWeb项目,添加你需要的Java文件和Web页面文件。 6. 启动Tomcat服务器:在VSCode的终端命令或者命令行中,进入Tomcat的bin目录,运行startup.bat(Windows)或startup.sh(Linux)启动Tomcat服务器。 7. 运行项目:在VSCode中点击调试按钮,选择Java Web Application启动配置,然后点击运行按钮,你的JavaWeb项目将会在Tomcat服务器上运行起来。 在配置JavaWeb开发环境的过程中,可以参考CSDN或者其他博客上的教程,但要注意插件Tomcat for Java可能已经不可用了。另外,如果你想修改localhost和8080端口,需要注意前者需要修改系统底层文件,而后者可以通过修改Tomcat的server.xml文件来实现。但是实际上,默认的配置已经足够使用了,如果没有特殊需求,可以直接使用默认配置。总的来说,使用VSCode配置JavaWeb开发环境是一个方便且功能全面的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值