大家好,我是良许。

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 中。

  1. 首先创建一个 .vim 目录:
$ mkdir ~/.vim
  1. 然后使用以下命令将主题仓库克隆到自己的 .vim 文件夹中:
$ git clone <https://github.com/flazz/vim-colorschemes.git> ~/.vim

以上尖括号里的地址可能会根据主题项目而变。

  1. 进入 Vim 操作模式,使用之前的命令选择主题:
 :colorscheme+空格+Tab

或者,你也可以直接指定主题,就不用一直敲 Tab 键了。

:colorscheme yourTheme

但是,这两个操作都不是永久的,你一旦关闭 Vim ,主题又将自动重置了。如果你需要将 Vim 的主题默认为你喜欢的主题,可以运行下面这条命令:

$ echo 'colorscheme <desert>' >> ~/.vimrc

选一个喜欢的主题

使用哪种主题完全取决于个人喜好,我个人喜欢使用颜色比较明亮的主题。有人喜欢黑色的主题,电影里的黑客常常就是用的那样的主题。也有人喜欢彩色的主题。

如果不确定要选择哪一种主题,这里有一些推荐的方案,可以参考一下。

童话花园 fairy-garden

冰河世纪 ice-age

忧郁 bluewery

synthwave84

anderson

你最喜欢哪种主题呢?留言告诉我吧~


公众号:良许Linux

有收获?希望老铁们来个三连击,给更多的人看到这篇文章

如何在Vim中更改颜色和主题的更多相关文章

  1. 如何在XCode中更改iPhone或iPad模拟器类型

    如何在XCode中更改iPhone或iPad模拟器类型 参考方法一(永久,一旦设置后,每次运行指定的模拟器):(1)选择顶层菜单Project 中的 Set Active Executable(2)根 ...

  2. 如何在VIM中保存编辑的只读文件

    我们经常碰到这样的情景:在VIM中编辑了一个系统配置文件,当需要保存时才发现当前的用户对该文件没有写入的权限, 这时候怎么办呢? 当需要保存时,输入以下的命令: :w !sudo tee %

  3. 如何在 Linux 中更改 swappiness

    交换空间是 RAM 内存已满时使用的硬盘的一部分.交换空间可以是专用交换分区或交换文件.当 Linux 系统耗尽物理内存时,非活动页面将从 RAM 移动到交换空间.Swappiness 是一个 Lin ...

  4. 如何在MyEclipse中更改servlet模板 Jsp模板

    http://blog.csdn.net/sjw890821sjw/article/details/6995190 刚换上Myeclipse9.0,结果要修改servlet模板的时候不像Myeclps ...

  5. 如何在vim中同时编辑多个文件

    参考:http://stackoverflow.com/a/53668/941650 Why not use tabs (introduced in Vim 7)? You can switch be ...

  6. 如何在Vim中的查找替换

    “%s/最/第二/g” 用vim的人都知道,这是把所有“最”替换成“第二”的意思.其实vim的查找替换功能非常强大,用的好可以极大提升效率. vim的查找替换命令如下所示:    :{作用范围}s/{ ...

  7. jQuery如何在IE中更改网页标题

    标准上来说,要改变title值要操作document而不是title节点.在IE下不能通过操作title节点来改变document.title. 本来用原生的JavaScript很简单就解决了: do ...

  8. vi/vim使用进阶: 在VIM中使用GDB调试 – 使用vimgdb

    vi/vim使用进阶: 在VIM中使用GDB调试 – 使用vimgdb << 返回vim使用进阶: 目录 本节所用命令的帮助入口: :help vimgdb 在UNIX系统最初设计时,有一 ...

  9. 在vim中插入命令行的输出结果

    vim是linux中常见的编辑器,这里讲讲如何在vim中插入命令行的输出结果. 基本用法: 在指令模式下运行 :!command ,如!date将日期显示在vim底部,!ls列出当前目录 将命令结果插 ...

随机推荐

  1. @Transactional 注解失效场景

    @Transactional可以用在接口.类.类方法上. 作用于类:当把@Transactional注解放在类上时,表示该类的所有public方法都配置了该事物注解. 作用于方法:表示该方法配置了事物 ...

  2. Java实现 LeetCode 748 最短完整词(字母拆分+暴力)

    748. 最短完整词 如果单词列表(words)中的一个单词包含牌照(licensePlate)中所有的字母,那么我们称之为完整词.在所有完整词中,最短的单词我们称之为最短完整词. 单词在匹配牌照中的 ...

  3. Java实现 蓝桥杯 算法提高 新建Microsoft world文档

    算法提高 新建Microsoft Word文档 时间限制:1.0s 内存限制:256.0MB 问题描述 L正在出题,新建了一个word文档,想不好取什么名字,身旁一人惊问:"你出的题目叫&l ...

  4. Java实现 LeetCode 424 替换后的最长重复字符

    424. 替换后的最长重复字符 给你一个仅由大写英文字母组成的字符串,你可以将任意位置上的字符替换成另外的字符,总共可最多替换 k 次.在执行上述操作后,找到包含重复字母的最长子串的长度. 注意: 字 ...

  5. Java实现蓝桥杯VIP算法训练 二元函数

    试题 算法训练 二元函数 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 令二元函数f(x,y)=ax+by,a和b为整数,求一个表达式S的值. 只有满足以下要求的表达式才是合法的: ...

  6. Java中IO软件包的详细介绍

    一.Java Io流 Java Io流的概念 java的io是实现输入和输出的基础,可以方便的实现数据的输入和输出操作.在java中把不同的输入/输出源(键盘,文件,网络连接等)抽象表述为" ...

  7. java实现Synchronized锁的用法

    Java线程同步中的一个重要的概念synchronized. synchronized是java的关键字,是一种同步锁,它作用的对象有以下几种: ①作用在代码块上.该代码块称为同步代码块,作用范围是大 ...

  8. 【Spring注解驱动开发】在@Import注解中使用ImportSelector接口导入bean

    写在前面 在上一篇关于Spring的@Import注解的文章<[Spring注解驱动开发]使用@Import注解给容器中快速导入一个组件>中,我们简单介绍了如何使用@Import注解给容器 ...

  9. v-on 缩写

    <!-- 完整语法 --> <a v-on:click="doSomething"></a> <!-- 缩写 --> <a @ ...

  10. Apache(httpd)详解

    httpd详解(思维导图) 1. httpd服务 ASF 服务器类型 http服务器 应用程序服务器 httpd的特性 高度模块化 DSO机制 MPM httpd的并发响应模型 prefork wor ...