如何在Vim中更改颜色和主题
大家好,我是良许。
Vim是我们在Linux中非常常用的一款文本编辑器。Vim 是一款免费、开源的文本编辑器,它的功能和许多其他的文本编辑器大致相同,比如 Sublime 和 Notepad++ 。Vim既可以在命令行中执行,也可以在图形界面中操作。
Vim 的教程有很多,本文我们主要讲的是如何更改 Vim 的颜色和主题。
Vim 对于初学者来讲的话,其实不是非常友好。但如果你熟练使用了 Vim 之后,你就会发现,你再也离不开 Vim 了。

Vim的主题的什么东西?
所谓的主题,其实本质上就是一种配色方案,也就是一组具有美感的,在视觉上提升使用者的使用体验的色彩组合。Vim 编辑器本身也附带了一些现成的配色方案。
不过需要注意的这里描述的 Vim 配色方案是应用在代码上的,具体而言就是在代码的一些关键字上加上特定的颜色,不是应用在终端的背景颜色上的。
要查看当前的 Vim 的配色方案,在进入 Vim 的操作界面之后输入以下命令:
:colorscheme

要查看有哪些可用的默认配置方案,可以使用以下命令:
:colorscheme+空格+Tab
其实就是在空格之后多次点击 tab 键,切换到想设置的颜色然后回车进行设置。默认的配色方案有很多种,比如基本的有 红、蓝、黑灰,特殊的有 desert 等等。

下载自己喜欢的配色文案
如果不喜欢默认主题呢?我们可以到在 Github上找到很多不错的主题,而其中很多也可以通过 Vimcolors.com 来获取。其中有些主题不仅改变代码和语法的颜色,还会改变背景颜色。
找到自己喜欢的主题之后,可以用以下方式来将这些主题应用到你的 Vim 中。
- 首先创建一个 .vim 目录:
$ mkdir ~/.vim
- 然后使用以下命令将主题仓库克隆到自己的 .vim 文件夹中:
$ git clone <https://github.com/flazz/vim-colorschemes.git> ~/.vim
以上尖括号里的地址可能会根据主题项目而变。
- 进入 Vim 操作模式,使用之前的命令选择主题:
:colorscheme+空格+Tab
或者,你也可以直接指定主题,就不用一直敲 Tab 键了。
:colorscheme yourTheme
但是,这两个操作都不是永久的,你一旦关闭 Vim ,主题又将自动重置了。如果你需要将 Vim 的主题默认为你喜欢的主题,可以运行下面这条命令:
$ echo 'colorscheme <desert>' >> ~/.vimrc
选一个喜欢的主题
使用哪种主题完全取决于个人喜好,我个人喜欢使用颜色比较明亮的主题。有人喜欢黑色的主题,电影里的黑客常常就是用的那样的主题。也有人喜欢彩色的主题。
如果不确定要选择哪一种主题,这里有一些推荐的方案,可以参考一下。
童话花园 fairy-garden

冰河世纪 ice-age

忧郁 bluewery

synthwave84

anderson

你最喜欢哪种主题呢?留言告诉我吧~
公众号:良许Linux

有收获?希望老铁们来个三连击,给更多的人看到这篇文章
如何在Vim中更改颜色和主题的更多相关文章
- 如何在XCode中更改iPhone或iPad模拟器类型
如何在XCode中更改iPhone或iPad模拟器类型 参考方法一(永久,一旦设置后,每次运行指定的模拟器):(1)选择顶层菜单Project 中的 Set Active Executable(2)根 ...
- 如何在VIM中保存编辑的只读文件
我们经常碰到这样的情景:在VIM中编辑了一个系统配置文件,当需要保存时才发现当前的用户对该文件没有写入的权限, 这时候怎么办呢? 当需要保存时,输入以下的命令: :w !sudo tee %
- 如何在 Linux 中更改 swappiness
交换空间是 RAM 内存已满时使用的硬盘的一部分.交换空间可以是专用交换分区或交换文件.当 Linux 系统耗尽物理内存时,非活动页面将从 RAM 移动到交换空间.Swappiness 是一个 Lin ...
- 如何在MyEclipse中更改servlet模板 Jsp模板
http://blog.csdn.net/sjw890821sjw/article/details/6995190 刚换上Myeclipse9.0,结果要修改servlet模板的时候不像Myeclps ...
- 如何在vim中同时编辑多个文件
参考:http://stackoverflow.com/a/53668/941650 Why not use tabs (introduced in Vim 7)? You can switch be ...
- 如何在Vim中的查找替换
“%s/最/第二/g” 用vim的人都知道,这是把所有“最”替换成“第二”的意思.其实vim的查找替换功能非常强大,用的好可以极大提升效率. vim的查找替换命令如下所示: :{作用范围}s/{ ...
- jQuery如何在IE中更改网页标题
标准上来说,要改变title值要操作document而不是title节点.在IE下不能通过操作title节点来改变document.title. 本来用原生的JavaScript很简单就解决了: do ...
- vi/vim使用进阶: 在VIM中使用GDB调试 – 使用vimgdb
vi/vim使用进阶: 在VIM中使用GDB调试 – 使用vimgdb << 返回vim使用进阶: 目录 本节所用命令的帮助入口: :help vimgdb 在UNIX系统最初设计时,有一 ...
- 在vim中插入命令行的输出结果
vim是linux中常见的编辑器,这里讲讲如何在vim中插入命令行的输出结果. 基本用法: 在指令模式下运行 :!command ,如!date将日期显示在vim底部,!ls列出当前目录 将命令结果插 ...
随机推荐
- 【Hadoop高级】Hadoop HA、hdfs安全模式
Hadoop HA Safemode(安全模式) During start up the NameNode loads the file system state from the fsimage a ...
- Java实现 LeetCode 657 机器人能否返回原点(暴力大法)
657. 机器人能否返回原点 在二维平面上,有一个机器人从原点 (0, 0) 开始.给出它的移动顺序,判断这个机器人在完成移动后是否在 (0, 0) 处结束. 移动顺序由字符串表示.字符 move[i ...
- Java实现 蓝桥杯VIP 算法训练 P1102
定义一个学生结构体类型student,包括4个字段,姓名.性别.年龄和成绩.然后在主函数中定义一个结构体数组(长度不超过1000), 并输入每个元素的值,程序使用冒泡排序法将学生按照成绩从小到大的顺序 ...
- Java实现蓝桥杯模拟元音单词的验证
问题描述 小明对类似于 hello 这种单词非常感兴趣,这种单词可以正好分为四段,第一段由一个或多个辅音字母组成,第二段由一个或多个元音字母组成,第三段由一个或多个辅音字母组成,第四段由一个或多个元音 ...
- Java实现 LeetCode 268 缺失数字
268. 缺失数字 给定一个包含 0, 1, 2, -, n 中 n 个数的序列,找出 0 - n 中没有出现在序列中的那个数. 示例 1: 输入: [3,0,1] 输出: 2 示例 2: 输入: [ ...
- Java实现指定年份月份的日历表
输入指定的年份与月份,看这个月的日历表 package Xueying_Liu; import java.util.Scanner; public class rilibiao { public st ...
- Java实现堆排序问题(变治法)
问题描述 用基于变治法的堆排序算法对任意一组给定的数据进行排序 2.1 堆排序原理简介 堆可以定义为一颗二叉树,树的节点中包含键(每个节点是一个键),并且满足下面两个条件: (1)树的形状要求--这颗 ...
- Java实现 洛谷 P1601 A+B Problem(高精)
import java.util.*; import java.math.*; public class Main { public static void main(String args[]) { ...
- java 实现 蓝桥杯 算法提高 排列数
问题描述 0.1.2三个数字的全排列有六种,按照字母序排列如下: 012.021.102.120.201.210 输入一个数n 求0~9十个数的全排列中的第n个(第1个为0123456789). 输入 ...
- mysql基础-数据库表简单查询-记录(五)
0x01 MySQL的查询操作 单表查询:简单查询 多表查询:连续查询 联合查询 选择和投影 投影:挑选要符合的字段 select ...