自定颜色

回忆上节课内容

  • 这次我们研究了配色方案

    • 找到了 colors 的位置
    • 下载并应用了颜色方案
    • 制作了自己的配色方案
  • 下面我想修改配色方案的颜色

    • 是否能成功???

首先得有自己的颜色方案

#找到colors的位置
cd usr/share/vim/vim81/colors
#列出所有配色方案
ls
#复制出自己的配色方案
sudo cp murphy.vim oeasy.vim
#查看配色方案信息
sudo vi oeasy.vim

修改配色方案

  • 前 5 行是注释
  • 第 7 行取消原来的配色
  • 第 8 行设置背景
  • 第 9-11 行重设语法高亮
  • 第 12 行命名此配色方案,可以修改为 oeasy
  • 第 14 行开始设置各种高亮组的颜色
  • 我们先修改第一个高亮组 Normal

    • Normal的意思是一般文字
    • 这类的文字都属于这个高亮组
    • 与此类似的还有

      • 注释Comment
      • 常量Constant

改变 Normal 高亮组颜色

  • 首先把配色方案名称改为 oeasy
  • 找到 Normal
  • Normal 组的背景色ctermbg 改为 blue
  • Normal 组的前景色 ctermfg 改为 yellow
  • :w 保存配色文件
  • colorscheme oeasy 重新设定配色文件

查看配色

  • :hi Normal 可以查看 Normal 组的配色
  • :hi 可以查看当前色彩方案所有的配色
  • xxx 就是效果预览

配色细节

  • hihighlight 的缩写
  • :h hi 可以查询帮助

字体特征

  • :hi StatusLine
  • :hi StatusLine cterm=bold
  • :hi StatusLine cterm=bold,italic
  • :hi StatusLine cterm=bold,italic
  • :hi StatusLine cterm=bold,italic,underline
  • :hi StatusLine

  • term

    • 意思是terminal
    • 效果之间可以加逗号
    • 对应黑白终端
    • 在此无效
  • cterm

    • bold 加粗
    • underline 下划线
    • italic 倾斜
    • NONE 取消任何效果

设置颜色

  • hi StatusLine
  • hi StatusLine ctermfg=red ctermbg=blue
  • hi StatusLine
  • ctermfg

    • 意思是color terminal fore color
    • 前景色设置
    • ctermfg=white
  • ctermbg

    • 意思是color terminal back color
    • 被景色设置
    • ctermfg=red
  • gui相关的属性呢

    • gui相关
    • 当前终端中无效果
  • 颜色对应的色号是来自系统的ansi对应的颜色值

定义光标所在行的颜色效果

  • 设置光标行高亮显示
  • :set cursorline
  • :h 'cursorline'
  • :hi CursorLine
  • :hi CursorLine ctermbg=red ctermfg=white
  • :hi CursorLine
  • 随着光标的运动,CursorLine 也会移动

定义光标所在列的颜色效果

  • 设置光标行高亮显示
  • :set cursorcolumn
  • :h 'cursorcolumn'
  • :hi CursorColumn
  • :hi CursorColumn ctermbg=red ctermfg=white
  • :hi CursorColumn
  • 随着光标的运动,CursorColumn 也会移动
  • 如果有换行问题的话

    • :set nowrap

自定义颜色名

  • 定义 oeasy

    • :hi oeasy ctermbg=white ctermfg=red
  • 查看 oeasy

    • :hi oeasy
  • 应用 oeasy

    • :set statusline=%#oeasy#%F%*

配置文件

  • set statusline=%-040.40(%F%m%)%-030.30([%l,%c]%)%p%%
  • set laststatus=2
  • set ruler
  • set number
  • set showcmd
  • set nocompatible
  • set showcmd
  • set showmode
  • set history=100
  • set t_Co=256
  • colorscheme blue
  • set cursorline
  • hi CursorLine ctermbg=red ctermfg=white
  • set cursorcolumn
  • hi CursorColumn ctermbg=red ctermfg=white

总结

  • 我们这次深入了配色方案

    • 修改了方案中的具体配色
    • 建立了自己的配色
    • 应用了自己的配色
  • 配置里面还有什么好玩的吗?

    • 用来用去就是红绿蓝
    • 可以有更多颜色吗?
  • 下次再说

oeasy教您玩转vim - 24 - 自定颜色的更多相关文章

  1. oeasy教您玩转vim - 56 - # 字符可视化模式

    ​ 可视化编辑 回忆上节课内容 我们学习了关于模式匹配中使用参数 单个参数 :%s/<h2>\(.*\)</h2>/ - \1/g 多个参数 :%s/<img src=\ ...

  2. oeasy教您玩转vim - 57 - # 行可视化

    ​ 可视化编辑 回忆上节课内容 上次我们了解到可视模式 其实可视化对应三种子模式 字符可视模式 v 行可视模式 大写V 块可视模式ctrl+v 我们先来了解字符可视化模式 快捷键 v 可配合各种mot ...

  3. oeasy教您玩转vim - 53 - # 批量替换

    查找细节 回忆上节课内容 我们温习了关于搜索的相关内容 /正向,?反向 n保持方向,N改变方向 可以设置 是否忽略大写小写 是否从头开始查找 是否高亮显示 还有一些正则表达式的使用方法 行头行尾 ^$ ...

  4. oeasy教您玩转linux010203显示logo

    我们来回顾一下 上一部分我们都讲了什么?

  5. oeasy 教您玩转linux010101查看内核uname

    linux([?l?n?ks]) 是什么????? 咱们这次讲点什么呢?这次咱们讲讲这个 linux([?l?n?ks]),什么是 linux([?l?n?ks])呢?这linux([?l?n?ks] ...

  6. oeasy教您玩转linux010202软件包管理apt

    顾一下 上一部分我们都讲了什么?

  7. oeasy教您玩转linux010201持续输出yes

    我们来回顾一下 上一部分我们都讲了什么?

  8. oeasy教您玩转linux010108到底哪个which

    到底哪个which 回忆上次内容 我们上次讲了查找命令位置whereis 我想找到whereis的位置怎么办?

  9. oeasy教您玩转python - 006 - # hello world

    ​ Hello World! 回忆上次内容 python3 的程序是一个 5.3M 的可执行文件 python3 里面全都是 cpu 指令 可以执行的那种指令 我们可以把指令对应的汇编找到 objdu ...

  10. oeasy教您玩转linux-010110内容回顾

    我们来回顾一下 我们都讲了什么?

随机推荐

  1. 【.NET项目分享】免费开源的静态博客生成工具EasyBlog,5分钟拥有自己的博客

    EasyBlog 说明 本博客系统通过构建工具生成纯静态的博客网站,借助GitHub Pages,你可以在5分钟内免费拥有个人博客. 它具有以下特点 生成纯静态网站,访问速度极快 使用markdown ...

  2. centos7源码编译安装nginx1.19并调优,向已安装的nginx添加新模块

    目录 一.关于nginx 二.nginx的安装方式 三.源码编译安装nginx 3.1 下载nginx源码并解压 3.2 创建nginx用户和组 3.3 安装nginx编译环境(解决依赖问题) 3.4 ...

  3. SSL/TSL 总结

    参考:https://blog.csdn.net/qq153471503/article/details/109524764 (一)生成CA证书 1.创建CA证书私钥openssl genrsa -a ...

  4. IDEA使用——常用配置

    一. 设置鼠标悬停代码提示 二. 设置Ctrl+滚乱调整字体大小 三. 设置自动导包(不设置自动导包,我们也可以通过Alt+Enter进行手动导包) 四. 设置显示行号和方法间分隔符 五. 设置代码提 ...

  5. windows7 + Qt(MSVC2017) + VS2019安装配置

    在windows下使用qt时调用QWebEngineView 库会报错,即使在pro文件QT += webenginewidgets也找不到, 而在MinGW和MSVC2015的路径下我并没有找到这个 ...

  6. C# 指针简单使用

    1. 使用unsafe C# 支持 unsafe 上下文,你可在其中编写不可验证的代码. 在 unsafe 上下文中,代码可使用指针.分配和释放内存块,以及使用函数指针调用方法. C# 中的不安全代码 ...

  7. 通过USB口扩展wan口上网(4G上网卡)

    通过USB口扩展wan口上网(4G上网卡) 一.前言 现爱快可支持通过USB口扩展wan口上网,不再居于地点的限制,随时随地流畅上网. 二.具体配置 现在有两种设备可以实现通过USB口转化为wan口上 ...

  8. INFINI Labs 产品更新 | Easysearch 新增分词插件、Gateway 支持邮件发送等功能

    INFINI Labs 产品又更新啦~,本次更新概要如下:Easysearch 新增了分词插件.优化了生命周期管理功能等:Gateway 新增 smtp 过滤器来支持邮件的发送,支持自动跳过因为异常关 ...

  9. 双等号==与equals的区别与联系

    ==与equals的区别与联系: 1)对于双等号==来说,比较的是值是否相等 如果双等号比较的是基本数据类型的变量,则直接比较变量的值是否相等, 如果双等号比较的是引用类型的变量,则比较的是所指向对象 ...

  10. MyBatis 的在使用上的注意事项及其辨析

    1. MyBatis 的在使用上的注意事项及其辨析 @ 目录 1. MyBatis 的在使用上的注意事项及其辨析 2. 准备工作 3. #{ } 与 ${ } 的区别和使用 {} 3.1 什么情况下必 ...