在 Git Bash 中为 vim 设置 Dracula 配色

news/2024/11/7 12:41:54/

因为本人一直习惯了用 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.ppmy.cn/news/2155.html

相关文章

2023最新SSM计算机毕业设计选题大全(附源码+LW)之java线上学习系统8e88w

毕业设计说实话没有想象当中的那么难&#xff0c;导师也不会说刻意就让你毕设不通过&#xff0c;不让你毕业啥的&#xff0c;你只要不是太过于离谱的&#xff0c;都能通过的。首先你得要对你在大学期间所学到的哪方面比较熟悉&#xff0c;语言比如JAVA、PHP等这些&#xff0c;数…

node开发MongoDB

MongoDB mongoDB中文文档 数据库简介 数据库&#xff1a;持久化存储数据的仓库 分类&#xff1a; 关系型数据库&#xff1a;mysql、oracle、sql server、db2 非关系型数据库&#xff1a;mongodb、redis MongoDB简介 文档数据库&#xff0c;类似json结构&#xff0c;存储各种…

基于Intel Lake-UP3平台的超声设备方案设计,提供出色的图形和AI性能

超声系统要求 有效的超声系统可加快诊断速度&#xff0c;并帮助医生更快做出更有效的治疗决策。 为此&#xff0c;超声机器要求极高的处理性能和图形渲染效果以提高诊断准确性&#xff0c;并立即获取精确的图像。 类似地&#xff0c;还需要易于移动以适应不断变化的医疗场景和…

新编译原理的草稿

经典编译原理似乎已经够用了&#xff0c;为什么要研究新编译原理呢&#xff1f;在四型文法中&#xff0c;只实现了前两型&#xff0c;现在用的编译原理&#xff0c;仍然是“上下文无关文法”。沿着文法产生式替换的思路走下去&#xff0c;很艰难&#xff0c;不如另辟蹊径&#…

可以作为艺术作品欣赏的CT三维重建技术。

什么是CT三维重建技术&#xff1a;简而言之就是通过螺旋CT自带的计算机软件&#xff0c;对扫描获得的数据进行后处理&#xff0c;以达到辅助医生对病变和周围组织&#xff0c;及其与血管的关系进行分析和显示的目的&#xff0c;它极大地提高了影像诊断的直观性&#xff0c;准确…

【MyBatis源码分析】六、MyBatis Plugins(拦截器)

六、MyBatis Plugins(拦截器) 文章目录 六、MyBatis Plugins(拦截器)拦截器的基本开发Plugins机制详解Plugins开发技巧prepare()Invocation与MetaObject开发打印Sql语句的Plugins应用场景Plugins实战开发分页插件的开发乐观锁的开发需求:如果我们要获得MyBatis在执行过程中…

第二证券|六大券商热议“第三支箭”:再融资重启修复市场预期

房地产利好方针接连出台&#xff0c;“第三支箭”为商场再添强心针。上星期&#xff0c;证监会决定在房地产股权融资方面调整优化五项办法。上市房企纷繁呼应&#xff0c;已有近10家房企火速筹划再融资。 时隔多年&#xff0c;监管再度重启房企股权融资&#xff0c;对房地产商场…

预训练模型之ELMO -《Deep contextualized word representations》论文笔记 + 高频面试题

&#x1f604; 无聊学学罢了&#xff0c;非常简单的一个模型吧&#xff0c;算是一个比较经典的模型。ELMO更多的像是一个承上启下的角色&#xff0c;对于我们去了解那些词向量模型的思想也是很有帮助的。但由于同期的BERT等模型过于耀眼&#xff0c;使得大家并不太了解ELMO。 &…