给LESS增加语法显示

经常用less查看文件内容,但是默认的显示没有语法彩色显示,不容易分辨各种文档。(注:这里说的less是shell命令,不是 CSS 预处理语言

给LESS增加语法显示_第1张图片
默认的less效果

自定义了一个脚本文件cless,输出就不再是原来的默认效果,有了语法彩显,查看代码或是脚本就方便很多了。

给LESS增加语法显示_第2张图片
增加彩色语法显示

设置非常简单,利用pygments来作为彩色引擎,据官方介绍,它支持300+种语言的语法显示!

  • 安装下载 pygments
pip install pygmentize 

如果没有权限,请在前面加上sudo

  • 写脚本文件 /usr/local/bin/cless
#!/bin/sh

## 使用 pygmentize -L styles 可以查看所有支持的风格
# (default emacs friendly colorful autumn murphy manni monokai perldoc pastie borland trac native fruity bw vim vs xcode igor paraiso-light paraiso-dark lovelace algol algol_nu arduino rainbow_dash abap)

if [[ -n "$1" ]]; then
    # 常规方式打开文件 'cless 
    ## 估计文件的语法类型,若不支持会返回`text`类型
    lexer=$(pygmentize -N "$1")
    pygmentize -f 256 -l "$lexer" -O style=monokai "$1" | less -R;
else
    # 接受管道输入数据, 'cat  | cless'
    pygmentize -f 256 -O style=monokai | less -R;
fi

是不是很简单?一个支持语法彩色显示的shell功能就完成了:-)

给LESS增加语法显示_第3张图片
Python 格式
给LESS增加语法显示_第4张图片
CMake
给LESS增加语法显示_第5张图片
XML

你可能感兴趣的:(给LESS增加语法显示)