【vim】Darcula 配色设置

news2024/9/21 18:49:53

因为本人一直习惯了用 Jetbrains 家的产品,而且一直独钟 Dracula 配色,因此想要在 Git Bash 中为 vim 配一款 Dracula 配色。本博客将详细介绍如何为 vim 配置暗系主题 Dracula。

一、安装 Dracula

在 Dracula 的官网其实已经给出了关于如何在 vim 中配置 Dracula 的方案:Dark theme for Vim and 294+ apps。

  1. 打开 Git Bash,通过 pwd 命令可以看到当前处于 home 目录(~)。接下来,首先在本地创建一个文件夹用于存储 Github 仓库并进到该文件夹。
mkdir -p ~/.vim/pack/themes/start
cd ~/.vim/pack/themes/start
  1. 将仓库克隆到本地,命名为 “dracula”。
git clone https://github.com/dracula/vim.git dracula
  1. 更改自己本地的 .vimrc 文件(通常位于 ~/.vim/vimrc~/.vimrc),添加以下内容:
packadd! dracula
syntax enable
colorscheme dracula

此时,再随意通过 vim 打开一个文件查看,可以发现已经成功应用了对应配色。
在这里插入图片描述

*二、去除 Darcula 背景配色

但是有些朋友可能像我一样设置了 terminal 的背景图片,这个时候会与 vim 的 Dracula 配色发生冲突。事实上,Dracula 提供了高度的自由度,允许用户在本地自定义对应配色,甚至提供了一个 doc 文档为你提供一些最基本的指导。
在这里插入图片描述
其中,darcula-configuration 一栏就为你提供了一些可供自定义的选项指导。

91dffdab8263bb29.png)
在这里插入图片描述

不难发现,想要解决上述所说的背景配色和终端设置的背景图片冲突的问题,只需在该行出现的地方将这一项的值设置为 0 即可。
在这里插入图片描述
于是我们可以在仓库中全局搜索一下包含这一行代码的文件。
在这里插入图片描述
发现该行代码在 colors/dracula.vim 中出现,因此对该文件进行编辑,找到对应行进行修改即可。
在这里插入图片描述
折叠行可在 normal mode 下通过 zo 展开。
在这里插入图片描述
1 修改为 0,保存退出,发现此时 Dracula 的背景配色已经去除,可以直接看到 terminal 设置的背景图片了。
在这里插入图片描述

三、*去除状态栏背景配色

然而作为一名强迫症患者,本人此时还是对下面这栏格格不入的状态栏看着非常不顺眼,想要将其背景配色去掉,历经一个多小时的源代码 sourcing 后终于找到了相关解决方案。同样对 colors/dracula.vim 文件进行编辑,在 line 222 将绿色框内的内容替换为红色框内的内容(如果没猜错的话 fg 的意思是取用前景色配置)。

在这里插入图片描述
在完成上述操作后,就会发现状态栏变成透明的颜色了,完美融入 terminal 的背景图片!
在这里插入图片描述

四、*去除折叠行配色

然而,折叠行还是有背景配色,看着很不爽啊喂!于是一不做二不休俺又去找了跟这部分相关的代码,跟我一样同样有强迫症的朋友请继续往下翻看解决方案。

首先在 colors/dracula.vim 中找到关于折叠行相关的代码。
在这里插入图片描述
可以猜测折叠行的风格格式用的是 DraculaBoundary 这种风格,而我们在当前文件中搜索 DraculaBoundary,可以看到它的风格设置为:文字采用跟 comment(注释)相同的风格,而背景采用黑色,这也就是为什么一开始我们看到 vim 中的折叠行是紫色文字、黑色背景的原因了。

在这里插入图片描述
从这组代码开头的注释中可以看出该部分是对 Dracula 高亮的调用,因此大家可以在此选择喜欢的高亮风格将 line 242 的代码替换即可,而本人希望继续保留和注释相同的文字风格,但去掉黑色背景,因此选择了 line 158DraculaComment 风格来替换原先的代码。

在这里插入图片描述
由此,我就成功重设了关于折叠行的高亮风格。
在这里插入图片描述
重新打开 vim,可以发现事情确实朝着预料中的方向发展了在这里插入图片描述

五、*去除光标行背景颜色

注释 colors/dracula.vim 第 228 行。

在这里插入图片描述

六、*修复 Windows 下 vim 光标异常问题

在 Windows 中 vim 光标一直显示为一条竖线,不方便查看光标实际位置,可通过向 .vimrc 中添加以下内容进行修复。

if &term =~ "xterm"
    let &t_SI = "\<Esc>[6 q"
    let &t_SR = "\<Esc>[3 q"
    let &t_EI = "\<Esc>[2 q"
endif

最后,呈现在我们面前的就是拥有精美配色的 vim 编辑器了,简直迫不及待想上手撸代码啦!!!

在这里插入图片描述

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

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

相关文章

夯实算法-课程表

题目&#xff1a;LeetCode 你这个学期必须选修 numCourses 门课程&#xff0c;记为 0 到 numCourses - 1 。 在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出&#xff0c;其中 prerequisites[i] [ai, bi] &#xff0c;表示如果要学习课程 ai 则 必…

Linux系统编程5——Socket编程(网络通信)

文章目录前言一、套接字二、基础知识三、网络套接字函数3.1、struct sockaddr3.2、socket函数3.3、bind函数3.4、listen函数3.5、accept函数3.6、connect函数3.7、读取/发送数据函数3.8 客户端服务器通信demo四、select函数1、TCP状态简介2、端口复用2.1、setsockopt函数3、半关…

云之道知识付费v1.5.4小程序+前端(含pc付费插件)

内容目录一、详细介绍二、效果展示1.部分代码2.效果图展示三、学习资料下载一、详细介绍 云之道知识付费v1.5.4小程序前端&#xff08;含pc付费插件&#xff09; 版本号&#xff1a;1.5.4 – 商用无限开 无需重新上传小程序 【修复】上一版本公众号版本打开白屏问题 版本号&a…

【C语言】函数三要素,变量作用域、生存周期、存储类型

目录 写在前面 一、函数的用法 1、声明 2、调用 3、定义 形参与实参类型不一致 形参与实参类型一致 函数值类型与返回值类型不一致 函数值类型与返回值类型一致 二、变量的作用域与生存周期 三、变量的储存类型&#xff08;auto,extern,static,register&#xff09;…

AI虚拟人千亿级市场来袭,景联文科技提供全方面数据采集标注服务

“AI虚拟人通过语音、文字、视觉的理解和生成&#xff0c;结合动作识别、环境感知等多种方式可与人进行互动。AI虚拟人中运用到的强大算法需要高质量标注数据不断对其进行优化训练&#xff0c;景联文科技提供全方面数据采集标注服务。” 11月18日&#xff0c;科大讯飞在第五届世…

行为型模式 - 访问者模式Visitor

学习而来&#xff0c;代码是自己敲的。也有些自己的理解在里边&#xff0c;有问题希望大家指出。 行为型模式&#xff0c;我之所以把他放到第一个&#xff0c;是因为它号称是GoF中最难的一个。 模式的定义与特点 在访问者模式中&#xff08;Visitor Pattern&#xff09;中&…

pandasGUI:一款开源的功能异常强大的数据可视化分析工具

在很早之前关于可视化的描述中&#xff0c;我们介绍过一款D-table的数据分析操作工具。和D-table的操作相似&#xff0c;还有一款pandasGUI的开源工具更加强势。 Pandasgui是一个开源的python模块&#xff0c;它为pandas创建了一个GUI界面&#xff0c;我们可以在其中使用panda…

Impact of Problem Decomposition on Cooperative Coevolution

0、论文背景 本文在CCVIL的基础上&#xff0c;讨论了问题的分解效果对于CC框架的影响。由于VIL本身是一项计算成本昂贵的任务&#xff0c;因此应该避免在VIL上花费过多的时间而对CCEA没有显著的好处。我们进行实证研究来解决三个密切相关的问题&#xff1a; 1)更好的问题分解会…

STC 51单片机58——旋转LED

STC11F LED部分&#xff1a; #include "STC11.h" #define u8 unsigned char #define u16 unsigned int //全亮 //u8 code Picture1[8]{0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f} ; //u8 code Picture2[8]{0xe7,0xdb,0xbd,0x7e,0x7e,0xbd,0xdb,0xe7}; //u8 code P…

阿里云的工程师又闯祸了,github上紧急修复

最近不少用户使用阿里云提供的测试用例出现了被删除了用户目录下的所有文件&#xff0c;项目地址是&#xff1a;https://github.com/aliyun/aliyun-clialiyun-cli/cli/completion_installer_test.goLines 87 to 99 in 550ccb6path : filepath.Join(u.HomeDir, ".bashrc&qu…

求知 | 聊聊Android资源加载那些事 - Resource的初始化

Hi,你好 &#x1f603; 引言 在上一篇&#xff0c;求知 | 聊聊Android资源加载的那些事 - 小试牛刀 中&#xff0c;我们通过探讨 Resource.getx() ,从而解释了相关方法的背后实现, 明白了那些我们日常调用方法的背后实现。 那么&#xff0c;不知道你有没有好奇 context.reso…

【蓝桥杯国赛真题07】python杨辉三角形 蓝桥杯青少年组python编程 蓝桥杯国赛真题解析

目录 python杨辉三角 一、题目要求 1、提示信息 2、编程实现 3、输入输出

蓝桥杯嵌入式Debug

文章目录前言一、Debug是什么二、如何调试1.重要调试按键介绍2.其他按键介绍三、监视变量窗口总结前言 这一篇文章是非常重要的&#xff0c;掌握了这篇文章有助于大家在比赛中快速找到错误。 一、Debug是什么 Debug是一种程序&#xff0c;一种调试工具&#xff0c;说白了就是…

Elasticsearch:如何在 Elastic Agents 中配置 Beats 来采集定制日志

在我之前的文章 “Observability&#xff1a;使用 Elastic Agent 来摄入日志及指标 - Elastic Stack 8.0”&#xff0c;我详细地描述了如何安装 Elasticsearch&#xff0c;Stack 及 Elastic Agents 来采集系统日志及指标。很多开发者可能会有疑问&#xff0c;在我们的实际使用中…

陈都灵《我们当打之年》热播《关索岭》上热搜,温州人爱望京卡牌

最近&#xff0c;电视连续剧《我们的当打之年》&#xff0c;正在各大卫视台热播&#xff0c;一起热起来的还有该剧主演陈都灵。说起主演陈都灵&#xff0c;她虽然不是正宗的电影学院科班出身&#xff0c;但是她的演技却透露着灵气&#xff0c;也给人以真实的感觉。 陈都灵无疑是…

[附源码]Python计算机毕业设计Django学习帮扶网站设计与实现

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;…

2023年哪些渲染器更好用?3D新手适合的渲染器汇总

现在很多人都使用3D软件来创作自己的作品&#xff0c;所以渲染器的使用必不可少。有许多流行的渲染器&#xff0c;包括 V-Ray、Octane、Arnold、Corona、RedShift。对于许多 3D 新手来说&#xff0c;哪种渲染器最好&#xff1f; 这些渲染器的原理基本相同&#xff0c;只是操作…

大学免费查题接口系统

大学免费查题接口系统 本平台优点&#xff1a; 多题库查题、独立后台、响应速度快、全网平台可查、功能最全&#xff01; 1.想要给自己的公众号获得查题接口&#xff0c;只需要两步&#xff01; 2.题库&#xff1a; 查题校园题库&#xff1a;查题校园题库后台&#xff08;点…

地图信息,障碍判断以及寻路算法(A星算法,B星算法和蚁群算法等)

一、广度优先遍历和深度优先遍历 在学习寻路算法之前,我们先来了解一下广度优先遍历和深度优先遍历. 什么是广度优先遍历? 广度优先遍历(breadth first search)是一个万能的算法. 广度优先是从初始状态一层一层向下找&#xff0c;直到找到目标为止。 广度优先遍历&#x…

Elasticsearch入门(一)基本介绍与安装

介绍&#xff1a; Elaticsearch&#xff1a;简称为 ES&#xff0c;ES 是一个开源的高扩展的分布式全文搜索引擎&#xff0c;是整个 Elastic Stack 技术栈的核心。它可以近乎实时的存储、检索数据&#xff1b;本身扩展性很好&#xff0c;可以扩展到上百台服务器&#xff0c;处理…