热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

vscode使用技巧

vscode是微软推出的一款开源免费的代码编辑器,可运行在Windows,Linux,MacOS平台,官方下载地址如下:https:code.visualstudio.com如果系

vs code是微软推出的一款开源免费的代码编辑器,可运行在Windows,Linux,MacOS平台,官方下载地址如下:

https://code.visualstudio.com/

如果系统版本比较旧(如Ubuntu 16),安装新版本vs code可能会出现出现一些问题,可以在下面链接下载旧版本:

https://code.visualstudio.com/updates

1,安装插件

安装插件可以提高效率,可以参考我的安装:c/c++,python,DeviceTree,Makefile Tools,CMake。

2,快捷键

以Windows下为例:



  • Ctrl + 鼠标左键单击:跳转代码;

  • Alt + 左箭头:后退(返回跳转);

  • Alt + 右箭头:前进(进入跳转);

  • Alt + 上箭头:整行上移;

  • Alt + 下箭头:整行下移;

  • Alt + Shift + 上箭头:整行向上复制;

  • Alt + Shift + 下箭头:整行向下复制;

  • Shift + Del:剪切当前行(也可当作删除整行使用);

  • Ctrl + A && Ctrl + K && Ctrl + F:格式化全选代码;

  • Ctrl + K && Ctrl + T:切换主题;

  • Ctrl + P:搜索文件;

  • Ctrl + G:跳转到行;

  • Ctrl + F:文件内搜索/替换;

  • Ctrl + Shift + F:全局搜索关键字(折叠选项里可筛选搜索文件的范围,类型,及是否替换关键字);

  • 如果安装了c/c++这个插件,那么多行注释可以这样写: 先输入双引号内的字符"/***/",然后光标定位到倒数第一个"*"号之前,按下回车即可多行注释,范围内每一个回车自动新增注释一行;

  • 目录树栏有个OUTLINE(中文名叫大纲),可以查看函数目录;

3,内容定制

vs code面对大型代码工程时,在使用默认配置下,全局搜索和代码管理的效率非常低,我们需要调整配置,提高我们搜索和查看本地代码的效率,我们以Linux内核源码为例,在编译内核源码后,会产生大量的"*.o"的文件,这在全局搜索代码时,会拖慢我们找到代码的效率,除此之外,像"*.txt","*.md","*.rst"等文件,搜索时甚至大多数浏览代码时也不需要,我们就把它们屏蔽掉,下面是我针对全志一款芯片调整的Linux内核工程的vs code设置,首先在Linux内核根目录新建一个".vscode",(注意前面的逗点),在这个目录里新建两个json配置文件:c_cpp_properties.json和settings.json,分别写入如下内容:

c_cpp_properties.json

1 {
2 "configurations": [
3 {
4 "name": "Linux",
5 "includePath": [
6 "${workspaceFolder}/**",
7 "${workspaceFolder}/include/**",
8 "${workspaceFolder}/arch/arm/include/**"
9 ],
10 "intelliSenseMode": "linux-gcc-x64",
11 "compilerPath": "",
12 "cStandard": "c17",
13 "cppStandard": "c++17",
14 "configurationProvider": "ms-vscode.makefile-tools"
15 }
16 ],
17 "version": 4
18 }

settings.json

1 {
2 "search.exclude": {
3 "**/node_modules": true,
4 "**/bower_components": true,
5 "**/*.o":true,
6 "**/*.su":true,
7 "**/*.cmd":true,
8 "**/*.ko":true,
9 "**/*.dtb":true,
10 "**/*.log":true,
11 "**/*.txt":true,
12 "**/*.md":true,
13 "**/*.rst":true,
14 "**/*.git":true,
15 "**/*.gitignore":true,
16 "**/*.map":true,
17 "**/*.py":true,
18 "**/*.sh":true,
19 "**/*.so":true,
20 "**/*.a":true,
21 "**/*.in":true,
22 "**/*.scr":true,
23 "Documentation":true,
24 "LICENSES":true,
25
26 /* 屏蔽不用的架构相关的文件 */
27 "arch/alpha":true,
28 "arch/arc":true,
29 "arch/arm64":true,
30 "arch/avr32":true,
31 "arch/[b-z]*":true,
32 "arch/arm/plat*":true,
33 "arch/arm/mach-[a-r]*":true,
34 "arch/arm/mach-[t-z]*":true,
35 "arch/arm/mach-s3c*":true,
36 "arch/arm/mach-s5p*":true,
37 "arch/arm/mach-s[a-t]*":true,
38
39 /* 屏蔽排除不用的配置文件 */
40 "arch/arm/configs/[a-r]*":true,
41 "arch/arm/configs/[t-z]*":true,
42 "arch/arm/configs/s3c*":true,
43 "arch/arm/configs/s5p*":true,
44 "arch/arm/configs/s[a-t]*":true,
45
46 /* 屏蔽掉不用的DTB文件 */
47 "arch/arm/boot/dts/[a-r]*":true,
48 "arch/arm/boot/dts/[t-z]*":true,
49 "arch/arm/boot/dts/s3c*":true,
50 "arch/arm/boot/dts/s5pv*":true,
51 "arch/arm/boot/dts/sam*":true,
52 "arch/arm/boot/dts/sd*":true,
53 "arch/arm/boot/dts/sh*":true,
54 "arch/arm/boot/dts/soc*":true,
55 "arch/arm/boot/dts/spear*":true,
56 "arch/arm/boot/dts/st*":true,
57 "arch/arm/boot/dts/*.tmp":true,
58 },
59 "files.exclude": {
60 "**/.git": true,
61 "**/.svn": true,
62 "**/.hg": true,
63 "**/CVS": true,
64 "**/.DS_Store": true,
65 "**/*.o":true,
66 "**/*.su":true,
67 "**/*.cmd":true,
68 "**/*.ko":true,
69 "**/*.dtb":true,
70 "**/*.log":true,
71 "**/*.txt":true,
72 "**/*.md":true,
73 "**/*.rst":true,
74 "**/*.git":true,
75 "**/*.gitignore":true,
76 "**/*.map":true,
77 "**/*.so":true,
78 "**/*.a":true,
79 "**/*.scr":true,
80 "Documentation":true,
81 "LICENSES":true,
82
83 /* 屏蔽不用的架构相关的文件 */
84 "arch/alpha":true,
85 "arch/arc":true,
86 "arch/arm64":true,
87 "arch/avr32":true,
88 "arch/[b-z]*":true,
89 "arch/arm/plat*":true,
90 "arch/arm/mach-[a-r]*":true,
91 "arch/arm/mach-[t-z]*":true,
92 "arch/arm/mach-s3c*":true,
93 "arch/arm/mach-s5p*":true,
94 "arch/arm/mach-s[a-t]*":true,
95
96 /* 屏蔽排除不用的配置文件 */
97 "arch/arm/configs/[a-r]*":true,
98 "arch/arm/configs/[t-z]*":true,
99 "arch/arm/configs/s3c*":true,
100 "arch/arm/configs/s5p*":true,
101 "arch/arm/configs/s[a-t]*":true,
102
103 /* 屏蔽掉不用的DTB文件 */
104 "arch/arm/boot/dts/[a-r]*":true,
105 "arch/arm/boot/dts/[t-z]*":true,
106 "arch/arm/boot/dts/s3c*":true,
107 "arch/arm/boot/dts/s5pv*":true,
108 "arch/arm/boot/dts/sam*":true,
109 "arch/arm/boot/dts/sd*":true,
110 "arch/arm/boot/dts/sh*":true,
111 "arch/arm/boot/dts/soc*":true,
112 "arch/arm/boot/dts/spear*":true,
113 "arch/arm/boot/dts/st*":true,
114 "arch/arm/boot/dts/*.tmp":true,
115 }
116 }

settings.json

4,Web版VS Code

https://code.visualstudio.com/docs/editor/vscode-web



推荐阅读
  • 本文详细介绍如何使用Python进行配置文件的读写操作,涵盖常见的配置文件格式(如INI、JSON、TOML和YAML),并提供具体的代码示例。 ... [详细]
  • GIMP 2.99.2 发布:UI 采用 GTK3 实现、原生支持高分屏和 Wayland
    开源项目评选最后一周,手里的5票再不用就没用了https:www.oschina.netprojecttop_cn_2020GIMP2.99.2已发布,同时这也标志着GIMP3.0的到来,其中最显著的变化是从GTK2过渡到GTK3工具包。基于 ... [详细]
  • Python 异步编程:深入理解 asyncio 库(上)
    本文介绍了 Python 3.4 版本引入的标准库 asyncio,该库为异步 IO 提供了强大的支持。我们将探讨为什么需要 asyncio,以及它如何简化并发编程的复杂性,并详细介绍其核心概念和使用方法。 ... [详细]
  • 本文详细记录了在基于Debian的Deepin 20操作系统上安装MySQL 5.7的具体步骤,包括软件包的选择、依赖项的处理及远程访问权限的配置。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • PyCharm下载与安装指南
    本文详细介绍如何从官方渠道下载并安装PyCharm集成开发环境(IDE),涵盖Windows、macOS和Linux系统,同时提供详细的安装步骤及配置建议。 ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • python的交互模式怎么输出名文汉字[python常见问题]
    在命令行模式下敲命令python,就看到类似如下的一堆文本输出,然后就进入到Python交互模式,它的提示符是>>>,此时我们可以使用print() ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • c# – UWP:BrightnessOverride StartOverride逻辑 ... [详细]
  • 本文介绍了一款用于自动化部署 Linux 服务的 Bash 脚本。该脚本不仅涵盖了基本的文件复制和目录创建,还处理了系统服务的配置和启动,确保在多种 Linux 发行版上都能顺利运行。 ... [详细]
  • 本文详细介绍了如何使用 Yii2 的 GridView 组件在列表页面实现数据的直接编辑功能。通过具体的代码示例和步骤,帮助开发者快速掌握这一实用技巧。 ... [详细]
  • PHP 编程疑难解析与知识点汇总
    本文详细解答了 PHP 编程中的常见问题,并提供了丰富的代码示例和解决方案,帮助开发者更好地理解和应用 PHP 知识。 ... [详细]
  • 解决Linux系统中pygraphviz安装问题
    本文探讨了在Linux环境下安装pygraphviz时遇到的常见问题,并提供了详细的解决方案和最佳实践。 ... [详细]
  • Windows 系统下 MySQL 8.0.11 的安装与配置
    本文详细介绍了在 Windows 操作系统中安装和配置 MySQL 8.0.11 的步骤,包括环境准备、安装过程以及后续配置,帮助用户顺利完成数据库的部署。 ... [详细]
author-avatar
X巩工916BGR_426
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有