给任意命令输出上色。

colout的Python项目详细描述


COLOUT(1)--上色任意命令输出
===========


\r概要

`COLOUT`[-h[-r resource]

`COLOUT`[-g[-c[-l min,最大值][-a][-t][-t目录][-p目录][-d颜色映射][-debug]模式[颜色[样式]]

\在正则表达式模式中指定组,只考虑它们,否则整个匹配模式都是有色的。


使用组时,可以用逗号分隔它们来指定几种颜色或样式。如果指定的颜色多于组,则忽略最后一种颜色。
如果要求的颜色较少,则最后一种颜色将在剩余的
组中重复。


可用的颜色有:蓝色、黑色、黄色、青色、绿色、品红色、白色、红色、
彩虹、随机、随机、光谱,spectrum,scale,scale,hash,hash,none,an
rgb十六进制三元组(` 11aaff`,例如)或0到255之间的任意数字。


取决于终端上的


`rainbow'将在每个匹配模式的默认颜色映射上循环。
`rainbow'将在256色模式的默认颜色映射上循环。
(这需要一个支持256色转义序列的终端)。


`random'将使用默认颜色映射中的随机颜色为每个匹配图案上色
(默认情况下,ANSI表中提供的255色)。
"random"在8色模式下也会这样做。

"spectrum"和"spectrum"就像彩虹,但是使用更多的颜色(8和36
颜色)。

scale`(8颜色)和scale`(256颜色)将把匹配文本中的数字字符解析为十进制数字,并根据
将默认颜色映射应用到由"-l"选项定义的比例上的位置(见下文"0,默认值为100英寸。


`hash`(8色)和`hash`(256色)将获取匹配文本的指纹,并根据指纹应用默认颜色映射。这样可以确保多次出现的匹配文本始终具有相同的颜色。

这允许对大型组应用
这种特殊颜色,同时只解释其数字部分。

如果安装了python3 pygments库,则可以使用
语法颜色"lexer"的名称作为颜色(例如:"cpp"、"ruby"、"xml+django",如果gimp调色板文件(\*.gpl)可用,您还可以将它们的名称用作
颜色映射(请参见下面的"-p"开关)。

a*color*默认为红色,a*style*默认为粗体。

`colout'带有一些预定义的主题,可以快速为已知输出着色
(请参见下面的"-t"开关)。


`-s`switch below)。


使用"-r"开关(见下文)。

`colout`在GNU公共许可v3下发布。



类似于

/usr/local/lib/python3/dist packages/colout-0.1-py3.egg/colout/colout.py



d

pypi(python包索引)







sudo apt get update
sudo apt get/aptitude installcolout

gentoo


\`--colormap`:
使用以逗号分隔的给定颜色列表作为颜色映射(在每次匹配时循环颜色)。

*`-l min,max`,`--scale min,max`:
使用"scale"颜色映射时,将匹配项解析为十进制数(考虑到您的语言环境)
或算术表达式(如"1+2/0.9\*3"),并在给定的最小值和最大值(默认值为0100)之间线性应用彩虹颜色映射。`--all`:
一次为整个输入着色,而不是每行着色
(对于在多行上用字符串着色源代码文件非常有用)。

*`-t`,`--theme`:
将模式解释为预定义的主题(perm、cmake、g++,等等)。

*`-t dir`,`--themes dir`:
在此目录中搜索其他主题(colout\\*.py文件)。

*`-p dir`,`--调色板dir`:
在此目录中搜索其他调色板(\*.gpl文件)。

*`-d colormap`,`--默认颜色映射:
使用特殊颜色映射(`random`、`scale`或`hash`)时,请使用此颜色映射而不是默认颜色映射。
此颜色映射可以是可用颜色映射之一,也可以是以逗号分隔的颜色列表。
警告:请确保指定兼容的默认颜色映射使用特殊颜色映射的模式,
或其他颜色可能不相同。
此外,外部调色板将从rgb转换为256-ansi,因此如果使用
它们作为8色模式特殊颜色的默认颜色映射,则它们将不起作用。

*`-r type`,`--资源类型:
打印可用资源的名称。使用逗号分隔的资源名称列表
(样式、颜色、特殊、主题、调色板、颜色映射或词汇表),
使用"all"打印所有内容。

*`-s`、`--source`:
将模式解释为pygments库可读的源代码。如果模式的第一个字母是大写,则使用256色模式;如果是小写,则使用8色模式。
在256色模式下,将颜色解释为pygments样式(例如"默认")。

*`--debug`:
调试模式:打印内部发生的情况,如果要检查有可用的功能。



假设
`colout`通常由命令行调用,您可能需要转义外壳程序可以识别的特殊字符。




\dependencies

解析



##示例

/etc/passwd`

*颜色为黄色用户/组ID、绿色粗体名称和红色主目录':x:([0-9]+:[0-9]+):([^:]+).*(/home/[a-z]+)'黄色、绿色、红色普通、粗体<;/etc/passwd`

*黄色文件权限中的颜色,每个人都有读取权限:
`ls-l colout.'(r.-){3}'黄色普通`

*绿色读取权限中的颜色,以粗体红色书写和执行:
`ls-l colout'(r)(w*)(x*)'绿色,红色普通,粗体`

*绿色注释中的颜色在colout源中:
`colout.*(*)$'绿色普通<;colout.py`

*在make输出中以粗体绿色和粗体红色显示"错误"字样:
`make 2>;&;1 colout'[0-9]+'绿色标准colout错误`



\grep user/var/log/auth.log colout"^.*$"rainbow`

*对文件的每一行使用不同的颜色,在256色渐变中使用不同的颜色青色到绿色:
`head/var/log/auth.log colout-c"^.*$"39,38,37,36,35,34`

*使用预定义模板的颜色权限:
`ls-l colout-t perm`

*非空colout源中的浅绿色注释中的颜色,用Brand Green:Br.Grp- V′^ s'$'Clut.Py-ClOUT'.*绿色,119粗体,常态'BR/> BR/> *颜色,使输出,行数为黄色,粗体红色为错误,红色为警告,绿色为实用型,C++为ClAN:BR/>文件基名。1 colout':([0-9]+):[0-9]*'黄色正常colout错误colout警告洋红色colout pragma绿色正常colout'/(\w+)*\(h cpp)'青色正常`
或使用主题:
`make 2>;&;1 colout-t cmake colout-t g++`

*用彩虹颜色映射给auth.log头中的每个单词上色,在每一新行开始一个新的颜色映射(命令的
开头只是bash magic,用来重复字符串"(\\w+)\\w+":
`l=$(seq 10);p=${l//??/(\\w+)\\w+};head/var/log/auth.log colout-g"^${p}(.*)$"rainbow`

*8色模式下的彩色源代码,不看注释:
`cat colout.py grep-v""colout-s python`

*256色模式下的彩色源代码:
`cat colout.py colout-s python monokai`

*color json流:
`echo'{"foo":"lorem","bar":"ipsum"}python-mjson.tool colout-t json`

*给源代码子字符串上色:
"echo"在"static void functor::operator()(eot&indiv){return indiv;}"应该修复它"colout"(.*)"cpp monokai`

*将进程部分的百分比上色cmake的makefile输出,颜色
与进度值相关(从0%=蓝色到100%=红色):
`cmake..&制作"colout"^(\[\s*[0-9]+%\]]]"[\s*[0-9]]]]">scale`


*auth.log``auth.log``中的彩色主机和用户,颜色一致:
`cat/var/log/auth.log/auth.log`>*colout"^(\s++\s++{3}(\s++\s++\s++\s++\s++\s++{3}{3}{3{3{3}(\s++\s++\s++\s++\s++2{2{2}(\s++\s+"\s+\s+\s*是的hash`


\bash alias

1 colout-t cmake colout-t g++
}



例如:`cm make test`



三元组。
每个三元组的参数与命令行接口的参数相同。

def theme(context):
返回context,[[regexp,colors,styles]]

因此,您可以更改
特殊关键字、比例、甚至可用颜色、样式或主题的颜色映射。

有关如何修改现有颜色的信息,请参见cmake主题如果(且仅当)用户没有要求
替代主题,请映射。
有关如何使用更多regexp和不同配置扩展现有主题的信息,请参阅忍者主题。
有关如何使用现有软件的本地化来构建转换的regexp的示例,请参见gcc主题。




您可能会发现,这些行是由大块而不是逐个实时打印的。
这不是由于冒号,而是由于外壳的缓冲行为。
若要解决此问题,请使用"stdbuf",例如:"tail-f x";stdbuf-o0 grep y colout y"。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在表被注释到配置之前获取表的元数据?   java滚动条不会出现在JList上   java JOGL监视器GPU内存   java为什么要使用RecyclerView onDraw延迟   java定制Oppo Reno 2 Z CPH1951(手机型号)的固件(闪存文件)   java自定义线程池执行器   java如何解决发布版本中重复的jar条目[com/安卓/volley/R.class]?   java如何使用Bukkit API触发事件?   java在blazemeter jmeter RTE插件中使用ctrl+w输入   C#/Visual Studio的java JDT等价物   java为什么当maxread值很大而收到的消息数量很小时,卡夫卡消费者会无限期消费?   java游戏2。x:包含模板列表的绑定模型   带压缩的java日志旋转   运行时。exec用java运行程序读取它正在做什么