1 Star 0 Fork 11

coder_lw / wiki

forked from deepinwiki / wiki 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
vscode编辑器.md 9.72 KB
一键复制 编辑 原始数据 按行查看 历史

vscode 编辑器

前言

vs code 是干嘛的?这是一个跨平台的现代编辑器,它依赖于命令行和插件来组成一个完整的工作环境。默认状态是一个功能强大,性能卓越的编辑器。因为不同插件会提供不同的工作环境,所以很难说vscode可以用来干什么,只要你愿意,和有人提供插件,它的能力是无限增长的。

一、现有能力范围

  1. c++、c#、go、java、python、markdown、javascript、TypeScript、php等
  2. 编程、文档、博客等
  3. 编程主要是js web等前端开发,但是我也见过有人拿来做嵌入式开发

二、安装

sudo apt install code

2.1 node.js

node.js 是一个本地运行js的工具(而非浏览器上),这套工具实际上就是vscode的基础。vscode向程序员展示了用js和web技术可以构建符合现代标准的应用程序。如果你要深入了解vscode,就应该了解一下node.js。

2.2 默认编辑器

xdg-mime default code.desktop text/plain #将vscode设置为默认的文本编辑器

sudo update-alternatives --set editor /usr/bin/code # 设置系统默认编辑器editor 为vscode

2.3 常用组件

  1. 内置基本的js /ts 语言服务
  2. git :一个分布式文档版本管理系统
  3. node.js : 跨平台的本地js运行时
  4. c/c++ : c++和c的基本支持,不含编译和调试
  5. chinese : 中文界面语言包
  6. vetur : 一个流行的前端工具vue的工具
  7. gulp : 一个任务配置工具
  8. npm : node.js的程序包管理工具
  9. 自行安装的各种命令行sdk

三、配置c、c++ 环境

3.1 基本流程

  1. 安装插件:c/c++ ,就有代码的提示功能
  2. 安装一个编译器和调试器
  3. 配置好构建任务等自动化工具

我已经下载了一个叫llvm的编译器,路径为:file:///home/htqxw/apps/clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-18.04/bin/clang

配置方法:

一、ctrl + shift + p :打开对话命令,输入c/c++编辑配置json,就会出来一个模板,保存为.vscode/目录下的c_cpp_properties.json。内容修改为clang编辑器:

{
    "configurations": [
        {
            "name": "Linux",
            "includePath": [
                "${workspaceFolder}/**"
            ],
            "defines": [],
            "compilerPath": "/home/htqxw/apps/clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-18.04/bin/clang",
            "cStandard": "c11",
            "cppStandard": "c++17",
            "intelliSenseMode": "clang-x64"
        }
    ],
    "version": 4
}

二、同样的方法,创建任务配置,输入tasks conf task生成一个通用任务模板,tasks.json,修改命令、参数、任务组:

{
    // See https://go.microsoft.com/fwlink/?LinkId=733558
    // for the documentation about the tasks.json format
    "version": "2.0.0",
    "tasks": [
        {
            "label": "build with clang",
            "type": "shell",
            "command": "/home/htqxw/apps/clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-18.04/bin/clang++",
            "args": [
                "-std=c++17",
                "-stdlib=libc++",
                "hello.cpp",
                "-o",
                "helloworld.out",
                "--debug"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            }
        }
    ]
}

其中hello.cpp是程序文件,helloworld.out是编译后输出的程序。

三、同样的方法,创建调试配置,输入launch,创建launch.json :

{
    // 使用 IntelliSense 了解相关属性。
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "(gdb) Launch",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/helloworld.out",
            "args": [],
            "stopAtEntry": true,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": true,
            "MIMode": "gdb",
            "logging": {
                "trace": true,
                "traceResponse": true,
                "engineLogging": true
            }
        }
    ]
}

系统默认已经安装好gdb调试器,所以就用这个也可以(因为llvm并默认没有带lldb调试器,要另外下载)。调试的目标就是helloworld.out程序。

3.2 存在的问题

llvm是单独下载的编译器,它里面自带了很多lib,用它编译,就要将lib添加到系统里面,否则系统找不到这些动态dll,运行报错:

sudo nano /etc/ld.so.conf

添加llvm 自带的lib目录:

/home/htqxw/apps/clang+llvm-8.0.0-x86_64-linux-gnu-ubuntu-18.04/lib

更新系统链接lib:

sudo ldconfig -v

3.3 后续

vscode 里面有个终端,可以在里面输入./helloworld.out 执行程序。用f5 调试程序。用ctrl+shift+b 编译程序。

调试面板

四、使用技巧

4.1 主题

  1. ctrl + k ctrl+ t 选择主题
  2. workbench.colorCustomizsations 工作区颜色配置
  3. editor.tokenColorCustomizations 编辑器颜色配置
  4. 命令:developer:generate color theme from current settings 保存自定义主题
  5. 命令:preferences:file icon theme 选择图标

4.2 用户和工作区配置

用户设置是改变当前账户的全局设置,而工作区指的是当前项目。

  1. 命令: open user setting 打开用户设置
  2. 命令: open workspace setting 打开工作区设置
  3. settings.json 用户配置 ~/.config/Code/User/settings.json
  4. workbench.settings.editor 工作区配置
  5. 命令: preferences: configure language specifics settings 特定语言配置

4.3 界面语言

  1. 命令: display language

五、快捷键

基本编辑

  1. ctrl + x :剪切
  2. ctrl + c :复制
  3. ctrl + shift + k : 删除
  4. ctrl + Enter : 下面插入一行
  5. ctrl + shift + enter : 上面插入一行
  6. alt + up : 向上移动当前行
  7. ctrl + shift + alt + up : 向上复制当前
  8. ctrl + [:减少缩进
  9. ctrl + shift + \ : 括号跳动
  10. home : 行首
  11. end : 行尾
  12. ctrl + home : 文首
  13. ctrl + end : 文尾
  14. ctrl + up : 向上滚动
  15. ctrl + shift + [: 折叠区域
  16. ctrl + / : 行注释
  17. ctrl + shift + a :块注释
  18. ctrl + f : 查找
    1. f3 下一个,
    2. shift + f3 上一个,
    3. alt + enter 选择所有匹配,
    4. alt+c切换大小写,
    5. alt+r 切换正则,
    6. alt+w切换单词模式
  19. ctrl + h : 替换

光标操作

  1. shift + Left : 选取左字
  2. shift + alt + down : 向下垂直增加光标
  3. ctrl + d : 选取下一个匹配项,并产生一个新的光标
  4. ctrl + shift + L : 选择当前文本的相同处添加光标
  5. alt + shift + right : 扩展选择范围
  6. ctrl + u : 回退选择范围
  7. shift + alt + 鼠标拖动 : 垂直选取

语言增强

  1. ctrl + space : 提示
  2. ctrl + i : 建议
  3. ctrl + shift + sapce :函数参数提示
  4. ctrl + shift + i : 自动排版
  5. ctrl + k ctrl + f: 自动排版选取的区域
  6. f12 : 跳到定义
  7. ctrl + k ctrl + i : 显示悬停信息
  8. ctrl + shift + f10 : 窥视定义
  9. shift + f12 : 窥视声明
  10. ctrl + k F12 : 打开定义到侧边
  11. ctrl + . :快速解决
  12. f2 : 重命名
  13. ctrl + shift + < : 替换为下一个值
  14. ctrl + < : 替换为之前的值
  15. shift + alt + left : 收缩AST
  16. ctrl + k ctrl + x : 修剪尾随空格

跳转

  1. ctrl + t :跳到工作区某处
  2. ctrl + g : 跳到某行
  3. ctrl + p : 跳到某文件
  4. ctrl + shift + o : 跳到某符号
  5. ctrl + shift + m : 显示问题
  6. f8 : 跳到下一个错误或警告
  7. ctrl + shift + tab : 导航编辑器组历史记录
  8. ctrl + alt + - : 跳回上一处
  9. ctrl + shift + - : 跳到下一处

面板切换

  1. ctrl + b : 左侧栏切换
  2. ctrl + shift + e: 资源管理器
  3. ctrl + shift + f : 搜索面板
  4. ctrl + shift + g : 源代码管理器
  5. ctrl + shift + d : 调试面板
    1. f5 : 开始调试、继续
    2. f9 : 切换断点
    3. ctrl + f5 : 启动(非调试)
    4. f6 : 暂停
    5. f11 : 步入
    6. shift + f11 : 跳出
    7. f10 : 跳过
    8. shift + f5 :停止
    9. ctrl + k ctrl + i: 显示悬停
    10. ctrl + shift + b : 执行构建任务
  6. ctrl + shift + x : 扩展面板
  7. ctrl + shift + m : 问题面板
  8. ctrl + k ctrl + h :输出面板
  9. ctrl + ` : 终端面板

杂项

  1. ctrl + shift + n : 新窗口
  2. ctrl + shift + w : 关闭窗口
  3. ctrl + w : 关闭编辑器
  4. ctrl + kf : 关闭文件夹
  5. ctrl + \ : 拆分编辑器
  6. crtl + 1 : 跳转到第一个编辑器组
  7. ctrl + n : 新文件
  8. ctrl + o : 打开文件
  9. ctrl + s : 保存文件
  10. ctrl + shift + s : 另存文件
  11. ctrl + tab : 跳转到下一个编辑器
  12. f11 : 全屏
  13. ctrl + = : 放大
  14. ctrl + - : 缩小
  15. ctrl + k v : 预览
  16. ctrl + , : 设置面板
  17. ctrl + shift + p : 命令输入面板

六、配置

调试配置

.vscode/launch.json

调试模式:

  1. launch
  2. attach

属性:

  1. type : 调试器类型
  2. request : launch 或 attach
  3. name : 自定义名字
  4. preLaunchTask : 前置任务
  5. postDebugTask : 后置任务
  6. program : 启动程序
  7. args : 启动参数
  8. env : 环境变量
  9. cwd : 当前工作目录
  10. port : 进程端口
  11. stopOnEntry : 自动暂停
  12. console : 终端类型
  13. linux : 特定系统的配置
  14. configurations :多配置
  15. compounds : 复合多配置启动

变量:

  1. workspaceFolder : 工作区根路径
  2. file : 活动文件

参考

  1. vscode官方文档: https://code.visualstudio.com/docs/setup/setup-overview
1
https://gitee.com/coder_lw/wiki.git
git@gitee.com:coder_lw/wiki.git
coder_lw
wiki
wiki
master

搜索帮助