当前位置: 首页 > news >正文

【VSCode】工作区及设置

【VSCode】工作区及设置

  • VSCode介绍
  • 工作区
  • 设置

VSCode介绍

Visual Studio Code(简称VSCode)是一个由微软开发的免费、开源的代码编辑器,以下是VSCode的一些功能及特性:

  • 编辑器核心
    • 多文档界面:VSCode允许同时打开多个文档,支持水平或垂直分割视图。
    • 代码高亮和语法树:VSCode能够识别多种编程语言,并为它们提供语法高亮显示。
    • 代码折叠:用户可以折叠代码块,以便更清晰地查看代码结构。
    • 多光标编辑:支持同时在多个位置输入,提高编辑效率。
  • 智能感知
    • IntelliSense:一个强大的代码补全和智能提示功能,支持大多数语言。
    • 代码导航:快速跳转到定义、引用和实现。
    • 代码片段:预定义的代码模板,可以快速插入常用代码。
    • 代码格式化:自动格式化代码,支持多种语言和自定义格式化规则。
  • 调试和测试
    • 内置调试器:支持断点、步进、查看变量等调试功能。
    • 调试控制台:在VSCode内部运行代码和调试输出。
    • 测试运行器:支持单元测试和测试探索。
  • 版本控制
    • Git集成:VSCode内置了Git版本控制系统,支持提交、推送、拉取等操作。
    • 分支管理:轻松管理Git分支和合并请求。
  • 扩展市场
    • 插件系统:VSCode拥有一个丰富的插件市场,用户可以安装扩展来增加新功能。
    • 主题和图标包:用户可以更换编辑器的主题和图标包来个性化编辑器外观。
  • 远程开发
    • 远程-SSH:通过SSH连接到远程服务器进行开发。
    • 远程-容器:在容器中开发,使得开发环境与生产环境保持一致。
  • 终端集成:VSCode内置了一个终端,用户可以在编辑器内部直接使用命令行。
  • 工作区:一个可以包含多个文件夹的项目空间,支持多根工作区。
  • 设置
    • 用户设置:全局或工作区级别的配置,控制编辑器行为。
    • 键盘快捷键:用户可以自定义快捷键来提高工作效率。
  • 语言支持
    • 丰富的语言支持:VSCode对多种编程语言提供了原生支持,包括JavaScript、TypeScript、Python、C++、C#、Java等。
  • 性能
    • 快速启动和响应:VSCode优化了性能,即使在大型项目中也能保持快速响应。
  • 可定制性
    • 用户自定义:用户可以自定义几乎所有的编辑器方面,包括界面布局、颜色主题、快捷键等。

VSCode的设计哲学是轻量级但功能强大,它通过插件系统和用户自定义设置提供了极高的灵活性,使其成为许多开发者的首选编辑器。

以上内容均由kimi生成。

工作区

个人理解VSCode中的工作区类似于一般集成开发环境(integrated development environment,IDE)(比如PyCharm)中的项目,本质上都是对从属于工作区/项目的代码文件进行统一配置及管理。

稍有区别的是,工作区支持在一个窗口中管理多个项目(工作区可以是多根的1),例如一个工作区可以同时支持Python和Java项目,这一点是很多IDE无法实现的。

以PyCharm为例,PyCharm可以在一个窗口中打开多个相同环境配置的项目并进行修改、运行,但无法直接运行PyCharm不支持的语言。
并且最好不要在IDE中一个窗口打开多个相同环境配置的项目,这样逻辑上是将多个项目集成为一个项目,很容易导致项目间的冲突。

设置

由于VSCode是高度定制化的,其允许用户以JSON格式精确控制编辑器的各种行为、外观和工作环境等,因此其使用settings.json文件作为配置系统的重要组成部分2

settings.json又可简单分为用户/全局settings.json和工作区settings.json,二者在以下几个方面略有差异:

  • 产生方式
    • 用户/全局settings.json在安装好VSCode后自动生成
    • 工作区settings.json需要首先在工作区目录下创建.vscode文件夹,然后手动创建
  • 访问方式
    • 用户/全局settings.json可通过以下几种方式进行访问:
      • 快捷键Ctrl+Shift+P打开命令面板,输入“settings.json”回车
      • 依次点击“文件”➡“首选项”➡“设置”➡“内容”➡“设置”
    • 工作区settings.json在工作区目录下的.vscode文件夹中找到并打开即可访问
  • 作用范围
    • 用户/全局settings.json在全局范围内有效
    • 工作区settings.json仅在该工作区下有效

值得注意的是,虽然用户/全局settings.json的作用范围大于工作区settings.json的作用范围,但在二者的重合作用范围内,用户/全局settings.json和工作区settings.json的相同属性的设置以工作区settings.json为准。
也就是说,在有工作区settings.json的工作区内,相同属性的设置由工作区settings.json决定,而非用户/全局settings.json。

VSCode的设置还有系统默认设置文件夹设置,系统默认设置不可修改,文件夹设置可简单理解为单个项目的设置,具体内容可参照《关于VSCode中工作区的讲解与使用工作区还你一个轻量的VSCode》。


  1. Visual Studio Code 配置教程,手把手教你如何配置 ↩︎

  2. settings.json:Visual Studio Code的深度定制化核心 ↩︎

相关文章:

【VSCode】工作区及设置

【VSCode】工作区及设置 VSCode介绍工作区设置 VSCode介绍 Visual Studio Code(简称VSCode)是一个由微软开发的免费、开源的代码编辑器,以下是VSCode的一些功能及特性: 编辑器核心: 多文档界面:VSCode允许…...

瀚高数据库

文章目录 瀚高数据库安装瀚高数据库快速入门遇到的问题总结 瀚高数据库 瀚高数据库(HanGaoDB)是一款在分布式存储、高并发处理和高可用性方面表现优异的数据库,特别适用于大数据、高吞吐量、高并发的应用场景。它结合了传统 SQL 数据库和分布…...

xterm遇到的问题及解决方案

xterm遇到的问题及解决方案 /r插入终端导致的之后插入的数据覆盖了改行头部的数据 问题说明 如图所示,当在一行输入的候,输入的l插入到了改行的头部。 查看ws返回数据 可见ws返回的信息存在\r字符,在xterm.js中\r是回车字符的意思&…...

嵌入式单片机温湿度模块控制与实现

温湿度模块的使用 温湿度模块的特点 温湿度模块的原理通信的开始(打电话) 通信的过程(交流中)...

表达式语句、复合语句和空语句

欢迎拜访:雾里看山-CSDN博客 本篇主题:表达式语句、复合语句和空语句 发布时间:2024.12.26 隶属专栏:C语言 目录 1. 表达式语句定义作用常见类型赋值语句函数调用语句 2. 复合语句定义作用变量作用域 3. 空语句定义作用 1. 表达式…...

Dilateformer实战:使用Dilateformer实现图像分类任务(二)

文章目录 训练部分导入项目使用的库设置随机因子设置全局参数图像预处理与增强读取数据设置Loss设置模型设置优化器和学习率调整策略设置混合精度,DP多卡,EMA定义训练和验证函数训练函数验证函数调用训练和验证方法 运行以及结果查看测试完整的代码 在上…...

Kubernetes 镜像拉取策略全解析:如何根据需求选择最佳配置?

在Kubernetes集群里,拉取容器镜像是一个非常关键的步骤。这些镜像包含了应用程序及其所有需要的依赖项,Kubernetes通过拉取这些镜像来启动Pod中的容器。为了提升集群的稳定性、速度和安全性,Kubernetes提供了几种不同的镜像拉取策略。这篇文章…...

上海AI中心记录

1、js事件循环 调用栈(Call Stack): JavaScript 是单线程的,所有的代码执行都是在调用栈中进行的。当函数被调用时,进入栈中;执行完毕后,从栈中弹出。 任务队列(Task Queue&#xff…...

oscp学习之路,Kioptix Level2靶场通关教程

oscp学习之路,Kioptix Level2靶场通关教程 靶场下载:Kioptrix Level 2.zip 链接: https://pan.baidu.com/s/1gxVRhrzLW1oI_MhcfWPn0w?pwd1111 提取码: 1111 搭建好靶场之后输入ip a看一下攻击机的IP。 确定好本机IP后,使用nmap扫描网段&…...

基于SpringBoot的蜗牛兼职网的设计与实现

一、项目背景 随着社会的快速发展,计算机的影响是全面且深入的。人们生活水平的不断提高,日常生活中人们对蜗牛兼职网方面的要求也在不断提高,需要兼职工作的人数更是不断增加,使得蜗牛兼职网的开发成为必需而且紧迫的事情。蜗牛…...

C++软件设计模式之装饰器模式

装饰器模式(Decorator Pattern)是C软件设计模式中的一种结构型设计模式,主要用于解决在不改变现有对象结构的情况下动态地给对象添加新功能的问题。通过使用装饰器模式,可以在运行时为对象添加新的行为,而不需要修改其…...

Spring Boot项目接收前端参数的11种方式

大家好,我是袁庭新。在前后端项目交互中,前端传递的数据可以通过HTTP请求发送到后端, 后端在Spring Boot中如何接收各种复杂的前端数据呢?这篇文章总结了11种在Spring Boot中接收前端数据的方式。 1 搭建项目 1.通过Spring Init…...

通过GRE协议组建VPN网络

GRE(Generic Routing Encapsulation,通用路由封装协议)协议是一种简单而有效的封装协议,它在网络中的广泛应用,比如在构建VPN网络。   GRE是一种封装协议,它允许网络层协议(如IP)的…...

you-get使用cookies下载B站视频

B站视频更换BV号以后,使用you-get不能下载了。 首先更新你的you-get pip install --upgrade you-get 更新完成后再次使用you-get -u 命令会显示使用cookies才能下载更多清晰度的视频 使用Edge浏览器,添加插件 Cookie-Editor 点击上图的导出按钮&am…...

使用Excel制作通达信自定义“序列数据“

序列数据的视频教程演示 Excel制作通达信自定义序列数据 1.序列数据的制作方法:删掉没有用的数据(行与列)和股代码格式处理,是和外部数据的制作方法是相同,自己上面看历史博文。只需要判断一下,股代码跟随的…...

基于 Nginx 的网站服务器与 LNMP 平台搭建指南

一,Nginx概述 (一)Nginx的作用 Nginx在网络服务器架构中扮演着多面的角色。其初始设定专注于静态网络数据的处理,能高效地为用户提供诸如HTML,CSS,JavaScript等静态资源。当面对动态数据时,借助php - fpm模块,Nginx能够解析php源代码,实现动态页面的生成与展示。在处理…...

OpenCV计算机视觉 03 椒盐噪声的添加与常见的平滑处理方式(均值、方框、高斯、中值)

上一篇文章:OpenCV计算机视觉 02 图片修改 图像运算 边缘填充 阈值处理 添加椒盐噪声 def add_peppersalt_noise(image, n10000):result image.copy()h, w image.shape[:2] # 获取图片的高和宽for i in range(n): # 生成n个椒盐噪声x np.random.randint(…...

WPF自定义窗口 输入验证不生效

WPF自定义窗口 输入验证不生效 WPF ValidationRule 不生效 WPF ValidationRule 不生效 解决方案&#xff1a;在WindowStyle的Template中添加AdornerDecorator标签。 <Style x:Key"WindowStyle1" TargetType"{x:Type Window}"><Setter Property&…...

【MySQL】 SQL优化讲解

一、优化前的思考 在定位到慢查询后&#xff0c;面试官常问如何优化或分析慢查询的SQL语句。若存在聚合查询、多表查询&#xff0c;可尝试优化SQL语句结构&#xff0c;如多表查询可新增临时表&#xff1b;若表数据量过大&#xff0c;可添加索引&#xff0c;但添加索引后仍慢则…...

05.HTTPS的实现原理-HTTPS的握手流程(TLS1.2)

05.HTTPS的实现原理-HTTPS的握手流程&#xff08;TLS1.2&#xff09; 简介1. TLS握手过程概述2. TLS握手过程细化3. 主密钥&#xff08;对称密钥&#xff09;生成过程4. 密码规范变更 简介 主要讲述了混合加密流程完成后&#xff0c;客户端和服务器如何共同获得相同的对称密钥…...

Java获取自身被调用点

1. 场景 打印日志的时候&#xff0c;需要获取是在哪个地方被调用了&#xff0c;把调用点的信息一并打印出来。 2. 获取自身被调用点的方法 可以通过获取线程的调用栈&#xff0c;遍历后找到调用点。 3. 代码实现 import java.text.SimpleDateFormat; import java.util.Dat…...

有序之美:C++ Set的哲学与诗意

文章目录 前言一.C set 的概念1.1 set 的定义1.2 set 的特点二. set 的构造方法2.1 常见构造函数2.1.1 示例&#xff1a;不同构造方法 2.2 相关文档 三.set 的常用操作3.1 插入操作详解3.1.1 使用 insert() 插入元素3.1.2 使用 emplace() 插入元素3.1.3 插入区间元素 3.2 查找操…...

22. 仿LISP运算

题目描述 LISP语言唯一的语法就是括号要配对 形如(OP P1 P2 ...)&#xff0c;括号内元素由单个空格分割。其中第一个元素OP为操作符&#xff0c;后续元素均为其参数&#xff0c;参数个数取决于操作符类型。注意:参数P1,P2也有可能是另外一个嵌套的(OP P1 P2...)&#xff0c;当前…...

大模型应用技术系列(三): 深入理解大模型应用中的Cache:GPTCache

前言 无论在什么技术栈中,缓存都是比较重要的一部分。在大模型技术栈中,缓存存在于技术栈中的不同层次。本文将主要聚焦于技术栈中应用层和底层基座之间中间件层的缓存(个人定位),以开源项目GPTCache(LLM的语义缓存)为例,深入讲解这部分缓存的结构和关键实现。 完整技术…...

MATLAB语言的网络编程

标题&#xff1a;MATLAB中的网络编程&#xff1a;深入探索与实践 一、引言 在现代科学和工程领域中&#xff0c;网络编程已经成为了数据处理、信号分析、模型构建等众多任务中不可或缺的一环。MATLAB作为一款强大的数学计算软件&#xff0c;不仅提供了丰富的数值计算功能&…...

边缘计算收益稳定

要使自己的PCDN&#xff08;Personal Content Delivery Network&#xff0c;个人内容分发网络&#xff09;收益更稳定&#xff0c;可以从以下几个方面进行努力&#xff1a; 一、选择合适的PCDN平台 平台稳定性&#xff1a;选择技术成熟、稳定性高的PCDN平台&#xff0c;确保内…...

计算机网络 (7)物理层下面的传输媒体

一、定义与位置 物理层是计算机网络体系结构的最低层&#xff0c;它位于传输媒体&#xff08;传输介质&#xff09;之上&#xff0c;主要作用是为数据链路层提供一个原始比特流的物理连接。这里的“比特流”是指数据以一个个0或1的二进制代码形式表示。物理层并不是特指某种传输…...

【GoPL】1.2 命令行参数

1.2 命令行参数 24-12-26 大部分程序处理输入&#xff0c;然后产生一些输出&#xff0c;这大概有点像计算的定义 但是程序怎么操作输入的数据&#xff1f;(用参数来操作)输入可能来自文件、网络连接、用户的键盘输入、命令行参数(不同的编程范式) os包提供函数和其他值来处理…...

高精度问题

目录 算法实现基础 高精度加法AB 测试链接 源代码 代码重点 高精度减法A-B 测试链接 源代码 代码重点 高精度乘法A*b和A*B 测试链接 源代码 代码重点 高精度除法A/b和A/B 测试链接 源代码 代码重点 高精度求和差积商余 算法实现基础 本算法调用STL…...

【无线通信】蜂窝系统——干扰与系统容量

干扰是蜂窝无线系统性能的主要限制因素。干扰来源包括同一小区中的其他移动终端、邻近小区正在进行的通话、其他基站在同一频段内的工作信号&#xff0c;或者任何不属于蜂窝系统的设备偶然向蜂窝频段泄漏信号。语音信道中的干扰会导致串音&#xff0c;使得用户在通话时听到背景…...

深入探索仓颉编程语言:函数与结构类型的终极指南

引言 仓颉编程语言是一种现代化、语法精炼的编程语言&#xff0c;其设计目标是提供高度的灵活性与高性能的执行效率。函数与结构类型是仓颉语言的两大基础模块&#xff0c;也是开发者需要掌握的核心。本文将详细讲解仓颉语言中函数和结构类型的特性&#xff0c;辅以代码实例和…...

010-spring-后置处理器(重要)

org.mybatis.spring.mapper.MapperScannerConfigurer...

SQL实现新年倒计时功能

马上就到 2025 年了&#xff0c;给大家分享一个使用 SQL 实现的新年倒计时功能。 以下是 PostgreSQL 语法&#xff1a; DO $$ DECLAREdiff INTERVAL; BEGINRAISE NOTICE 2025新年倒计时开始&#xff1a;;LOOP-- 计算当前时间距离2025年的时间间隔diff age(timestamp 2025-01…...

list模拟实现

目录 节点结构 构造函数 insert erase push_back push_front pop_front pop_back 拷贝构造 析构函数 赋值重载 正向迭代器实现 clear 反向迭代器实现 测试list 附完整代码 参照数据结构篇: 带头双向循环链表 节点结构 namespace dck {template <class T&g…...

JVM【Java虚拟机】基础知识(五)

1. 双亲委派机制 由于Java虚拟机中有多个类加载器&#xff0c;双亲委派机制的核心是解决一个类到底由谁加载的问题。 &#x1f4a1;双亲委派机制有什么用&#xff1f; 1.保证类加载的安全性 通过双亲委派机制避免恶意代码替换JDK中的核心类库&#xff0c;比如java.lang.Str…...

阿尔萨斯(JVisualVM)JVM监控工具

文章目录 前言阿尔萨斯(JVisualVM)JVM监控工具1. 阿尔萨斯的功能2. JVisualVM启动3. 使用 前言 如果您觉得有用的话&#xff0c;记得给博主点个赞&#xff0c;评论&#xff0c;收藏一键三连啊&#xff0c;写作不易啊^ _ ^。   而且听说点赞的人每天的运气都不会太差&#xff…...

Vue BPMN Modeler流程图

1、参考地址 git clone https://github.com/evanyangg/vue-bpmn-modeler.git 2、安装bpmn.js npm install bpmn-js --save 3、使用bpmn.js <template><div class"containers"><div class"canvas" ref"canvas"></div&g…...

python通过正则匹配SQL

pattern r"(?:[^;]|(?:\\.|[^])*);" sql_list [match.group().strip() for match in re.finditer(pattern, execute_sql) if match.group().strip()]for sql in sql_list:print(sql)(?:[^;]|(?:\\.|[^])*); 匹配 连续的非分号内容 或 单引号包裹的字符串&#…...

设置首选网络类型以及调用Android框架层的隐藏API

在Android SDK中提供的framework.jar是阉割版本的&#xff0c;比如有些类标记为hide&#xff0c;这些类不会被打包到这个jar中&#xff0c;而有些只是类中的某个方法或或属性被标记为hide&#xff0c;则这些类或属性会被打包到framework.jar&#xff0c;但是我们无法调用&#…...

观察者模式和发布-订阅模式有什么异同?它们在哪些情况下会被使用?

大家好&#xff0c;我是锋哥。今天分享关于【观察者模式和发布-订阅模式有什么异同&#xff1f;它们在哪些情况下会被使用&#xff1f;】面试题。希望对大家有帮助&#xff1b; 观察者模式和发布-订阅模式有什么异同&#xff1f;它们在哪些情况下会被使用&#xff1f; 1000道 …...

如何保证mysql数据库到ES的数据一致性

1.同步双写方案 在代码中对数据库和ES进行双写操作&#xff0c;确保先更新数据后更新ES。 优点&#xff1a; 数据一致性&#xff1a;双写策略可以保证在MySql和Elasticsearch之间数据的强一致性&#xff0c;因为每次数据库的变更都会在Elasticsearch同步反映。实时性&#xf…...

RabbitMQ 的7种工作模式

RabbitMQ 共提供了7种⼯作模式,进⾏消息传递,. 官⽅⽂档:RabbitMQ Tutorials | RabbitMQ 1.Simple(简单模式) P:⽣产者,也就是要发送消息的程序 C:消费者,消息的接收者 Queue:消息队列,图中⻩⾊背景部分.类似⼀个邮箱,可以缓存消息;⽣产者向其中投递消息,消费者从其中取出消息…...

红黑树 Red-Black Tree介绍

1. 红黑树的定义 红黑树是一种具有如下性质的二叉搜索树&#xff1a; 每个节点是红色或黑色。根节点是黑色。所有叶子节点都是黑色的空节点&#xff08;NIL节点&#xff09;&#xff0c;即哨兵节点。如果一个节点是红色&#xff0c;那么它的子节点一定是黑色。&#xff08;不存…...

我的创作纪念日—致敬未来的自己

机缘 为什么想去写文章呢&#xff1f; 1、想把自己学的知识和技能做一个总结。 2、想给多年后的自己留下一些财富。 3、希望自己分享的知识和经验也能帮到其他有需要的人 收获 在创作的过程中都有哪些收获&#xff1f; 1、每次对知识的总结&#xff0c;都让我的技能更加的…...

Android Studio IDE环境配置

​需要安装哪些东西&#xff1a; Java jdk Java Downloads | OracleAndroid Studio 下载 Android Studio 和应用工具 - Android 开发者 | Android DevelopersAndroid Sdk 现在的Android Studio版本安装时会自动安装&#xff0c;需要注意下安装的路径Android Studio插件…...

matlab中的cell

在MATLAB中&#xff0c;cell 是一种非常重要的数据类型&#xff0c;它能够存储不同类型和大小的数据&#xff0c;这使得它非常灵活&#xff0c;适用于处理复杂的数据结构。 1. 基本介绍 cell 类型的变量可以存储不同类型的数据&#xff0c;如数值、字符、结构体、甚至其他的 …...

Vue项目中env文件的作用和配置

在实际项目的开发中&#xff0c;我们一般会经历项目的开发阶段、测试阶段和最终上线阶段&#xff0c;每一个阶段对于项目代码的要求可能都不尽相同&#xff0c;那么我们如何能够游刃有余的在不同阶段下使我们的项目呈现不同的效果&#xff0c;使用不同的功能呢&#xff1f;这里…...

基于致远OA+慧集通平台的企业主数据管理设计方案(一)

目标 1、实现集团组织主数据的集中统一管理&#xff0c;包括到主数据在致远中的审批新增、编辑、分发等操作&#xff1b; 2、实现集团用户系统权限的集中管理&#xff0c;统一在致远平台中为用户配置各系统中的权限&#xff0c;配置完成后&#xff0c;可以自动或手动的分发到…...

vue前端实现同步发送请求,可设置并发数量【已封装】

新建 TaskManager.js export default class TaskManager {constructor(maxConcurrentTasks 1) {// 最大并发任务数// to do// 并发任务数大于1 接口开始有概率返回空值&#xff0c;推测是后端问题this.maxConcurrentTasks maxConcurrentTasks;this.currentTasks 0;this.tas…...

vue3使用vant日历组件(calendar),自定义日历下标的两种方法

在vue3中使用vant日历组件&#xff08;calendar&#xff09;自定义下标的两种方法&#xff0c;推荐使用第二种&#xff1a; 日期下方加小圆点&#xff1a; 一、使用伪元素样式实现(::after伪元素小圆点样式会被覆盖&#xff0c;只能添加一个小圆点) 代码如下&#xff08;示例…...