• 【vim 学习系列文章 10 -- vim 将代码中空格高亮显示方法】


    下篇文章:【vim 学习系列文章 11 – vim filetype | execute | runtimepath 详细介绍】
    上篇文章:【vim 学习系列文章 9 – .vim 脚本文件开发学习】

    vim 高亮空格使用背景

    开发人员在编写代码之后,在review通过之后会将代码推到服务器然后merge,但是有些代码对格式要求很严格,比如 linux 代码就不允许代码中出现 空格 或者^M,如下图所示,在使用 git diff . 之后可以看到代码中有一行空格。
    在这里插入图片描述

    如何配置vim 可以自动显示空格呢?

    vim ~/.vimrc 添加下面一段内容即可

    """""""""""""""""""""""""""""""""""""""
    " Used to show the spaces in code text
    """""""""""""""""""""""""""""""""""""""
    highlight ExtraWhitespace ctermbg=red guibg=darkgreen
    autocmd ColorScheme * highlight ExtraWhitespace ctermbg=red guibg=red
    match ExtraWhitespace /\s\+$\| \+\ze\t/
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    vim highlight 命令使用介绍

    在 Vim 编辑器中,highlight(或简写为 :hi)命令用于修改或显示语法高亮的颜色和样式。这个命令非常强大,可以让你自定义 Vim 的颜色方案和高亮显示的效果。

    一般使用的格式是:

    highlight {group} {keys}={values}
    
    • 1
    • {group} 是你要修改的语法组名,比如 Comment,String,Function 等等,这些都是预定义的语法组;
    • {keys} 是你要修改的属性,比如 guifg,guibg,gui,ctermbg,ctermfg,cterm 等等;
    • {values} 是你希望设置的值。

    例如,你可以使用以下命令来改变注释的颜色:

    highlight Comment guifg=blue
    
    • 1

    这会将 GUI(例如 gVim 或 MacVim)中的注释文本的前景色(guifg)设置为蓝色。

    如果你想要查看当前的 Comment 高亮设置,你可以用下面的命令:

    highlight Comment
    
    • 1

    这将会显示类似下面的输出:

    Comment xxx term=bold ctermfg=14 guifg=#80a0ff
    
    • 1

    这表示在终端(term)中,注释文本会被显示为粗体(bold),在 color-terminal 中,注释文本的前景色(ctermfg)会被设置为颜色编号为14的颜色,在 GUI 中,注释文本的前景色(guifg)会被设置为 #80a0ff
    在这里插入图片描述

    你也可以使用 :highlight 命令来查看所有的语法高亮设置,只需不带参数地输入 :highlight 就可以了。

    vim 空白行的处理

    在Vim中,你可以使用各种方法来寻找和删除额外的空白。以下是一些例子:

    寻找每行末尾的额外空白,你可以使用以下的搜索命令:

    /\s\+$
    
    • 1

    这个命令会在当前文档中高亮显示每行末尾的一串空白。

    删除每行末尾的额外空白,你可以使用以下的替换命令:

    %s/\s\+$//e
    
    • 1

    这个命令会查找每行末尾的一串空白,并用空字符串替换它(也就是删除它)。

    如果你想在保存文件时自动删除每行末尾的额外空白,你可以在你的 .vimrc 文件中添加以下的 autocommand:

    autocmd BufWritePre *.py :%s/\s\+$//e
    
    • 1

    这个命令会在你保存任何.py文件之前自动删除每行末尾的额外空白。你可以根据需要替换*.py以匹配其他类型的文件。

    vim match 命令详细介绍

    Vim 的 match 命令是一个非常有用的工具,用来在文本中查找匹配的字符串。

    该命令的基本格式如下:

    match {group} /{pattern}/
    
    • 1

    这里的 {group} 是一个高亮组的名称,{pattern} 是你想要匹配的正则表达式。

    例如,如果你想高亮所有的 TODO 注释,你可以使用以下命令:

    match Todo /TODO/
    
    • 1

    在这个例子中,“Todo” 是一个高亮组的名称,“TODO” 是你想要匹配的字符串。

    你也可以使用两个命令来设置多个匹配,例如:

    match Todo /TODO/ :2match Error /FIXME/
    
    • 1

    这将会高亮所有的 “TODO” 和 “FIXME”。

    如果你想要取消匹配,你可以使用 match 命令而不带任何参数:

    match
    
    • 1

    这将会取消所有的匹配。

    下篇文章:【vim 学习系列文章 11 – vim filetype | execute | runtimepath 详细介绍】
    上篇文章:【vim 学习系列文章 9 – .vim 脚本文件开发学习】

  • 相关阅读:
    【Numpy总结】第六节:Numpy 元素的遍历
    黑马程序员微服务 分布式搜索引擎3
    优雅而高效的JavaScript——函数柯里化
    spring知识巩固
    MySQL 数据库设计对性能的影响
    一键整理电脑桌面、文件夹—只需要20行Python代码
    前端研习录(12)——动画效果讲解及示例说明
    【ELK】日志系统&部署
    3max20版本安装的脚本问题
    力扣打卡之最小栈
  • 原文地址:https://blog.csdn.net/sinat_32960911/article/details/133883918