Skip to content

Instantly share code, notes, and snippets.

@nightroman
Last active October 8, 2016 18:47
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nightroman/9fcb49a298b9c4c32c3debf86e0ff712 to your computer and use it in GitHub Desktop.
Save nightroman/9fcb49a298b9c4c32c3debf86e0ff712 to your computer and use it in GitHub Desktop.
About Colorer

Colorer hrd with colors

hrd.hrc

Allows to highlight console color codes using their literal colors.

The change was accepted, e.g. it was in 1.0.3.11. Then it was removed in 1.0.3.12, presumably due to regeneration. Sonar was informed.

visual.hrd

The file that uses the change.

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hrc
PUBLIC "-//Cail Lomecb//DTD Colorer HRC take5//EN" "http://colorer.sf.net/2003/hrc.dtd">
<hrc xmlns="http://colorer.sf.net/2003/hrc" xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
version="take5"
xsi:schemaLocation="http://colorer.sf.net/2003/hrc http://colorer.sf.net/2003/hrc.xsd">
<!--
insert this define into HRC base catalog file (colorer.hrc)
<prototype name="hrd" group="group" description="hrd" targetNamespace="http://colorer.sf.net/2003/hrd">
<location link="hrd.hrc"/>
<filename>/\./ix</filename>
</prototype>
To enable visual colors (#X are colored by their own colors)
insert the following lines to the console color scheme file:
<assign fore="#00" name="hrd:fore.Black"/>
<assign fore="#01" name="hrd:fore.DarkBlue"/>
<assign fore="#02" name="hrd:fore.DarkGreen"/>
<assign fore="#03" name="hrd:fore.DarkCyan"/>
<assign fore="#04" name="hrd:fore.DarkRed"/>
<assign fore="#05" name="hrd:fore.DarkMagenta"/>
<assign fore="#06" name="hrd:fore.DarkYellow"/>
<assign fore="#07" name="hrd:fore.Gray"/>
<assign fore="#08" name="hrd:fore.DarkGray"/>
<assign fore="#09" name="hrd:fore.Blue"/>
<assign fore="#0A" name="hrd:fore.Green"/>
<assign fore="#0B" name="hrd:fore.Cyan"/>
<assign fore="#0C" name="hrd:fore.Red"/>
<assign fore="#0D" name="hrd:fore.Magenta"/>
<assign fore="#0E" name="hrd:fore.Yellow"/>
<assign fore="#0F" name="hrd:fore.White"/>
--><type name="hrd">
<annotation>
<documentation>
XSLT Generated HRC scheme for language 'hrd'
from XML Schema with xsd2hrc.xsl version 0.10.0
Copyright (C) 2002-04 Cail Lomecb
Portions copyright (C) 2004-06 Eugene Efremov
Scheme parameters:
targetNamespace : http://colorer.sf.net/2003/hrd
hrctype : hrd
allow-common-attr : yes
allow-any-attr : no
allow-unknown-elements : no
allow-unknown-root-elements : no
force-single-root : yes
default prefixes :
you can change them with entity 'nsprefix'
</documentation>
<documentation>
Schema documentation:</documentation>
<contributors><![CDATA[Cail Lomecb, Eugene Efremov, Roman Kuzmin]]></contributors>
</annotation>
<import type="def"/>
<region name="fore.Black" parent="def:NumberHex"/>
<region name="fore.DarkBlue" parent="def:NumberHex"/>
<region name="fore.DarkGreen" parent="def:NumberHex"/>
<region name="fore.DarkCyan" parent="def:NumberHex"/>
<region name="fore.DarkRed" parent="def:NumberHex"/>
<region name="fore.DarkMagenta" parent="def:NumberHex"/>
<region name="fore.DarkYellow" parent="def:NumberHex"/>
<region name="fore.Gray" parent="def:NumberHex"/>
<region name="fore.DarkGray" parent="def:NumberHex"/>
<region name="fore.Blue" parent="def:NumberHex"/>
<region name="fore.Green" parent="def:NumberHex"/>
<region name="fore.Cyan" parent="def:NumberHex"/>
<region name="fore.Red" parent="def:NumberHex"/>
<region name="fore.Magenta" parent="def:NumberHex"/>
<region name="fore.Yellow" parent="def:NumberHex"/>
<region name="fore.White" parent="def:NumberHex"/>
<region name="element.start.name" parent="xml:element.defined.start.name"/>
<region name="element.end.name" parent="xml:element.defined.end.name"/>
<region name="element.start.lt" parent="xml:element.start.lt"/>
<region name="element.start.gt" parent="xml:element.start.gt"/>
<region name="element.end.lt" parent="xml:element.end.lt"/>
<region name="element.end.gt" parent="xml:element.end.gt"/>
<region name="element.nsprefix" parent="xml:element.defined.nsprefix"/>
<region name="element.nscolon" parent="xml:element.nscolon"/>
<region name="Attribute.name" parent="xml:Attribute.defined.name"/>
<region name="Attribute.nsprefix" parent="xml:Attribute.defined.nsprefix"/>
<region name="Attribute.nscolon" parent="xml:Attribute.nscolon"/>
<region name="AttValue" parent="xml:AttValue.defined"/>
<region name="AttValue.start" parent="xml:AttValue.defined.start"/>
<region name="AttValue.end" parent="xml:AttValue.defined.end"/>
<region name="Enumeration" parent="xml:Enumeration"
description="Enumerated type values"/>
<entity name="ns-real-prefix" value=""/>
<entity name="nsprefix" value=""/>
<entity name="attr-nsprefix" value=""/>
<scheme name="_hrc_int_elementContent">
<block start="/~( (&lt;) ( ((%xml:NCName;) (:) )? (%xml:Name;) ) \M &gt;? )/x"
end="/( (&lt;\/) (\y3\b)?= ( (%xml:NCName;) (:) )? (%xml:Name;) \b \M \s* (&gt;?) | (\/ \M &gt;) )/x"
region01="PairStart"
region02="element.start.lt"
region05="element.nsprefix"
region06="element.nscolon"
region07="element.start.name"
region11="PairEnd"
region12="element.end.lt"
region15="element.nsprefix"
region16="element.nscolon"
region17="element.end.name"
region18="element.end.gt"
region19="element.start.gt"
scheme="xml:elementContent2"/>
<inherit scheme="xml:badChar"/>
</scheme>
<scheme name="_hrc_int_AttValue">
<block start="/(&#34;)/" end="/(\y1)/" region00="PairStart" region10="PairEnd"
region01="AttValue.start"
region11="AttValue.end"
scheme="xml:AttValue.content.quot"
region="AttValue"/>
<block start="/(')/" end="/(\y1)/" region00="PairStart" region10="PairEnd"
region01="AttValue.start"
region11="AttValue.end"
scheme="xml:AttValue.content.apos"
region="AttValue"/>
</scheme>
<scheme name="AttributeContent">
<inherit scheme="xml:AttributeContent">
<virtual scheme="xml:AttValue" subst-scheme="_hrc_int_AttValue"/>
</inherit>
</scheme>
<!--custom schemes from '../../src/colorer/src/custom.colorer.xml'--><scheme name="region-name-content">
<regexp match="/~(%xml:NCName;)(\:)(%xml:NCName;) \b/ix"
region1="xmlschema:Scheme.nsprefix"
region2="xmlschema:Scheme.nscolon"
region3="xmlschema:Scheme.name"/>
</scheme>
<scheme name="color-content">
<regexp match="/(\#)(0?0)\b/" region1="def:NumberPrefix" region2="fore.Black"/>
<regexp match="/(\#)(0?1)\b/" region1="def:NumberPrefix" region2="fore.DarkBlue"/>
<regexp match="/(\#)(0?2)\b/" region1="def:NumberPrefix" region2="fore.DarkGreen"/>
<regexp match="/(\#)(0?3)\b/" region1="def:NumberPrefix" region2="fore.DarkCyan"/>
<regexp match="/(\#)(0?4)\b/" region1="def:NumberPrefix" region2="fore.DarkRed"/>
<regexp match="/(\#)(0?5)\b/" region1="def:NumberPrefix" region2="fore.DarkMagenta"/>
<regexp match="/(\#)(0?6)\b/" region1="def:NumberPrefix" region2="fore.DarkYellow"/>
<regexp match="/(\#)(0?7)\b/" region1="def:NumberPrefix" region2="fore.Gray"/>
<regexp match="/(\#)(0?8)\b/" region1="def:NumberPrefix" region2="fore.DarkGray"/>
<regexp match="/(\#)(0?9)\b/" region1="def:NumberPrefix" region2="fore.Blue"/>
<regexp match="/(\#)(0?A)\b/i" region1="def:NumberPrefix" region2="fore.Green"/>
<regexp match="/(\#)(0?B)\b/i" region1="def:NumberPrefix" region2="fore.Cyan"/>
<regexp match="/(\#)(0?C)\b/i" region1="def:NumberPrefix" region2="fore.Red"/>
<regexp match="/(\#)(0?D)\b/i" region1="def:NumberPrefix" region2="fore.Magenta"/>
<regexp match="/(\#)(0?E)\b/i" region1="def:NumberPrefix" region2="fore.Yellow"/>
<regexp match="/(\#)(0?F)\b/i" region1="def:NumberPrefix" region2="fore.White"/>
<regexp match="/(\#)([\dA-Fa-f]{6}|[\dA-Fa-f])/" region1="def:NumberPrefix" region2="def:NumberHex"/>
</scheme>
<scheme name="style-content">
<regexp match="/\d/" region="def:Number"/>
</scheme>
<!--end custom--><scheme name="hrd-element">
<block start="/\M &lt; (%nsprefix;hrd ([\s\/&gt;]|$) )/x" end="/ &gt; /x"
scheme="hrd-elementContent"/>
</scheme>
<scheme name="hrd-content">
<block start="/\M &lt; (%nsprefix;documentation ([\s\/&gt;]|$) )/x" end="/ &gt; /x"
scheme="documentation-elementContent"/>
<block start="/\M &lt; (%nsprefix;assign ([\s\/&gt;]|$) )/x" end="/ &gt; /x"
scheme="assign-elementContent"/>
</scheme>
<scheme name="hrd-content-error">
<inherit scheme="hrd-content"/>
<inherit scheme="xml:badChar"/>
</scheme>
<scheme name="hrd-content-cdsect">
<inherit scheme="hrd-content-error">
<virtual scheme="xml:badLiter" subst-scheme="xml:badCDLiter"/>
<virtual scheme="xml:Reference" subst-scheme="def:empty"/>
</inherit>
</scheme>
<scheme name="hrd-Attributes"/>
<scheme name="hrd-elementContent">
<inherit scheme="_hrc_int_elementContent">
<virtual scheme="xml:element" subst-scheme="hrd-content"/>
<virtual scheme="xml:content.cdata" subst-scheme="xml:badChar"/>
<virtual scheme="xml:Attribute.any" subst-scheme="hrd-Attributes"/>
</inherit>
</scheme>
<scheme name="documentation-content">
<regexp match="/ &lt; (%ns-real-prefix;%xml:NCName; ([\s\/&gt;]|$) )/x" region="def:Error"/>
<inherit scheme="xml:element"/>
</scheme>
<scheme name="documentation-content-error">
<inherit scheme="documentation-content"/>
<inherit scheme="xml:badChar"/>
</scheme>
<scheme name="documentation-content-cdsect">
<inherit scheme="documentation-content-error">
<virtual scheme="xml:badLiter" subst-scheme="xml:badCDLiter"/>
<virtual scheme="xml:Reference" subst-scheme="def:empty"/>
</inherit>
</scheme>
<scheme name="documentation-Attributes"/>
<scheme name="documentation-elementContent">
<inherit scheme="_hrc_int_elementContent">
<virtual scheme="xml:element" subst-scheme="documentation-content"/>
<virtual scheme="xml:Attribute.any" subst-scheme="documentation-Attributes"/>
</inherit>
</scheme>
<scheme name="assign-content"/>
<scheme name="assign-content-error">
<inherit scheme="assign-content"/>
<inherit scheme="xml:badChar"/>
</scheme>
<scheme name="assign-content-cdsect">
<inherit scheme="assign-content-error">
<virtual scheme="xml:badLiter" subst-scheme="xml:badCDLiter"/>
<virtual scheme="xml:Reference" subst-scheme="def:empty"/>
</inherit>
</scheme>
<scheme name="assign-Attributes">
<block end="/[&#34;']?#1/" region02="Attribute.name"
start="/(\s?#1|^)(name)\M([\s\=]|$)/x"
scheme="region-name-AttributeContent"/>
<block end="/[&#34;']?#1/" region02="Attribute.name"
start="/(\s?#1|^)(fore)\M([\s\=]|$)/x"
scheme="color-AttributeContent"/>
<block end="/[&#34;']?#1/" region02="Attribute.name"
start="/(\s?#1|^)(back)\M([\s\=]|$)/x"
scheme="color-AttributeContent"/>
<block end="/[&#34;']?#1/" region02="Attribute.name"
start="/(\s?#1|^)(style)\M([\s\=]|$)/x"
scheme="style-AttributeContent"/>
<block end="/[&#34;']?#1/" region02="Attribute.name"
start="/(\s?#1|^)(stext)\M([\s\=]|$)/x"
scheme="xmlschema:string-AttributeContent"/>
<block end="/[&#34;']?#1/" region02="Attribute.name"
start="/(\s?#1|^)(etext)\M([\s\=]|$)/x"
scheme="xmlschema:string-AttributeContent"/>
<block end="/[&#34;']?#1/" region02="Attribute.name"
start="/(\s?#1|^)(sback)\M([\s\=]|$)/x"
scheme="xmlschema:string-AttributeContent"/>
<block end="/[&#34;']?#1/" region02="Attribute.name"
start="/(\s?#1|^)(eback)\M([\s\=]|$)/x"
scheme="xmlschema:string-AttributeContent"/>
</scheme>
<scheme name="assign-elementContent">
<inherit scheme="_hrc_int_elementContent">
<virtual scheme="xml:element" subst-scheme="assign-content"/>
<virtual scheme="xml:content.cdata" subst-scheme="xml:badChar"/>
<virtual scheme="xml:Attribute.any" subst-scheme="assign-Attributes"/>
</inherit>
</scheme>
<scheme name="region-name-content-old"><!--
Warning: RE pattern used. Possible compatibility faults
Original RE: \i\c*\:\i\c*--><regexp region="Enumeration" priority="low"
match="/[%xml:NCNameStartChar;][%xml:NCNameChar;]*\:[%xml:NCNameStartChar;][%xml:NCNameChar;]*/"/>
</scheme>
<scheme name="region-name-content-error">
<inherit scheme="region-name-content"/>
<inherit scheme="xml:badChar"/>
</scheme>
<scheme name="region-name-content-cdsect">
<inherit scheme="region-name-content-error">
<virtual scheme="xml:badLiter" subst-scheme="xml:badCDLiter"/>
<virtual scheme="xml:Reference" subst-scheme="def:empty"/>
</inherit>
</scheme>
<scheme name="region-name-Attributes"/>
<scheme name="region-name-AttributeContent">
<inherit scheme="AttributeContent">
<virtual scheme="xml:AttValue.content.stream" subst-scheme="region-name-content-error"/>
</inherit>
</scheme>
<scheme name="region-name-elementContent">
<inherit scheme="_hrc_int_elementContent">
<virtual scheme="xml:CDSect.content.stream" subst-scheme="region-name-content-cdsect"/>
<virtual scheme="xml:content.cdata.stream" subst-scheme="region-name-content-error"/>
<virtual scheme="xml:element" subst-scheme="def:empty"/>
<virtual scheme="xml:Attribute.any" subst-scheme="region-name-Attributes"/>
</inherit>
</scheme>
<scheme name="color-content-old"><!--
Warning: RE pattern used. Possible compatibility faults
Original RE: #?[\dA-Fa-f]{1,6}--><regexp region="Enumeration" priority="low" match="/\#?[\dA-Fa-f]{1,6}/"/>
</scheme>
<scheme name="color-content-error">
<inherit scheme="color-content"/>
<inherit scheme="xml:badChar"/>
</scheme>
<scheme name="color-content-cdsect">
<inherit scheme="color-content-error">
<virtual scheme="xml:badLiter" subst-scheme="xml:badCDLiter"/>
<virtual scheme="xml:Reference" subst-scheme="def:empty"/>
</inherit>
</scheme>
<scheme name="color-Attributes"/>
<scheme name="color-AttributeContent">
<inherit scheme="AttributeContent">
<virtual scheme="xml:AttValue.content.stream" subst-scheme="color-content-error"/>
</inherit>
</scheme>
<scheme name="color-elementContent">
<inherit scheme="_hrc_int_elementContent">
<virtual scheme="xml:CDSect.content.stream" subst-scheme="color-content-cdsect"/>
<virtual scheme="xml:content.cdata.stream" subst-scheme="color-content-error"/>
<virtual scheme="xml:element" subst-scheme="def:empty"/>
<virtual scheme="xml:Attribute.any" subst-scheme="color-Attributes"/>
</inherit>
</scheme>
<scheme name="style-content-old"><!--
Warning: RE pattern used. Possible compatibility faults
Original RE: \d--><regexp region="Enumeration" priority="low" match="/\d/"/>
</scheme>
<scheme name="style-content-error">
<inherit scheme="style-content"/>
<inherit scheme="xml:badChar"/>
</scheme>
<scheme name="style-content-cdsect">
<inherit scheme="style-content-error">
<virtual scheme="xml:badLiter" subst-scheme="xml:badCDLiter"/>
<virtual scheme="xml:Reference" subst-scheme="def:empty"/>
</inherit>
</scheme>
<scheme name="style-Attributes"/>
<scheme name="style-AttributeContent">
<inherit scheme="AttributeContent">
<virtual scheme="xml:AttValue.content.stream" subst-scheme="style-content-error"/>
</inherit>
</scheme>
<scheme name="style-elementContent">
<inherit scheme="_hrc_int_elementContent">
<virtual scheme="xml:CDSect.content.stream" subst-scheme="style-content-cdsect"/>
<virtual scheme="xml:content.cdata.stream" subst-scheme="style-content-error"/>
<virtual scheme="xml:element" subst-scheme="def:empty"/>
<virtual scheme="xml:Attribute.any" subst-scheme="style-Attributes"/>
</inherit>
</scheme>
<scheme name="hrd-root">
<annotation>
<documentation>
You can replace these elements with needed single root element
with customizing HRC generation process.
</documentation>
</annotation>
<inherit scheme="hrd-element"/>
</scheme>
<scheme name="hrd-root-addref">
<inherit scheme="hrd-root"/>
</scheme>
<scheme name="hrd">
<inherit scheme="xml:singleroot">
<virtual scheme="xml:element" subst-scheme="hrd-root-addref"/>
</inherit>
</scheme>
</type>
</hrc>
<?xml version="1.0" encoding="us-ascii"?>
<hrd xmlns="http://colorer.sf.net/2003/hrd">
<!--
White background color scheme by Roman Kuzmin, aka NightRoman
<hrd class="console" name="visual" description="Visual by Roman Kuzmin">
<location link="..."/>
</hrd>
-->
<assign fore="#00" back="#0F" name="def:Text"/>
<assign fore="#05" back="#07" name="def:PairStart"/>
<assign fore="#05" back="#07" name="def:PairEnd"/>
<assign fore="#00" back="#0E" name="def:PairStrongStart"/>
<assign fore="#00" back="#0E" name="def:PairStrongEnd" />
<assign fore="#05" name="def:Number"/>
<assign fore="#05" name="def:NumberSuffix"/>
<assign fore="#04" name="def:String"/>
<assign back="#0E" name="def:StringContent"/>
<assign fore="#0C" name="def:StringEdge"/>
<assign fore="#01" name="def:Character"/>
<assign fore="#01" name="def:CharacterContent"/>
<assign fore="#02" name="def:Comment"/>
<assign fore="#02" name="def:CommentContent"/>
<assign fore="#07" name="def:CommentEdge"/>
<assign fore="#08" name="def:CommentDoc"/>
<assign fore="#08" name="def:CommentDocContent"/>
<assign fore="#07" name="def:CommentDocEdge"/>
<assign fore="#09" name="def:Symbol"/>
<assign fore="#09" name="def:SymbolStrong"/>
<assign fore="#09" name="def:Operator"/>
<assign fore="#01" name="def:Prefix"/>
<assign fore="#09" name="def:Keyword"/>
<assign fore="#09" back="#07" name="def:KeywordStrong"/>
<assign fore="#03" name="def:TypeKeyword"/>
<assign fore="#06" name="def:Constant"/>
<assign fore="#06" name="def:BooleanConstant"/>
<assign fore="#00" name="def:Identifier"/>
<assign fore="#04" name="def:Register"/>
<assign fore="#0C" name="def:Var"/>
<assign fore="#0D" name="def:VarStrong"/>
<assign fore="#09" name="def:Directive"/>
<assign fore="#02" name="def:Parameter"/>
<assign fore="#08" name="def:Tag"/>
<assign fore="#07" name="def:OpenTag"/>
<assign fore="#07" name="def:CloseTag"/>
<assign fore="#06" name="def:Label"/>
<assign fore="#0F" back="#07" name="def:LabelStrong"/>
<assign fore="#09" name="def:URI"/>
<assign fore="#09" name="def:EMail"/>
<assign fore="#03" name="def:Date"/>
<assign fore="#01" name="def:Time"/>
<assign fore="#0F" back="#04" name="def:Error"/>
<assign fore="#0D" name="def:ErrorText"/>
<assign fore="#0F" back="#02" name="def:TODO"/>
<assign fore="#04" back="#07" name="def:Debug"/>
<assign back="#0E" name="def:Insertion"/>
<assign back="#0E" name="def:HorzCross"/>
<assign back="#0E" name="def:VertCross"/>
<!--diff: git-->
<assign fore="#0C" name="diff:diffOrg"/>
<assign fore="#02" name="diff:diffNew"/>
<assign fore="#03" name="diff:diffModif"/>
<!--c: VS-->
<assign fore="#04" name="c:PreprocInclude"/>
<!--xml: CData != text-->
<assign fore="#01" name="xml:CData"/>
<!--powershell: console log-->
<assign fore="#07" back="#07" name="powershell:LogStart"/>
<assign fore="#00" back="#07" name="powershell:LogText"/>
<assign fore="#0F" back="#0F" name="powershell:LogEnd"/>
<!--hrd: standard console colors-->
<assign fore="#00" name="hrd:fore.Black"/>
<assign fore="#01" name="hrd:fore.DarkBlue"/>
<assign fore="#02" name="hrd:fore.DarkGreen"/>
<assign fore="#03" name="hrd:fore.DarkCyan"/>
<assign fore="#04" name="hrd:fore.DarkRed"/>
<assign fore="#05" name="hrd:fore.DarkMagenta"/>
<assign fore="#06" name="hrd:fore.DarkYellow"/>
<assign fore="#07" name="hrd:fore.Gray"/>
<assign fore="#08" name="hrd:fore.DarkGray"/>
<assign fore="#09" name="hrd:fore.Blue"/>
<assign fore="#0A" name="hrd:fore.Green"/>
<assign fore="#0B" name="hrd:fore.Cyan"/>
<assign fore="#0C" name="hrd:fore.Red"/>
<assign fore="#0D" name="hrd:fore.Magenta"/>
<assign fore="#0E" name="hrd:fore.Yellow"/>
<assign fore="#0F" name="hrd:fore.White"/>
</hrd>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment