理解VSCODE基于配置的设置,避免臃肿

news2024/10/19 16:04:48

这节课我们讲两点:
(一)下载、安装、汉化及美化 VSCODE;
(二)理解VSCODE中基于配置(Profiles)的设置(Settings),让 VSCODE 保持清爽。

(文末有视频)

1. 下载、安装、运行

可以在官网 code.visualstudio.com 下载安装包,也可以在 Windows 应用商店一键安装。后者会直接将程序安装在 Windows 用户个人目录下(类似 :C:\Users\用户名\AppData\Local\Programs\Microsoft VS Code),且卸载时会保留所有插件、配置等。

考虑到有些同学可能因为C盘空间不够用等原因,需要手工更换安装目录,所以我们使用下载安装包的方式。下载得到的安装程序名为:“VSCodeUserSetup-x64-XXX.exe”(其中 XXX 为可变化的版本号)。双击它开始安装。过程中,可将选中“将’通过Code打开’操作添加到Windows资源管理器目录上下文菜单”一项选中。
vscode注册必要的右键菜单安装后,首次运行Visual Studio Code。我为了写课程,全卸载了,也不知是不是留下什么残余?反正上来就是暗黑主题,再加上纯英文,看上去有一种久违的崇洋媚外的高级感……

首次运行VSCODE-暗黑主题

2. 汉化+美化

2.1 汉化

祖国的实力不允许我沉迷于虚无飘渺的“高级感”,汉化吧。点击左侧的扩展管理按钮,或者按下 Ctrl + Shift + X 组合键,如图:

打开扩展管理

接着:① 在过滤栏输入 Chinese,② 在搜索结果中选中 Chinese语言简体包,③ 确保选中 “Auto Update”,④ 点 该扩展的 Install 按钮。

应用语言包插件

VSCODE 将开始下载并安装该语言包,完成后会问是否应用该语言并重启,点 “Change Language and Restart” 的按钮即可……重启VSCODE后,它变成这样子:

应用简单中文语言包效果

2.2 切换主题

点左侧栏底部的齿轮图标按钮,弹出菜单项:主题→颜色主题(或者直接热键 Ctrl+K, Ctrl+T ,即:按下 Ctrl 不放,然后按下K,松开K,再按下T,再松T)。可按后续提示,修改VSCODE界面的颜色主题。和 “颜色主题” 菜单项同一级,还有 “文件图标” 和 “产品图标” 两项主题可修改,大家可自己行操作试试效果。

2.3 安装更多题

默认集成的主题没满足你?确保在VSCODE身上,按下前述组合键 Ctrl+K,Ctrl+T,然后选第一项 “浏览其它主题”,稍等一会儿,会列出一大堆题,你可以通过向下键或向上键,浏览它并直接预览主题效果。有喜欢的就点击即可开始安装(但注意上面的重要提醒)。

我挑的一个,它将被用于我的VSCODE的默认主题。(注:只是默认,一到我开始写代码,比如写C++,VSCODE就会自动更换主题,以彰显写C++时内心的澎湃……)

旧纸堆主题

3 理解基于“配置”的“设置”

3.1 莫着急安装各种扩展包……

先提醒一句:不要急于安装更多的包( 哪怕是微软官方推荐的 )!

现在,先不要着急想写代码,更不要哗啦一下,就把一个包含了很多扩展包的扩展包给安装上,除了请神容易送神难之外,更主要的是,多个扩展交叉作用之后,往往会让我们搞不清楚某个功能来自哪个扩展,不利于更好的,更有效地使用扩展。

所以,这个课程将带你一个一个地安装扩展包,在你清楚新安装的扩展包会带入什么功能后,再讲下一个。

最为重要的是,无论如何,你总得在创建合适的“配置(Profiles)”之后,再来来安装编程语言支持的扩展包啊!否则(假装长叹一声),VSCODE 又多了一个粗鲁的用户……

3.2 基本概念 & 正确做法

在未使用的语言包的VSCODE中,“配置”指Profiles,“设置”指 Settings。

必要的话,将 VSCODE 窗口拉宽一些,然后通过主菜单:文件→首选项,可以看到:

打开配置页面

我们需要先理解这里头的“配置文件(profiles)”和“设置(settings)”的区别。倒也简单,配置文件包含了它下面的几个菜单项的操作结果,即:配置包含了用户对设置、扩展、键盘快捷方式、配置代码片段、任务、活动主题等修改结果。

大家知道,VSCODE 最大的特点或优势就是:一个软件,可以支持多种工作目的,比如带格式的纯文本文档编写(典型如:JSON、XML、MARKDOWN),比如支持各种计算机语言编程等。于是乎很多人就开始拼命地往上装扩展,结果把VSCODE搞得臃肿不堪,还容易互相干架;有些人还发布网文埋怨 VSCODE “插件机制好是好,但是同装几个就开始臃肿了……”。

看到这些文章,我惊呆了。要知道 VSCODE 之父 Erich Gamma 也是《设计模式:可复用面向对象软件的基础》的主力作者,以他的品味的设计能力,他怎么可能在做出“插件式”的架构设计,没有想好如何应对插件“爬满身”,最终拖垮宿主程序的问题呢?

答案就在“配置(Profiles)”上,并且人家 VSCODE 给出示例,偏有人从不用这个功能,我甚至听一个人说过,就喜欢看 VSCODE 颤悠悠地启动,全身上下都挂载武器,“武装到牙器”,在它里面写代码,有种正在驾驭机甲战车的感觉……

机甲个鬼,在我看来,他的VSCODE真是毫无品味,宛如:

扩展太多容易土

相对IDE,VSCODE有个头衔是“轻量级编辑器”,但很多人不敢用VSCODE做日常普通文字的默认编辑器,原因无它,就是VSCODE被他们搞得太笨重,每次启动都娇喘吁吁,我见犹怜……

正确做法就是把“配置(Profiles)”用起来。它的运行机制是:

  • 在不认识的文件夹里,使用默认的配置;
  • 在已认识的文件夹里,使用你指定的配置。

因此,我们首先要保障默认配置的轻量。强列建议:默认配置只安装中文语言扩展包,连主题包都不要安装——除非它自带的那几个主题确确实实你一个都看不上。然后,这个默认配置用来处理普通的文字编辑,也就是差不多把它视为一个功能强很多,但仍然保留轻量的Windows 记事本。

选择前面截图中“配置文件”菜单项,进入配置文件页,即可看到看到默认配置。

认识默认配置

你显然应该没有图中圈红的 “C/CPP-msys2”配置项,那是我们下一节课要配置的。它必须是独立的一个配置,因为和上一节把 msys2 挂接到 Windows自带的新版终端程序一样,我们会把 msys2 终端(严格讲是一个shell)挂接(内嵌)到 VSCODE 的程序中去,这是一个很重的操作,当我们要基于msys2写C/C++代码时,它有用;但如果想写封情书,这个集成的msys2终端,就只会拖垮VSCODE的启动速度。

3.3 视频:认识“配置/Profiles”

在配置文件这个页面里,还有很多内容没出现在上面的截图上,我们用一段视频,来详细说说,从而让大家更加理解VSCODE中“配置文件”的作用。

ls02-vscode-理解基于配置的设置-h

附录 :主题扩展和配置的关系

一方面,颜色主题扩展的应用,确实是跟配置走的,在上面的视频中,你应该看到很多次效果了:每当我们切换配置,VSCODE 的界面就会随之变化。另一方面,主题的安装不跟配置走,不管在哪个配置下安装的颜色主题扩展,都可以被所有其它配置使用。

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

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

相关文章

无极低码课程【redis windows下服务注册密码修改】

下载Windows版本的Redis linux环境 (自行下载) 1.打开官网https://redis.io/downloads/ windows环境 1.打开github https://github.com/microsoftarchive/redis/releases 然后选择你喜欢的版本zip或msi下载 2.这里下载zip版,解压后后,打开安装目录 3.双击redis-server…

学习莫烦python---神经网络

一、卷积神经网络区别 1、“卷积” 和 “神经网络”. 卷积也就是说神经网络不再是对每个像素的输入信息做处理了,而是图片上每一小块像素区域进行处理, 这种做法加强了图片信息的连续性. 使得神经网络能看到图形, 而非一个点. 这种做法同时也加深了神经网络对图片的理解 –翻译…

快充协议有哪些,都有哪些特点

什么是PD协议 PD协议是一种充电协议,全称为“USB Power Delivery(USB PD)”,是由USB-IF(USB Implementers Forum)组织制定的一种标准协议‌。它是一种基于USB接口的快速充电技术,可以实现高达1…

【无人机设计与控制】基于环形拓扑的多目标粒子群优化算法(MO_Ring_PSO_SCD)求解无人机

摘要 本文提出了一种基于环形拓扑的多目标粒子群优化算法 (MO-Ring-PSO-SCD) 用于解决无人机的三维路径规划问题。该算法同时优化了无人机路径的路径成本和威胁成本,通过粒子群算法的多目标优化能力实现路径选择。实验结果表明,与传统算法相比&#xff…

RFID在半导体天车的问题解决方案

RFID在半导体天车的问题解决方案 目前苏州某科技公司的半导体天车目前现阶段存在问题: (1)传统8寸晶圆加工过程中涉及几十道工序,目前都是采用人工搬运,容易产生污染物导致晶圆损坏,速度也比较慢&#xf…

自动驾驶系列—自动驾驶测试前的必备流程:车辆准备平台深度解析

🌟🌟 欢迎来到我的技术小筑,一个专为技术探索者打造的交流空间。在这里,我们不仅分享代码的智慧,还探讨技术的深度与广度。无论您是资深开发者还是技术新手,这里都有一片属于您的天空。让我们在知识的海洋中…

Java笔试04

采用FIFO(先进先出)页面置换算法,可能会产生 抖动现象:抖动现象是指频繁地进行页面置换,导致系统资源大部分时间用于页面置换而不是实际的计算工作。FIFO算法由于其简单的先进先出特性,可能会导致频繁的页面…

消费即赚,循环购物模式引领潮流

在电商界,一种全新的购物模式正悄然兴起——循环购物模式。听起来有些不可思议?消费满额还能获得高额返利,甚至每日领取现金?这背后究竟隐藏着怎样的秘密? 一、循环购物模式初印象 想象一下,您在某个电商平…

【OpenGL】创建窗口/绘制图形

需要云服务器等云产品来学习Linux可以移步/-->腾讯云<--/官网&#xff0c;轻量型云服务器低至112元/年&#xff0c;新用户首次下单享超低折扣。 目录 一、创建窗口 1、代码流程图 2、运行结果 3、代码 二、三角形 1、顶点缓冲对象&#xff1a;Vertex Buffer Object…

Redis --- 第四讲 --- 常用数据结构 --- Hash、List

一、Hash哈希类型的基本介绍。 哈希表&#xff1a;之前学过的所有数据结构中&#xff0c;最最重要的。 1、日常开发中&#xff0c;出场频率非常高。 2、面试中&#xff0c;非常重要的考点。 Redis自身已经是键值对结构了。Redis自身的键值对就是通过哈希的方式来组织的。把…

行业认可 | 钛铂数据喜获2024爱分析 · 数据智能优秀厂商奖

近日&#xff0c;TapData 凭借在数据智能领域的卓越表现&#xff0c;成功入选2024爱分析数据智能优秀厂商榜单。 9月13日&#xff0c;2024爱分析第六届数据智能高峰论坛圆满举办。作为此次论坛的重磅环节&#xff0c;正式公布了“2024爱分析数智卓越企业奖”“2024爱分析数据智…

汽车建模用什么软件最好?汽车建模渲染建议!

在汽车建模和渲染领域&#xff0c;选择合适的软件对于实现精确的设计与高质量的视觉效果至关重要。那么不少的汽车设计师如何选择合适的建模软件与渲染方案呢&#xff0c;一起来简单看看吧&#xff01; 一、汽车建模用软件推荐 1、Alias Autodesk旗下的Alias系列软件是汽车设…

代理 IP 在 AI 爬虫中的关键应用

现如今&#xff0c;人工智能&#xff08;AI&#xff09;的发展日新月异&#xff0c;而数据作为驱动 AI 发展的关键要素&#xff0c;其重要性不言而喻。AI 爬虫作为获取大量数据的重要工具&#xff0c;在数据收集过程中发挥着至关重要的作用。而代理 IP 在 AI 爬虫中有着广泛而重…

flutter实现头像覆盖轮播滚动组件

效果如下: 支持自定义图片大小 支持设置覆盖比例 支持设置最大展示数量 支持设置缩放动画比例 支持自定义动画时长、以及动画延迟时长 支持当图片List长度小于或者登录设置的最大展示数量时禁用滚动动画。 import ../../library.dart;class CircularImageList extends Sta…

2024全网最详细CTF入门指南、CTF夺旗赛使用工具及刷题网站

2024年最新的CTF&#xff08;Capture The Flag&#xff0c;夺旗赛&#xff09;入门指南如下&#xff0c;涵盖了入门思路、常见题型及练习网站推荐&#xff0c;帮助你逐步了解并提升在CTF中的解题技巧。 如果你对网络安全入门感兴趣&#xff0c;我给大家整理好了相关资料&#…

基于SpringBoot+Vue的蜗牛兼职网的设计与实现(带文档)

基于SpringBootVue的蜗牛兼职网的设计与实现&#xff08;带文档) 开发语言:Java数据库:MySQL技术:SpringBootMyBatisVue等工具:IDEA/Ecilpse、Navicat、Maven 该系统主要分为三个角色&#xff1a;管理员、用户和企业&#xff0c;每个角色都有其独特的功能模块&#xff0c;以满…

【从零到一的笔试突破】——day1笔试巅峰(6道笔试题)ACM模式让笔试更有感觉

文章目录 数字统计&#xff08;数学模拟&#xff09;两个数组的交集&#xff08;哈希&#xff09;点击消除&#xff08;栈&#xff09;牛牛的快递&#xff08;模拟&#xff09;最小花费爬楼梯&#xff08;动态规划&#xff09;数组中两个字符串的最小距离&#xff08;滑动窗口o…

智慧社区Web平台:Spring Boot技术实现

2相关技术 2.1 MYSQL数据库 MySQL是一个真正的多用户、多线程SQL数据库服务器。 是基于SQL的客户/服务器模式的关系数据库管理系统&#xff0c;它的有点有有功能强大、使用简单、管理方便、安全可靠性高、运行速度快、多线程、跨平台性、完全网络化、稳定性等&#xff0c;非常…

SQL进阶技巧:如何使数组中的固定参数动态化? | SQL中的滑动窗口如何实现?

目录 0 场景描述 1 数据准备 2 实现思路 问题2&#xff1a;如何动态获取年份&#xff0c;年份能够自动更新&#xff1f; 3 小结 如果觉得本文对你有帮助&#xff0c;想进一步学习SQL语言这门艺术的&#xff0c;那么不妨也可以选择去看看我的博客专栏 &#xff0c;部分内…

【高频SQL基础50题】46-50

SQL时刻。 目录 1.至少有5名直接下属的经理 2.确认率 3.游戏玩法分析 IV 4.部门工资前三高的所有员工 5.查找拥有有效邮箱的用户 1.至少有5名直接下属的经理 子查询。 1.先找出至少有5名直接下属的经理号managerId 2.根据经理号找到对应名字 # Write your MySQL query…