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

[工具探索]VSCode介绍和进阶使用

在这里插入图片描述

相比较GoLand、PhpStorm、PyCharm、WebStorm的重量级内存占用,从Windows系统来,各种卡死,换到MacOS倒不会卡死,但是内存占用太多,影响体验,决定换到VSCode。当然这个过程需要适应过渡期,旧伙计都属于JetBrains IDE,已经用习惯了,该新伙计VSCode交班了;

Visual Studio Code(简称 VSCode)是由 Microsoft 开发的一款免费、轻量级且功能丰富的开源代码编辑器。
它支持多种编程语言,具有强大的扩展性和用户友好的界面。以下是一些 VSCode 的特点以及与其他编辑器的区别:

安装

  • https://code.visualstudio.com/download

VSCode 特点:

  • 跨平台支持: VSCode 可以在 Windows、macOS 和 Linux 上运行,使其成为一个跨平台的编辑器。
  • 轻量级: VSCode 是一款相对轻量级的编辑器,启动速度快,占用系统资源相对较少。
  • 强大的扩展支持: VSCode 的扩展生态系统非常丰富,你可以根据需要安装各种插件,从而个性化和增强编辑器的功能。
  • 集成调试器: VSCode 内置了调试器,支持多种语言的调试,方便开发者进行代码调试。
  • Git 集成: 内置 Git 特性,可以直接在编辑器中进行版本控制和代码提交。
  • 智能代码补全和建议: 借助于 IntelliSense 技术,VSCode 提供了强大的代码补全和智能建议功能,提高了编码效率。
  • 多窗口支持: 支持分割窗口,使得在一个编辑器中同时查看和编辑多个文件变得更加方便。
  • 自定义主题和设置: 可以根据个人喜好选择不同的主题,并根据需要配置各种设置。

与其他编辑器的区别:

  • 轻量级 vs. 重量级: 相对于一些重量级的集成开发环境(IDE)如 Eclipse 和 IntelliJ IDEA,VSCode 更轻量,启动更快。
  • 扩展生态系统: VSCode 的插件生态系统非常庞大,各类扩展插件让你可以根据自己的需求灵活地定制编辑器。这点在一些传统编辑器上可能需要额外的插件或者较为繁琐的配置。
  • 社区活跃度: VSCode 的开发社区非常活跃,新的特性和插件不断涌现,问题能够得到迅速解决。这使得 VSCode 变得更具有前瞻性和持续性。

插件

  • 最好不去装中文包,要让自己熟悉英文的环境

VSCode最有意思的就是玩插件,以下常用的插件罗列:

1、VS Code Counter
该插件用于帮助我们统计项目代码的行数,安装插件后,先选中需要进行代码统计的代码文件夹,然后鼠标右键点击唤出菜单,选择“Count lines in directory”,该扩展就是自动生产一个 .VSCodeCounter 的文件夹。

2、Code Spell Checker
Code Spell Checker插件是是一个拼写检查工具,用于在 VSCode编辑器中检查代码拼写错误。它可以在你编写代码时,自动检测变量、函数、注释等文本内容的拼写错误,并给出错误提示。这样可以有效避免拼写错误造成的代码错误和不必要的麻烦。此外,CodeSpell Checker 也支持自定义词典,可以添加项目特定的术语和缩写,使其能够更好地适应不同的项目需求。

3、Codelf

该插件可以帮助开发者更快、更准确地搜索项目中的变量名、函数名等等。
Codelf 的主要功能包括:

  • 帮助开发者快速搜索命名示例
  • 自动完成和智能联想
  • 支持多种语言和框架

4、Github Copilot

GitHub Copilot 是由 GitHub 和 OpenAI 共同开发的一款 AI 代码助手,作为 VSCode 的一款插件,它可以为开发者提供高效、智能的代码提示和补全功能。使用该插件,开发者可以在编写代码的同时,自动获得最优秀、最合适的代码段和建议,从而显著提高编码效率和代码质量。

GitHub Copilot 的主要特点包括:

  • 智能代码预测和补全功能,支持多种编程语言和框架。
  • 可以根据上下文环境自动生成最优代码段和建议。
  • 支持自定义代码片段和广泛的 AI 库。

5、Git Graph

Git Graph 插件用于可视化查看存储库的 Git 操作,并从图形中轻松执行Git操作。类似于SOurceTree的可视化版本控制插件,可以更新、提交代码,查看提交记录,审视代码。

6、Git History

该插件用于查看 Git 日志和文件历史记录并比较分支或提交。

7、Project Manager

该插件可以帮助我们方便的管理多个项目,支持快速的在多个项目间切换工程,如果你在日常开发中需要进行多项目的管理那用它就对了。

8、Indent-rainbow
让缩进带有颜色,再也不用担心被Python的换行符坑了

9、Material Icon Theme
让文件夹带上图标,再也不枯燥了

10、Git Blame
看看这一行是谁写的代码

11、Image preview
图片预览,可以更好查看markdown中引入图片

12、vscode-live2d(谨慎-踩坑)

安装后你就黑屏,还影响敲代码,没有体验感,本来想玩玩,结果浪费时间
当你装上踩坑后按照下边步骤即可处理:

找到你的VSCode文件,进入到具体文件内,我的路径如下:
~/Documents/softwares/Visual Studio Code.app/Contents/Resources/app/out/vs/code/electron-sandbox/workbench

# cd workbench.html,将 loader.js屏蔽即可,不要删除该插件原始文件,也会打不开黑屏<script src="../../../../bootstrap.js"></script>
<!-- <script src="../../../../vs/loader.js"></script> -->
<script src="../../../../bootstrap-window.js"></script>

参考:https://github.com/iCharlesZ/vscode-live2d/issues/35

13、Docker
兼容docker容器插件
Makes it easy to create, manage, and debug containerized applications.

14、Eclipse Keymap
用习惯了eclipse 快捷键,就需要一个过渡插件

15、Notes
Notes is a Markdown focused notes extension

参考

  • https://github.com/Microsoft/vscode
  • https://zh.wikipedia.org/wiki/%E9%9B%86%E6%88%90%E5%BC%80%E5%8F%91%E7%8E%AF%E5%A2%83

相关文章:

[工具探索]VSCode介绍和进阶使用

相比较GoLand、PhpStorm、PyCharm、WebStorm的重量级内存占用&#xff0c;从Windows系统来&#xff0c;各种卡死&#xff0c;换到MacOS倒不会卡死&#xff0c;但是内存占用太多&#xff0c;影响体验&#xff0c;决定换到VSCode。当然这个过程需要适应过渡期&#xff0c;旧伙计都…...

Oracle迁移到mysql-表结构的坑

1.mysql中id自增字段必须是整数类型 id BIGINT AUTO_INCREMENT not null, 2.VARCHAR2改为VARCHAR 3.NUMBER(16)改为decimal(16,0) 4.date改为datetime 5.mysql范围分区必须int格式&#xff0c;不能list类型 ERROR 1697 (HY000): VALUES value for partition …...

【SpringCloudAlibaba系列--nacos配置中心】

Nacos做注册中心以及使用docker部署nacos集群的博客在这&#xff1a; 容器化部署Nacos&#xff1a;从环境准备到启动 容器化nacos部署并实现服务发现(gradle) 使用docker部署nacos分布式集群 下面介绍如何使用nacos做配置中心 首先要进行nacos-config的引入&#xff0c;引入…...

使用LinkedList实现堆栈及Set集合特点、遍历方式、常见实现类

目录 一、使用LinkedList实现堆栈 堆栈 LinkedList实现堆栈 二、集合框架 三、Set集合 1.特点 2.遍历方式 3.常见实现类 HashSet LinkedHashSet TreeSet 一、使用LinkedList实现堆栈 堆栈 堆栈&#xff08;stack&#xff09;是一种常见的数据结构&#xff0c;一端…...

springboot-cache+redis 为指定名称缓存设置独立超时时间

版本 spring-boot: 3.2.2 方案 注册 RedisCacheManagerBuilderCustomizer Bean对指定名称缓存进行定制 Bean RedisCacheManagerBuilderCustomizer redisCacheManagerBuilderCustomizer() {return builder -> builder.withCacheConfiguration(// Cacheable 注解使用的cac…...

Flutter 数据持久化存储之Hive

Flutter 数据持久化存储之Hive 前言正文一、配置项目二、UI① 增加UI② 显示和删除UI 三、使用Hive① 初始化Hive② TypeAdapter自定义对象③ 注册TypeAdapter③ CURD 四、源码 前言 在Flutter中&#xff0c;有多种方式可以进行数据持久化存储。以下是一些常见的方式&#xff1…...

Java中继承静态属性,方法,和非静态属性和方法的继承区别

结论&#xff1a; Java中静态属性和静态方法是可以被继承的&#xff0c;但是不可以被重写&#xff0c;而是被隐藏。 Java中非静态属性&#xff0c;可以被继承&#xff0c;但是不可以被重写&#xff0c;而是被隐藏。 Java中非静态方法&#xff0c;可以被继承&#xff0c;可以…...

C# If与Switch的区别

在 switch 语句中使用表达式比较时&#xff0c;编译器会生成一个查找表&#xff0c;其中包含所有表达式的值和对应的 case 标签。因此&#xff0c;与使用常量或字面量比较相比&#xff0c;使用表达式比较可能会略微降低性能。 只有当 switch 语句中的所有 case 标签都使用常量或…...

实验室预约|实验室预约小程序|基于微信小程序的实验室预约管理系统设计与实现(源码+数据库+文档)

实验室预约小程序目录 目录 基于微信小程序的实验室预约管理系统设计与实现 一、前言 二、系统功能设计 三、系统实现 1、微信小程序前台 2、管理员后台 &#xff08;1&#xff09;管理员登录 &#xff08;2&#xff09;实验室管理 &#xff08;3&#xff09;公告信息…...

蓝桥杯DP算法——区间DP(C++)

根据题意要求的是将石子合并的最小权值&#xff0c;我们可以根据DP思想使用二维数组f[i,j]来存放所有从第i堆石子到第j堆石子合并成一堆石子的合并方式。 然后由第二个图所示&#xff0c;我们可以将i到j区间分成两个区间&#xff0c;因为将i到j合并成一个区间的前一步一定是合…...

pytest结合Allure生成测试报告

文章目录 1.Allure配置安装2.使用基本命令报告美化1.**前置条件**2.**用例步骤****3.标题和描述****4.用例优先级**3.进阶用法allure+parametrize参数化parametrize+idsparametrize+@allure.title()4.动态化参数5.环境信息**方式一****方式二**6.用例失败截图1.Allure配置安装 …...

Linux--ACL权限管理

一.ACL权限管理简介 ACL&#xff08;Access Control List&#xff0c;访问控制列表&#xff09;是一种文件权限管理机制&#xff0c;它提供了比传统的UGO&#xff08;用户、组、其他&#xff09;权限更灵活的权限设置方式。以下是ACL的一些主要功能&#xff1a; 针对特定用户或…...

Xcode中App图标和APP名称的修改

修改图标 选择Assets文件 ——> 点击Applcon 换App图标 修改名称 点击项目名 ——> General ——> Display Name...

Spring 手动实现Spring底层机制

目录 一、前言 二、Spring底层整体架构 1.准备工作 : 2.架构分析 : &#xff08;重要&#xff09; 3.环境搭建 &#xff1a; 三、手动实现Spring容器结构 1.自定义注解 : 1.1 Component注解 1.2 Scope注解 2.自定义组件 : 3.自定义用于封装Bean信息的BeanDefinition类&a…...

CSV数据导入到ClickHouse数据库

问题描述&#xff1a;手头上有一个数据量较大的CSV文件&#xff0c;希望导入到指定的ClickHouse数据中&#xff0c;ClickHouse部署在服务器中。 解决方案&#xff1a;通常来说&#xff0c;数据量较少的CSV文件可以直接通过DBeaver软件的可视化界面导入数据。 若数据量较大&…...

第十二天-ppt的操作

目录 创建ppt文档 安装 使用 段落的使用 段落添加数据 段落中定义多个段落 自定义段落 ppt插入表表格 PPT插入图片 读取ppt 读取ppt整体对象 ​编辑 获取ppt文本 获取表格内容 创建ppt文档 安装 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple python…...

计算机网络-网络层,运输层,应用层

网络层/网际层 网络层的主要任务包括&#xff1a; 提供逻辑上的端到端通信&#xff1a;网络层负责确定数据的传输路径&#xff0c;使数据能够从源主机传输到目标主机&#xff0c;即实现端到端的通信。数据包的路由和转发&#xff1a;网络层根据目标主机的地址信息&#xff0c…...

Python爬虫学习

1.1搭建爬虫程序开发环境 爬取未来七天天气预报 from bs4 import BeautifulSoup from bs4 import UnicodeDammit import urllib.request url"http://www.weather.com.cn/weather/101120901.shtml" try:headers{"User-Agent":"Mozilla/5.0 (Windows …...

台式电脑黑屏无法开机怎么办 电脑开机黑屏的解决方法

经常有朋友电脑一开机&#xff0c;发现电脑黑屏没法用了。很多人看到黑屏就懵了&#xff0c;以为电脑要报废了&#xff0c;这是什么原因?电脑开机黑屏怎么解决?一般常说的黑屏故障分为两种&#xff0c;显示屏没有任何显示以及显示英文。下面小编要为大家带来的是台式电脑黑屏…...

【Docker】初学者 Docker 基础操作指南:从拉取镜像到运行、停止、删除容器

在现代软件开发和部署中&#xff0c;容器化技术已经成为一种常见的方式&#xff0c;它能够提供一种轻量级、可移植和可扩展的应用程序打包和部署解决方案。Docker 是目前最流行的容器化平台之一&#xff0c;它提供了一整套工具和技术&#xff0c;使得容器的创建、运行和管理变得…...

终极指南:30分钟打造你的首个ESP32 AI智能硬件项目

终极指南&#xff1a;30分钟打造你的首个ESP32 AI智能硬件项目 【免费下载链接】xiaozhi-esp32 An MCP-based chatbot | 一个基于MCP的聊天机器人 项目地址: https://gitcode.com/GitHub_Trending/xia/xiaozhi-esp32 还在为嵌入式AI开发的高门槛而烦恼吗&#xff1f;物联…...

Qwen2.5-0.5B手机AI入门:从下载到对话,30分钟全搞定

Qwen2.5-0.5B手机AI入门&#xff1a;从下载到对话&#xff0c;30分钟全搞定 1. 为什么选择Qwen2.5-0.5B-Instruct&#xff1f; 在移动设备上运行AI大模型听起来像是科幻场景&#xff0c;但Qwen2.5-0.5B-Instruct让它变成了现实。这个由阿里通义实验室开源的轻量级语言模型&am…...

聚焦18650电池点焊机:新能源产业焊接环节的核心设备

在新能源产业高速发展的当下&#xff0c;18650锂电池凭借其高能量密度、长循环寿命及稳定性能&#xff0c;成为电动汽车、储能系统、便携电子设备等领域的核心动力源。作为电池组装环节的关键设备&#xff0c;18650单节自动点焊机通过精密的焊接技术&#xff0c;将电池极耳与镍…...

PyTorch 2.8镜像实战落地:教育机构AI教学平台(图文+视频+LLM)集成方案

PyTorch 2.8镜像实战落地&#xff1a;教育机构AI教学平台&#xff08;图文视频LLM&#xff09;集成方案 1. 教育AI平台的技术挑战与解决方案 现代教育机构在构建AI教学平台时面临三大技术难题&#xff1a;多模态内容生成、算力资源管理和教学场景适配。PyTorch 2.8深度学习镜…...

基于S7-200 PLC和MCGS组态的灌装贴标生产线系统:带解释的梯形图程序、接线图原理图图...

基于S7-200 PLC和MCGS组态的灌装贴标生产线系统 带解释的梯形图接线图原理图图纸&#xff0c;io分配&#xff0c;组态画面车间里那台老灌装线最近被我折腾得焕然一新&#xff0c;用S7-200 PLC搭配MCGS组态搞了个自动化改造。这活儿干下来发现几个关键点特别有意思&#xff0c;尤…...

AI正冲击金融岗!高薪职业如何守住饭碗?金融人转行AI指南

AI技术正全面冲击金融行业&#xff0c;初级分析师、风控专员、客服等中低端认知劳动密集型岗位面临被替代风险。但高端投行、深度研究、资源型和创新型岗位短期内仍安全。金融人转型AI有独特优势&#xff0c;如数据敏感性、业务理解力等。转型路径包括AI应用专家、金融科技产品…...

新能源车BMS低压管理避坑指南:如何解决上下电时序中的典型问题

新能源车BMS低压管理避坑指南&#xff1a;如何解决上下电时序中的典型问题 在新能源汽车的电池管理系统&#xff08;BMS&#xff09;开发中&#xff0c;低压上下电时序控制是确保系统稳定运行的关键环节。许多开发团队在实际项目中都会遇到信号冲突、时序错乱、异常处理机制不完…...

LumiPixel Canvas Quest集成Vue.js:打造动态人像画廊管理后台

LumiPixel Canvas Quest集成Vue.js&#xff1a;打造动态人像画廊管理后台 1. 项目背景与需求分析 在数字内容创作领域&#xff0c;AI生成人像正成为设计师和内容创作者的重要工具。传统人工绘制方式耗时费力&#xff0c;而直接使用AI生成工具又缺乏系统化管理。我们团队最近用…...

从‘够用’到‘好用’:聊聊Artix-7 FPGA在工业视频处理中的那些‘甜点’级设计

从‘够用’到‘好用’&#xff1a;Artix-7 FPGA在工业视频处理中的设计哲学 工业视频处理领域正经历一场静默的革命——当4K/8K超高清、120fps高帧率成为行业热词时&#xff0c;真正推动生产线变革的却是那些在成本与性能间找到完美平衡点的解决方案。Artix-7系列FPGA&#xf…...

【实战指南】解决Qt平台插件加载失败:从环境变量到PyQt5重装的完整方案

1. 遇到Qt平台插件加载失败&#xff1f;别慌&#xff0c;先看懂报错信息 最近在Windows上跑labelimg标注工具时&#xff0c;突然弹出一个让人头疼的错误&#xff1a; qt.qpa.plugin: Could not load the Qt platform plugin "windows" in "" even though…...