VScode 自定义代码配色方案

news2024/10/3 6:39:13

vscode是一款高度自定义配置的编辑器, 我们来看看如何使用它自定义配色吧

首先自定义代码配色是什么呢? 看看我的代码界面

简而言之, 就是给你的代码的不同语义(类名, 函数名, 关键字, 变量)等设置不同的颜色, 使得代码的可读性变强.

其实很多主题已经给出了定制好的配色方案, 但是其颜色区别得不够细, 注意, 我认为代码颜色区别地更多绝不仅仅为了好看, 显得花里胡哨等等. 我举个例子, 目前大部分主题都没区别函数临时变量类成员变量类静态变量等, 如果给与颜色上的区别, 能使得代码更有区分度, 减少犯低级错误的概率.

下面是详细的配色方法:

打开settings.json文件, 可以本目录的settings.json文件(在.vscode文件夹中), 也可以是全局的settings.json文件(快捷键ctrl+shift+P, 搜索settings, 选择首选项:打开用户设置(JSON), 通常路径为C:/Users/[此电脑用户名]/AppData/Roaming/Code/User/settings.json)

在json文件添加与下面类似的项:

{
    "editor.tokenColorCustomizations": { // 自定义编辑器的token颜色设置
        "[Ayu Mirage Bordered]": { // 在某个主题上修改, 我这个主题为Ayu, 可以在插件中搜索下载
            "comments": { // 注释
                "fontStyle": ""
            },
            "types": {
                "fontStyle": "bold",
                "foreground": "#2791ed"
            }, // 类型(类名, 枚举名等)名
            "keywords": "#bac520", // 关键字
            "strings": { // 字符串
                "foreground": "#8bbd5a"
            },
            "functions": "#beec4f", // 函数名
            "textMateRules": [ // 这里是自定义一些规则
                {
                    "scope": "keyword.control", // if ,else, try 等控制符
                    "settings": {
                        "foreground": "#3da369"
                    }
                },
                {
                    "scope": "variable.other.property", // 类的属性(成员变量)
                    "settings": {
                        "foreground": "#5fa4da"
                    }
                },
                {
                    "scope": "string.regexp", // 字符串的正则表达式部分
                    "settings": {
                        "foreground": "#7bb4e0"
                    }
                }
            ]
        }
    }
}

其中"comment", "type", "keyword"都是很粗粒度的token定义, 而textMateRules部分则是相加详细的细粒度token定义.

例如keyword.control表示控制相关的关键字, variable.other.property表示类中的属性变量名

那么重点来了, 如何获取这些规则的名称呢, 例如枚举中的枚举常量, 如何知道它的token名称呢?

按照官网的方法, 我们先绑定一个快捷键, 这个快捷键是为了找到某个代码中某个token对应的名字, 用ctrl+shift+P, 搜索keyborad, 选择首选项:打开键盘快捷方式, 搜索inspectTMScopes, 设置下面这个快捷键, 我设置的是ctrl+shift+i

将鼠标放在代码的某个token上, 按下快捷键, 就能获取这个token的名字了

然后在settings.json中的textMateRules部分进行设置就行了!

如果有选择恐惧症, 也可以使用我上面配置好的方案~

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

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

相关文章

「C++系列」预处理器

【人工智能教程】,前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。 点击跳转到网站:【人工智能教程】 文章目录 一、预处理器1. 宏定义(Macro Definition)2…

【EXCEL数据处理】000013 案例 EXCEL筛选与高级筛选。

前言:哈喽,大家好,今天给大家分享一篇文章!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 💕 目录 【EXCEL数据处理】000013 案例 EXCEL筛选与高级筛选。使用的软件&#…

【C语言】数组(下)

6、二维数组的创建 6.1二维数组的概念 通过数组(上)介绍,我们学习了一维数组,数组的元素都是内置类型的,如果我们把一维数组作为数组的元素,这时就是二维数组,以此类推,如果把二维…

基于单片机跑步机控制系统设计

** 文章目录 前言概要功能设计设计思路 软件设计效果图 程序文章目录 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师,一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设计 主要对…

【嵌入式裸机开发】智能家居入门3(MQTT服务器、MQTT协议、微信小程序、STM32)

前面已经写了两篇博客关于智能家居的,服务器全都是使用ONENET中国移动,他最大的优点就是作为数据收发的中转站是免费的。本篇使用专门适配MQTT协议的MQTT服务器,有公用的,也可以自己搭建 前言一、项目总览二、总体流程分析1、了解…

海外合规|新加坡推出智慧国2.0计划 设新网络安全与保障机构

智慧国2.0计划:政府将成立新机构杜绝网络伤害和援助受害者。政府将成立新机构,并制定新法令,以杜绝网络伤害行为和为受害者提供更多援助与保障。新加坡总理兼财政部长黄循财星期二(10月1日)在推介晚宴上,宣…

基于单片机的花色可调跑马灯设计

**基于单片机频率花色可调跑马灯 文章目录 前言概要设计思路 软件设计效果图 程序文章目录 前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师,一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/A…

51c自动驾驶~合集1

我自己的原文哦~ https://blog.51cto.com/whaosoft/11466109 #HTCL 超过所有视觉方案!HTCL:分层时间上下文问鼎OCC 本文是对ECCV2024接受的文章 HTCL: 的介绍,HTCL在SemanticKITTI基准测试中超过了所有基于相机的方法,甚至在和…

在pycharm中使用PySpark 出现Java gateway process exited before sending its port number.

# 原因是没有下载Java(jdk) 程序出现下面错误: 解决办法: 1、2、3、先点击“” ,添加这一行,点击确定即可。再次之前先判断你电脑上没有jdk,有的话,直接添加,也可以手动…

国庆节快乐前端(HTML+CSS+JavaScript+BootStrap.min.css)

一、效果展示 二、制作缘由 最近,到了国庆节,自己呆在学校当守校人,太无聊了,顺便做一个小demo帮祖国目前庆生!!! 三、项目目录结构 四、准备工作 (1)新建好对应的文件目录 为了方便&#xff…

【超详细】Python、JDK、vscode安装

Python 下载 首先去Python官网下载安装程序Python官网,鼠标悬浮到Download后选择推荐的Python版本(笔者为Windows系统故选择Windows版本安装程序) 之后点击打开文件,或者点击文件的图标打开下载的目录,打开下载好的安装程序 安装 首先勾…

测试-----BUG篇

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 软件测试的生命周期bug的概念描述bugbug的级别bug的生命周期 软件测试的生命周期 软件测试贯穿与软件的整个生命周期,它的具体流程是: 1.需求分析 2.测…

【初阶数据结构】排序——归并排序

目录 前言归并排序归并排序的非递归写法计数排序排序总结 前言 对于常见的排序算法有以下几种: 前面我们已经学习了: 【初阶数据结构】排序——插入排序【初阶数据结构】排序——选择排序【初阶数据结构】排序——交换排序 下面这节我们来看最后一个…

基于SSM的O20兼职系统的设计与实现(源码+定制+文档)

博主介绍: ✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台…

P1010 [NOIP1998 普及组] 幂次方 Python题解

[NOIP1998 普及组] 幂次方 题目描述 任何一个正整数都可以用 2 2 2 的幂次方表示。例如 137 2 7 2 3 2 0 1372^7 2^3 2^0 137272320。 同时约定次方用括号来表示,即 a b a^b ab 可表示为 a ( b ) a(b) a(b)。 由此可知, 137 137 137 可表示…

光通信——PON系统典型组网

PON系统可同时承载包括Internet上网、VoIP语音、IPTV视频、TDM数据专线、以太网专线、基站回传等业务在内的多种业务,实现全业务承载,此外,还可通过三波方案承载CATV业务,实现“三网融合” 。 CATV(Community Antenna…

数字控制系统

目录 两轮自平衡式机器人的控制器设计 TMS320F28069 芯片特点 处理器引脚及功能 首先分析模型来确定控制原理 速度控制器 方向控制器 系统控制框架 智能平衡移动机器人PID控制 两轮自平衡式机器人的控制器设计 由于两轮自平衡式机器人的自不稳定性,控制起来…

吴恩达深度学习笔记:卷积神经网络(Foundations of Convolutional Neural Networks)2.7-2.8

目录 第四门课 卷积神经网络(Convolutional Neural Networks)第二周 深度卷积网络:实例探究(Deep convolutional models: case studies)2.7 Inception 网络(Inception network)2.8 使 用 开 源 …

C++容器之list基本使用

目录 前言 一、list的介绍? 二、使用 1.list的构造 2.list iterator的使用 3.list capacity 🥇 empty 🥇size 4.list element access 🥇 front 🥇 back 5.list modifiers 🥇 push_front 🥇 po…

Apache POI 2024/10/2

导入Apache POI的maven坐标 通过POI向Excel文件写入文件内容 package com.sky.test;import org.apache.poi.xssf.usermodel.XSSFRow; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook;import java.io.File; import java.…