【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的深度定制化核心 ↩︎

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/65152.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Jmeter自学【8】- 使用JMeter模拟设备通过MQTT发送数据

今天使用jmeter推送数据到MQTT,给大家分享一下操作流程。 一、安装JMeter 参考文档:Jmeter自学【1】- Jmeter安装、配置 二、安装MQTT插件 1、下载插件 我的Jmeter版本是5.6.3,用到的插件是:mqtt-xmeter-2.0.2-jar-with-depe…

若依框架中的上传图片后如何实现回显到页面的

在日常开发中,总会遇到上传文件、图片等功能,然后本地开发的话,又没有像OSS、七牛等网络存储,这个时候通常将文件上传到本地,那么上传之后拿到的是本地的路径,存储到数据库中,查询的时候如何将本…

仓颉编程语言的未来何去何从?--探索可持续发展

引言 作为一门具有革命性特点的编程语言,仓颉编程语言凭借自然语言式语法、高效的智能推断能力和多场景适用性,在短时间内赢得了开发者的广泛关注。然而,任何一门语言的发展都伴随着机遇与挑战。仓颉虽然在多个领域表现出了强大的能力&#…

Linux 文件 I/O 基础

目录 前言 一、文件描述符(File Descriptor) 二、打开文件(open 函数) 三、读取文件(read 函数) 四、写入文件(write 函数) 五、关闭文件(close 函数) …

【CSS in Depth 2 精译_091】15.4:让 CSS 高度值过渡到自动高度 + 15.5:自定义属性的过渡设置(全新)+ 15.6:本章小结

当前内容所在位置(可进入专栏查看其他译好的章节内容) 第五部分 添加动效 ✔️【第 15 章 过渡】 ✔️ 15.1 状态间的由此及彼15.2 定时函数 15.2.1 定制贝塞尔曲线15.2.2 阶跃 15.3 非动画属性 15.3.1 不可添加动画效果的属性15.3.2 淡入与淡出 15.4 过…

路由器的原理

✍作者:柒烨带你飞 💪格言:生活的情况越艰难,我越感到自己更坚强;我这个人走得很慢,但我从不后退。 📜系列专栏:网路安全入门系列 目录 路由器的原理一,路由器基础及相关…

硬件设计:LVDS电平标准

什么是LVDS? LVDS(Low-Voltage Differential Signaling)是一种高速、低功耗的差分信号传输标准。它通过一对差分信号线(通常是两根互补信号线)来传输数据,广泛应用于高速数字通信领域。 LVDS 的核心特点 低…

spring专题笔记(七):spring如何引入外部属性文件?spring在xml配置bean时如何引入外部的properties属性文件内容?

目录 1、spring在xml配置bean时引入外部的properties属性文件内容作用是什么? 2、引入配置文件步骤 2.1、首先创建一个java类MyDataSource,主要包含四个属性。 2.2、准备一个myDataConfig.properties属性文件,里面配置MyDataSource类中需…

梳理你的思路(从OOP到架构设计)_认识框架(Framework) 01

目录 1、 是框架的核心要素​编辑&i> 范例1&#xff1a; 范例2&#xff1a; 范例3&#xff1a; 1、 <E&I>是框架的核心要素 在特定领域(Domain)里&#xff0c;将EIT造形的<E&I>部份有意义地组合起来&#xff0c;就成为框架(Framework)了。基本…

邮件白名单是什么?

邮件白名单是一种电子邮件过滤规则&#xff0c;用于指定哪些发件人、域名或IP地址的邮件被允许通过过滤系统&#xff0c;不受任何限制地进入收件人的邮箱。与黑名单&#xff08;用于阻止特定发件人的邮件&#xff09;相反&#xff0c;白名单确保了来自受信任来源的邮件能够畅通…

Maven项目中不修改 pom.xml 状况下直接运行OpenRewrite的配方

在Java 的Maven项目中&#xff0c;可以在pom.xml 中配置插件用来运行OpenRewrite的Recipe&#xff0c;但是有一些场景是希望不修改pom.xml 文件就可以运行Recipe&#xff0c;比如&#xff1a; 因为不需要经常运行 OpenRewrite&#xff0c;所以不想在pom.xml 加入不常使用的插件…

JVM实战—2.JVM内存设置与对象分配流转

大纲 1.JVM内存划分的原理细节 2.对象在JVM内存中如何分配如何流转 3.部署线上系统时如何设置JVM内存大小 4.如何设置JVM堆内存大小 5.如何设置JVM栈内存与永久代大小 6.问题汇总 1.JVM内存划分的原理细节 (1)背景引入 (2)大部分对象的存活周期都是极短的 (3)少数对象…

外部化内部类

要定义一个新的名字空间&#xff0c;将一个类内部的类提到外部&#xff0c;目的是降低类的耦合度和复杂度&#xff0c;这通常可以通过 外部化内部类 来实现。通过这种方式&#xff0c;可以将复杂的实现细节分离到一个单独的名字空间中&#xff0c;让外部类的接口保持简洁。接下…

创建仓颉编程语言的第一个项目

创建仓颉编程语言的第一个项目 安装仓颉编程语言编译器第一个仓颉项目 安装仓颉编程语言编译器 安装仓颉编程语言编译器&#xff0c;是一个需要非常强的动手能力的过程——有大量的命令行操作。这不是仓颉编程语言独有的特点。现在流行的编程语言&#xff0c;比如 kotlin、jav…

kong网关使用pre-function插件,改写接口的返回数据

一、背景 kong作为api网关&#xff0c;除了反向代理后端服务外&#xff0c;还可对接口进行预处理。 比如本文提及的一个小功能&#xff0c;根据http header某个字段的值&#xff0c;等于多少的时候&#xff0c;返回一个固定的报文。 使用到的kong插件是pre-function。 除了上…

计算机网络:IP地址相关知识总结

目录 一、IP地址的表现形式 1.1 十进制表示形式 1.2 二进制表示形式 1.3 转换示例介绍 二、IP地址的组成 2.1 网络ID 2.2 主机ID 2.3 示例 三、IP地址的分类 3.1 A类地址 3.2 B类地址 3.3 C类地址 3.4 D类地址 3.5 E类地址 四、常见的特殊IP地址 五、IP地址二进…

基础练习 Huffman树,C++,最小堆,STL

Description Huffman树在编码中有着广泛的应用。在这里&#xff0c;我们只关心Huffman树的构造过程。 给出一列数{pi}{p0, p1, …, pn-1}&#xff0c;用这列数构造Huffman树的过程如下&#xff1a; 1. 找到{pi}中最小的两个数&#xff0c;设为pa和pb&#xff0c;将pa和pb从{…

Java获取自身被调用点

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

vue3入门教程:teleport

一、基本语法 Teleport组件的基本语法如下&#xff1a; <Teleport to"目标选择器"><!-- 要传送的内容 --> </Teleport>其中&#xff0c;to属性指定了内容将被渲染到的目标位置&#xff0c;它可以是一个CSS选择器字符串&#xff08;如#some-id、.…