ADD: Store light and dark color settings separately (step 2)

This commit is contained in:
Alexander Koblov 2023-05-16 18:55:21 +03:00
commit 42f42f1a37
18 changed files with 1570 additions and 800 deletions

View file

@ -1,8 +1,8 @@
<UniHighlighter version="1.8.1">
<UniHighlighter version="1.8">
<Info>
<General Name="Assembler (x86)" Extensions="ASM,S"/>
<General Name="Assembler (x86)" Extensions="ASM,S" Other="0"/>
<Author Name="Vitalik, Vitaly Nevzorov" Email="v-e-t-a-l@ukr.net" Web="" Copyright="(c) Vitaly Lyapota, Vitaly Nevzorov, 2004" Company="N/A" Remark=""/>
<Version Version="1" Revision="2" Date="44660,8772404745"/>
<Version Version="1" Revision="2" Date="45067.6927801505"/>
<History>
</History>
<Sample>
@ -22,10 +22,10 @@
</Sample>
</Info>
<Scheme File="" Name=""/>
<Range Name="Root" Attributes="0,-2147483643;False:False." Style=""
<Range Name="Root" Attributes="$80000008,$80000005;False:False." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbolPartOfTerm="Right" CloseSymbolPartOfTerm="False"/>
<Keywords Name="Commands" Attributes="32768,-2147483643;False:True." Style="">
<Keywords Name="Commands" Attributes="$00008000,$80000005;False:True." Style="">
<word value="aaa"/>
<word value="aad"/>
<word value="aam"/>
@ -415,7 +415,7 @@
<word value="xlatb"/>
<word value="xor"/>
</Keywords>
<Keywords Name="Commands SSE2" Attributes="32768,-2147483643;False:True." Style="">
<Keywords Name="Commands SSE2" Attributes="$00008000,$80000005;False:True." Style="">
<word value="ADDPD"/>
<word value="ADDSD"/>
<word value="ANDPD"/>
@ -540,7 +540,7 @@
<word value="UNPCKLPD"/>
<word value="XORDP"/>
</Keywords>
<Keywords Name="Registers" Attributes="16711808,-2147483643;False:True." Style="">
<Keywords Name="Registers" Attributes="$00FF0080,$80000005;False:True." Style="">
<word value="ah"/>
<word value="al"/>
<word value="ax"/>
@ -568,7 +568,7 @@
<word value="si"/>
<word value="sp"/>
</Keywords>
<Keywords Name="Registers x86_64" Attributes="16711808,-2147483643;False:True." Style="">
<Keywords Name="Registers x86_64" Attributes="$00FF0080,$80000005;False:True." Style="">
<word value="rax"/>
<word value="rbx"/>
<word value="rcx"/>
@ -586,7 +586,7 @@
<word value="r14"/>
<word value="r15"/>
</Keywords>
<Keywords Name="Key Words" Attributes="8421376,-2147483643;False:True." Style="">
<Keywords Name="Key Words" Attributes="$00808000,$80000005;False:True." Style="">
<word value="align"/>
<word value="assume"/>
<word value="at"/>
@ -672,31 +672,30 @@
<word value="width"/>
<word value="word"/>
</Keywords>
<Keywords Name="Segments" Attributes="16711935,-2147483643;False:True.B" Style="">
<Keywords Name="Segments" Attributes="$00FF00FF,$80000005;False:True.B" Style="">
<word value="dataseg"/>
<word value="codeseg"/>
</Keywords>
<Set Name="Numbers" Attributes="128,-2147483643;False:True." Style="" Symbols="0123456789"/>
<Range Name="Remarks" Attributes="8388608,-2147483643;False:True." Style=""
<Set Name="Numbers" Attributes="$00000080,$80000005;False:True." Style="" Symbols="0123456789"/>
<Range Name="Remarks" Attributes="$00800000,$80000005;False:True." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol=";" OpenSymbolPartOfTerm="Right" CloseSymbolPartOfTerm="False" CloseOnEol="True"/>
</Range>
<Range Name="String" Attributes="255,-2147483643;False:True." Style=""
<Range Name="String" Attributes="$000000FF,$80000005;False:True." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="'" OpenSymbolPartOfTerm="Right" CloseSymbol="'" CloseSymbolPartOfTerm="False"/>
</Range>
<Range Name="." Attributes="16711680,-2147483643;False:True." Style=""
<Range Name="." Attributes="$00FF0000,$80000005;False:True." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="." OpenSymbolPartOfTerm="Right" CloseSymbolPartOfTerm="False" CloseOnTerm="True"/>
</Range>
<Range Name="@" Attributes="33023,-2147483643;False:True." Style=""
<Range Name="@" Attributes="$000080FF,$80000005;False:True." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="@" OpenSymbolPartOfTerm="Right" CloseSymbolPartOfTerm="False" CloseOnTerm="True"/>
</Range>
<Range Name="String" Attributes="255,-2147483643;False:True." Style=""
<Range Name="String" Attributes="$000000FF,$80000005;False:True." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="&quot;" OpenSymbolPartOfTerm="Right" CloseSymbol="&quot;" CloseSymbolPartOfTerm="False"/>
</Range>
</Range>
<CopyRight>Rule file for UniHighlighter Delphi component (Copyright(C) Fantasist(walking_in_the_sky@yahoo.com), Vit(nevzorov@yahoo.com), Vitalik(vetal-x@mail.ru), 2002-2004)</CopyRight>
</UniHighlighter>

View file

@ -21,7 +21,7 @@
<Range Name="Root" Attributes="-2147483640,-2147483643;False:False." Style="" CaseSensitive="True"
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule/>
<Keywords Name="Keywords" Attributes="32768,16777215;False:True." Style="">
<Keywords Name="Keywords" Attributes="32768,$80000005;False:True." Style="">
<Word Value="abstract"/>
<Word Value="as"/>
<Word Value="base"/>
@ -86,7 +86,7 @@
<Word Value="volatile"/>
<Word Value="while"/>
</Keywords>
<Keywords Name="Contextual keywords" Attributes="32768,16777215;False:True." Style="">
<Keywords Name="Contextual keywords" Attributes="32768,$80000005;False:True." Style="">
<Word Value="add"/>
<Word Value="and"/>
<Word Value="alias"/>
@ -125,7 +125,7 @@
<Word Value="with"/>
<Word Value="yield"/>
</Keywords>
<Keywords Name="Data types" Attributes="16711680,16777215;False:True." Style="">
<Keywords Name="Data types" Attributes="16711680,$80000005;False:True." Style="">
<Word Value="bool"/>
<Word Value="byte"/>
<Word Value="char"/>
@ -155,7 +155,7 @@
<Word Value="object"/>
<Word Value="string"/>
</Keywords>
<Keywords Name=".NET Data types" Attributes="32896,16777215;False:True." Style="">
<Keywords Name=".NET Data types" Attributes="32896,$80000005;False:True." Style="">
<Word Value="Boolean"/>
<Word Value="Byte"/>
<Word Value="SByte"/>
@ -174,7 +174,7 @@
<Word Value="Object"/>
<Word Value="String"/>
</Keywords>
<Keywords Name="Preprocessor directives" Attributes="16711808,16777215;False:True." Style="">
<Keywords Name="Preprocessor directives" Attributes="16711808,$80000005;False:True." Style="">
<Word Value="#nullable"/>
<Word Value="#if"/>
<Word Value="#elif"/>
@ -189,7 +189,7 @@
<Word Value="#line"/>
<Word Value="#pragma"/>
</Keywords>
<Keywords Name="Operators" Attributes="33023,16777215;False:True." Style="">
<Keywords Name="Operators" Attributes="33023,$80000005;False:True." Style="">
<Word Value="+"/>
<Word Value="-"/>
<Word Value="*"/>
@ -207,19 +207,19 @@
<Word Value="("/>
<Word Value=")"/>
</Keywords>
<Range Name="Strings '..'" Attributes="255,16777215;False:True." Style=""
<Range Name="Strings '..'" Attributes="255,$80000005;False:True." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="'" CloseSymbol="'"/>
</Range>
<Range Name="Strings &quot;..&quot;" Attributes="255,16777215;False:True." Style=""
<Range Name="Strings &quot;..&quot;" Attributes="255,$80000005;False:True." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="&quot;" CloseSymbol="&quot;"/>
</Range>
<Range Name="Remarks //" Attributes="8388608,16777215;False:True." Style=""
<Range Name="Remarks //" Attributes="8388608,$80000005;False:True." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="//" CloseOnEol="True"/>
</Range>
<Range Name="Remarks /*..*/" Attributes="8388608,16777215;False:True." Style=""
<Range Name="Remarks /*..*/" Attributes="8388608,$80000005;False:True." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="/*" CloseSymbol="*/"/>
</Range>

View file

@ -1,8 +1,8 @@
<UniHighlighter version="1.8.1">
<UniHighlighter version="1.8">
<Info>
<General Name="DC Error File" Extensions="err"/>
<General Name="DC Error File" Extensions="err" Other="0"/>
<Author Name="Skif_off" Email="" Web="" Copyright="" Company="" Remark=""/>
<Version Version="0" Revision="2" Date="42820,0524461111"/>
<Version Version="0" Revision="2" Date="45067.6951690509"/>
<History>
</History>
<Sample>
@ -24,33 +24,32 @@
</Sample>
</Info>
<Scheme File="" Name=""/>
<Range Name="Root" Attributes="0,16777215;False:False." Style="" CaseSensitive="True"
<Range Name="Root" Attributes="$80000008,$80000005;False:False." Style="" CaseSensitive="True"
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule/>
<Keywords Name="Keywords" Attributes="8388608,536870911;False:False." Style="">
<Keywords Name="Keywords" Attributes="$00800000,$80000005;False:True." Style="">
<word value="line"/>
<word value="column"/>
<word value="in"/>
<word value="of"/>
<word value="Stack trace:"/>
</Keywords>
<Set Name="Digits" Attributes="8421376,536870911;False:False." Style="" Symbols="0123456789"/>
<Range Name="Date" Attributes="8388608,16777215;False:False." Style="" CaseSensitive="True"
<Set Name="Digits" Attributes="$00808000,$80000005;False:True." Style="" Symbols="0123456789"/>
<Range Name="Date" Attributes="$00800000,$80000005;False:True." Style="" CaseSensitive="True"
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="--------------- " CloseSymbol=" ---------------"/>
</Range>
<Range Name="About" Attributes="8388736,536870911;False:False." Style="" CaseSensitive="True"
<Range Name="About" Attributes="$00800080,$80000005;False:True." Style="" CaseSensitive="True"
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="|" CloseOnEol="True"/>
</Range>
<Range Name="Exception" Attributes="210,536870911;False:False." Style="" CaseSensitive="True"
<Range Name="Exception" Attributes="$000000D2,$80000005;False:True." Style="" CaseSensitive="True"
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="Unhandled exception" OpenSymbolStartLine="True" CloseSymbol="" CloseSymbolFinishOnEol="True" CloseOnEol="True"/>
</Range>
<Range Name="Address" Attributes="150,536870911;False:False." Style="" CaseSensitive="True"
<Range Name="Address" Attributes="$00000096,$80000005;False:True." Style="" CaseSensitive="True"
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="$" CloseSymbolPartOfTerm="False" CloseOnTerm="True"/>
</Range>
</Range>
<CopyRight>Rule file for UniHighlighter Delphi component (Copyright(C) Fantasist(walking_in_the_sky@yahoo.com), Vit(nevzorov@yahoo.com), Vitalik(vetal-x@mail.ru), 2002-2004)</CopyRight>
</UniHighlighter>

View file

@ -1,8 +1,8 @@
<UniHighlighter version="1.8.1">
<UniHighlighter version="1.8">
<Info>
<General Name="Java script" Extensions="js,json"/>
<General Name="Java script" Extensions="js,json" Other="0"/>
<Author Name="Vitaly Nevzorov" Email="nevzorov@yahoo.com" Web="www.delphist.com" Copyright="Copyright (c) Vitaly Nevzorov, 2002" Company="N/A" Remark=""/>
<Version Version="1" Revision="0" Date="37650.2974113773"/>
<Version Version="1" Revision="0" Date="45067.6951690509"/>
<History>
</History>
<Sample>
@ -25,10 +25,10 @@
</Sample>
</Info>
<Scheme File="" Name=""/>
<Range Name="Root" Attributes="0,16777215;False:False." Style=""
<Range Name="Root" Attributes="$80000008,$80000005;False:False." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule/>
<Keywords Name="Functions and key words" Attributes="32768,16777215;False:False." Style="">
<Keywords Name="Functions and key words" Attributes="$00008000,$80000005;False:True." Style="">
<word value="E"/>
<word value="back"/>
<word value="big"/>
@ -481,7 +481,7 @@
<word value="JSObject"/>
<word value="PrivilegeManager"/>
</Keywords>
<Keywords Name="Reserved words" Attributes="16711680,16777215;False:False." Style="">
<Keywords Name="Reserved words" Attributes="$00FF0000,$80000005;False:True." Style="">
<word value="if"/>
<word value="do"/>
<word value="in"/>
@ -547,7 +547,7 @@
<word value="constructor"/>
<word value="final"/>
</Keywords>
<Keywords Name="Common Events" Attributes="16711808,16777215;False:False." Style="">
<Keywords Name="Common Events" Attributes="$00FF0080,$80000005;False:True." Style="">
<word value="onLoad"/>
<word value="onClick"/>
<word value="onChange"/>
@ -573,18 +573,17 @@
<word value="onmove"/>
<word value="onresize"/>
</Keywords>
<Range Name="Remark //" Attributes="10485760,16777215;False:False." Style="" CaseSensitive="True"
<Range Name="Remark //" Attributes="$00A00000,$80000005;False:True." Style="" CaseSensitive="True"
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="//" CloseOnEol="True"/>
</Range>
<Range Name="Remark /*...*/" Attributes="10485760,16777215;False:False." Style="" CaseSensitive="True"
<Range Name="Remark /*...*/" Attributes="$00A00000,$80000005;False:True." Style="" CaseSensitive="True"
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="/*" CloseSymbol="*/"/>
</Range>
<Range Name="Strings" Attributes="255,16777215;False:False." Style="" CaseSensitive="True"
<Range Name="Strings" Attributes="$000000FF,$80000005;False:True." Style="" CaseSensitive="True"
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="&quot;" CloseSymbol="&quot;"/>
</Range>
</Range>
<CopyRight>Rule file for UniHighlighter Delphi component (Copyright(C) Fantasist(walking_in_the_sky@yahoo.com), Vit(nevzorov@yahoo.com), Vitalik(vetal-x@mail.ru), 2002-2004)</CopyRight>
</UniHighlighter>

View file

@ -2,17 +2,17 @@
<Info>
<General Name="PowerShell" Extensions="ps1,psm1,psd1" Other="0"/>
<Author Name="" Email="" Web="" Copyright="" Company="" Remark=""/>
<Version Version="1" Revision="0" Date="45024.9890724884"/>
<Version Version="1" Revision="0" Date="45067.6951692245"/>
<History>
</History>
<Sample>
</Sample>
</Info>
<Scheme File="" Name=""/>
<Range Name="Root" Attributes="0,16777215;False:False." Style=""
<Range Name="Root" Attributes="$80000008,$80000005;False:False." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbolPartOfTerm="False" CloseSymbolPartOfTerm="False"/>
<Keywords Name="Keywords" Attributes="16711680,16777215;False:True." Style="">
<Keywords Name="Keywords" Attributes="$00FF0000,$80000005;False:True." Style="">
<Word Value="begin"/>
<Word Value="break"/>
<Word Value="catch"/>
@ -50,7 +50,7 @@
<Word Value="while"/>
<Word Value="workflow"/>
</Keywords>
<Keywords Name="Aliases" Attributes="12615680,16777215;False:True." Style="">
<Keywords Name="Aliases" Attributes="$00C08000,$80000005;False:True." Style="">
<Word Value="Add-AppPackage"/>
<Word Value="Add-AppPackageVolume"/>
<Word Value="Add-AppProvisionedPackage"/>
@ -104,7 +104,7 @@
<Word Value="Set-SystemLanguage"/>
<Word Value="Write-FileSystemCache"/>
</Keywords>
<Keywords Name="Functions" Attributes="128,16777215;False:True." Style="">
<Keywords Name="Functions" Attributes="$00000080,$80000005;False:True." Style="">
<Word Value="A:"/>
<Word Value="Add-BCDataCacheExtension"/>
<Word Value="Add-BitLockerKeyProtector"/>
@ -1090,7 +1090,7 @@
<Word Value="Y:"/>
<Word Value="Z:"/>
</Keywords>
<Keywords Name="Cmdlets" Attributes="8388736,16777215;False:True." Style="">
<Keywords Name="Cmdlets" Attributes="$00800080,$80000005;False:True." Style="">
<Word Value="Add-AppvClientConnectionGroup"/>
<Word Value="Add-AppvClientPackage"/>
<Word Value="Add-AppvPublishingServer"/>
@ -1783,31 +1783,31 @@
<Word Value="Write-Verbose"/>
<Word Value="Write-Warning"/>
</Keywords>
<Range Name="Strings @'..'@" Attributes="255,16777215;False:True." Style=""
<Range Name="Strings @'..'@" Attributes="$000000FF,$80000005;False:True." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="@'" CloseSymbol="'@"/>
</Range>
<Range Name="Strings @&quot;..&quot;@" Attributes="255,16777215;False:True." Style=""
<Range Name="Strings @&quot;..&quot;@" Attributes="$000000FF,$80000005;False:True." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="@&quot;" OpenSymbolPartOfTerm="Right" CloseSymbol="&quot;@" CloseSymbolPartOfTerm="False"/>
</Range>
<Range Name="Strings '..'" Attributes="255,16777215;False:True." Style=""
<Range Name="Strings '..'" Attributes="$000000FF,$80000005;False:True." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="'" CloseSymbol="'"/>
</Range>
<Range Name="Strings &quot;..&quot;" Attributes="255,16777215;False:True." Style=""
<Range Name="Strings &quot;..&quot;" Attributes="$000000FF,$80000005;False:True." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="&quot;" OpenSymbolPartOfTerm="Right" CloseSymbol="&quot;" CloseSymbolPartOfTerm="False"/>
</Range>
<Range Name="Remarks #" Attributes="8388608,16777215;False:True." Style=""
<Range Name="Remarks #" Attributes="$00800000,$80000005;False:True." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="#" OpenSymbolPartOfTerm="Right" CloseSymbolPartOfTerm="False" CloseOnEol="True"/>
</Range>
<Range Name="Remarks &lt;#..#&gt;" Attributes="8388608,16777215;False:True." Style=""
<Range Name="Remarks &lt;#..#&gt;" Attributes="$00800000,$80000005;False:True." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="&lt;#" OpenSymbolPartOfTerm="Right" CloseSymbol="#&gt;" CloseSymbolPartOfTerm="False"/>
</Range>
<Range Name="Variables" Attributes="32768,16777215;False:True." Style=""
<Range Name="Variables" Attributes="$00008000,$80000005;False:True." Style=""
Delimiters="!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\]^`{|}~">
<Rule OpenSymbol="$" OpenSymbolPartOfTerm="Right" CloseSymbolPartOfTerm="False" CloseOnTerm="True"/>
</Range>

View file

@ -0,0 +1,512 @@
{
"Styles" : [
{
"Name" : "Light",
"UniHighlighters" : [
{
"Name" : "Assembler (x86)",
"Ranges" : [
{
"Name" : "Root",
"Attributes" : "$80000008,$80000005;False:False.",
"Sets" : [
{
"Name" : "Numbers",
"Attributes" : "$00000080,$80000005;False:True."
}
],
"KeyLists" : [
{
"Name" : "Commands",
"Attributes" : "$00008000,$80000005;False:True."
},
{
"Name" : "Commands SSE2",
"Attributes" : "$00008000,$80000005;False:True."
},
{
"Name" : "Registers",
"Attributes" : "$00FF0080,$80000005;False:True."
},
{
"Name" : "Registers x86_64",
"Attributes" : "$00FF0080,$80000005;False:True."
},
{
"Name" : "Key Words",
"Attributes" : "$00808000,$80000005;False:True."
},
{
"Name" : "Segments",
"Attributes" : "$00FF00FF,$80000005;False:True.B"
}
],
"Ranges" : [
{
"Name" : "Remarks",
"Attributes" : "$00800000,$80000005;False:True."
},
{
"Name" : "String",
"Attributes" : "$000000FF,$80000005;False:True."
},
{
"Name" : ".",
"Attributes" : "$00FF0000,$80000005;False:True."
},
{
"Name" : "@",
"Attributes" : "$000080FF,$80000005;False:True."
},
{
"Name" : "String",
"Attributes" : "$000000FF,$80000005;False:True."
}
]
}
]
},
{
"Name" : "C#",
"Ranges" : [
{
"Name" : "Root",
"Attributes" : "$80000008,$80000005;False:False.",
"KeyLists" : [
{
"Name" : "Keywords",
"Attributes" : "$00008000,$80000005;False:True."
},
{
"Name" : "Contextual keywords",
"Attributes" : "$00008000,$80000005;False:True."
},
{
"Name" : "Data types",
"Attributes" : "$00FF0000,$80000005;False:True."
},
{
"Name" : ".NET Data types",
"Attributes" : "$00008080,$80000005;False:True."
},
{
"Name" : "Preprocessor directives",
"Attributes" : "$00FF0080,$80000005;False:True."
},
{
"Name" : "Operators",
"Attributes" : "$000080FF,$80000005;False:True."
}
],
"Ranges" : [
{
"Name" : "Strings '..'",
"Attributes" : "$000000FF,$80000005;False:True."
},
{
"Name" : "Strings \"..\"",
"Attributes" : "$000000FF,$80000005;False:True."
},
{
"Name" : "Remarks //",
"Attributes" : "$00800000,$80000005;False:True."
},
{
"Name" : "Remarks /*..*/",
"Attributes" : "$00800000,$80000005;False:True."
}
]
}
]
},
{
"Name" : "DC Error File",
"Ranges" : [
{
"Name" : "Root",
"Attributes" : "$80000008,$80000005;False:False.",
"Sets" : [
{
"Name" : "Digits",
"Attributes" : "$00808000,$1FFFFFFF;False:False."
}
],
"KeyLists" : [
{
"Name" : "Keywords",
"Attributes" : "$00800000,$1FFFFFFF;False:False."
}
],
"Ranges" : [
{
"Name" : "Date",
"Attributes" : "$00800000,$1FFFFFFF;False:True."
},
{
"Name" : "About",
"Attributes" : "$00800080,$1FFFFFFF;False:False."
},
{
"Name" : "Exception",
"Attributes" : "$000000D2,$1FFFFFFF;False:False."
},
{
"Name" : "Address",
"Attributes" : "$00000096,$1FFFFFFF;False:False."
}
]
}
]
},
{
"Name" : "Java script",
"Ranges" : [
{
"Name" : "Root",
"Attributes" : "$80000008,$80000005;False:False.",
"KeyLists" : [
{
"Name" : "Functions and key words",
"Attributes" : "$00008000,$80000005;False:True."
},
{
"Name" : "Reserved words",
"Attributes" : "$00FF0000,$80000005;False:True."
},
{
"Name" : "Common Events",
"Attributes" : "$00FF0080,$80000005;False:True."
}
],
"Ranges" : [
{
"Name" : "Remark //",
"Attributes" : "$00A00000,$80000005;False:True."
},
{
"Name" : "Remark /*...*/",
"Attributes" : "$00A00000,$80000005;False:True."
},
{
"Name" : "Strings",
"Attributes" : "$000000FF,$80000005;False:True."
}
]
}
]
},
{
"Name" : "PowerShell",
"Ranges" : [
{
"Name" : "Root",
"Attributes" : "$80000008,$80000005;False:False.",
"KeyLists" : [
{
"Name" : "Keywords",
"Attributes" : "$00FF0000,$80000005;False:True."
},
{
"Name" : "Aliases",
"Attributes" : "$00C08000,$80000005;False:True."
},
{
"Name" : "Functions",
"Attributes" : "$00000080,$80000005;False:True."
},
{
"Name" : "Cmdlets",
"Attributes" : "$00800080,$80000005;False:True."
}
],
"Ranges" : [
{
"Name" : "Strings @'..'@",
"Attributes" : "$000000FF,$80000005;False:True."
},
{
"Name" : "Strings @\"..\"@",
"Attributes" : "$000000FF,$80000005;False:True."
},
{
"Name" : "Strings '..'",
"Attributes" : "$000000FF,$80000005;False:True."
},
{
"Name" : "Strings \"..\"",
"Attributes" : "$000000FF,$80000005;False:True."
},
{
"Name" : "Remarks #",
"Attributes" : "$00800000,$80000005;False:True."
},
{
"Name" : "Remarks <#..#>",
"Attributes" : "$00800000,$80000005;False:True."
},
{
"Name" : "Variables",
"Attributes" : "$00008000,$80000005;False:True."
}
]
}
]
}
]
},
{
"Name" : "Dark",
"UniHighlighters" : [
{
"Name" : "Assembler (x86)",
"Ranges" : [
{
"Name" : "Root",
"Attributes" : "$80000008,$80000005;False:False.",
"Sets" : [
{
"Name" : "Numbers",
"Attributes" : "$00E8BCBC,$80000005;False:True."
}
],
"KeyLists" : [
{
"Name" : "Commands",
"Attributes" : "$008AD277,$80000005;False:True."
},
{
"Name" : "Commands SSE2",
"Attributes" : "$00008000,$80000005;False:True."
},
{
"Name" : "Registers",
"Attributes" : "$00E8BCBC,$80000005;False:True."
},
{
"Name" : "Registers x86_64",
"Attributes" : "$00E8BCBC,$80000005;False:True."
},
{
"Name" : "Key Words",
"Attributes" : "$00808000,$80000005;False:True."
},
{
"Name" : "Segments",
"Attributes" : "$00D15894,$80000005;False:True.B"
}
],
"Ranges" : [
{
"Name" : "Remarks",
"Attributes" : "$00C09B61,$80000005;False:True."
},
{
"Name" : "String",
"Attributes" : "$00898BB9,$80000005;False:True."
},
{
"Name" : ".",
"Attributes" : "$00FBA249,$80000005;False:True."
},
{
"Name" : "@",
"Attributes" : "$000080FF,$80000005;False:True."
},
{
"Name" : "String",
"Attributes" : "$00898BB9,$80000005;False:True."
}
]
}
]
},
{
"Name" : "C#",
"Ranges" : [
{
"Name" : "Root",
"Attributes" : "$80000008,$80000005;False:False.",
"KeyLists" : [
{
"Name" : "Keywords",
"Attributes" : "$00008000,$80000005;False:True."
},
{
"Name" : "Contextual keywords",
"Attributes" : "$00008000,$80000005;False:True."
},
{
"Name" : "Data types",
"Attributes" : "$00FBA249,$80000005;False:True."
},
{
"Name" : ".NET Data types",
"Attributes" : "$00008080,$80000005;False:True."
},
{
"Name" : "Preprocessor directives",
"Attributes" : "$00D15894,$80000005;False:True."
},
{
"Name" : "Operators",
"Attributes" : "$000080FF,$80000005;False:True."
}
],
"Ranges" : [
{
"Name" : "Strings '..'",
"Attributes" : "$00898BB9,$80000005;False:True."
},
{
"Name" : "Strings \"..\"",
"Attributes" : "$00898BB9,$80000005;False:True."
},
{
"Name" : "Remarks //",
"Attributes" : "$00C09B61,$80000005;False:True."
},
{
"Name" : "Remarks /*..*/",
"Attributes" : "$00C09B61,$80000005;False:True."
}
]
}
]
},
{
"Name" : "DC Error File",
"Ranges" : [
{
"Name" : "Root",
"Attributes" : "$00AAAAAA,$80000005;False:False.",
"Sets" : [
{
"Name" : "Digits",
"Attributes" : "$00C09B61,$80000005;False:False."
}
],
"KeyLists" : [
{
"Name" : "Keywords",
"Attributes" : "$00C09B61,$80000005;False:False."
}
],
"Ranges" : [
{
"Name" : "Date",
"Attributes" : "$00000000,$008AD277;False:False."
},
{
"Name" : "About",
"Attributes" : "$008AD277,$80000005;False:False."
},
{
"Name" : "Exception",
"Attributes" : "$00898BB9,$80000005;False:False."
},
{
"Name" : "Address",
"Attributes" : "$00898BB9,$80000005;False:False."
}
]
}
]
},
{
"Name" : "Java script",
"Ranges" : [
{
"Name" : "Root",
"Attributes" : "$80000008,$80000005;False:False.",
"KeyLists" : [
{
"Name" : "Functions and key words",
"Attributes" : "$008AD277,$80000005;False:False."
},
{
"Name" : "Reserved words",
"Attributes" : "$00E8BCBC,$80000005;False:False."
},
{
"Name" : "Common Events",
"Attributes" : "$00E8BCBC,$80000005;False:False."
}
],
"Ranges" : [
{
"Name" : "Remark //",
"Attributes" : "$00C09B61,$80000005;False:False."
},
{
"Name" : "Remark /*...*/",
"Attributes" : "$00C09B61,$80000005;False:False."
},
{
"Name" : "Strings",
"Attributes" : "$00898BB9,$80000005;False:False."
}
]
}
]
},
{
"Name" : "PowerShell",
"Ranges" : [
{
"Name" : "Root",
"Attributes" : "$80000008,$80000005;False:False.",
"KeyLists" : [
{
"Name" : "Keywords",
"Attributes" : "$00FBA249,$80000005;False:True."
},
{
"Name" : "Aliases",
"Attributes" : "$00C08000,$80000005;False:True."
},
{
"Name" : "Functions",
"Attributes" : "$008AD277,$80000005;False:True."
},
{
"Name" : "Cmdlets",
"Attributes" : "$00D15894,$80000005;False:True."
}
],
"Ranges" : [
{
"Name" : "Strings @'..'@",
"Attributes" : "$00898BB9,$80000005;False:True."
},
{
"Name" : "Strings @\"..\"@",
"Attributes" : "$00898BB9,$80000005;False:True."
},
{
"Name" : "Strings '..'",
"Attributes" : "$00898BB9,$80000005;False:True."
},
{
"Name" : "Strings \"..\"",
"Attributes" : "$00898BB9,$80000005;False:True."
},
{
"Name" : "Remarks #",
"Attributes" : "$00C09B61,$80000005;False:True."
},
{
"Name" : "Remarks <#..#>",
"Attributes" : "$00C09B61,$80000005;False:True."
},
{
"Name" : "Variables",
"Attributes" : "$00008000,$80000005;False:True."
}
]
}
]
}
]
}
]
}

1
src/dmhigh.json Normal file

File diff suppressed because one or more lines are too long

View file

@ -1,349 +0,0 @@
object dmHighl: TdmHighl
OnCreate = dmHighlCreate
OnDestroy = dmHighlDestroy
OldCreateOrder = False
Height = 379
HorizontalOffset = 309
VerticalOffset = 86
Width = 457
object SynPasSyn1: TSynPasSyn
Tag = 1
DefaultFilter = 'Pascal Files (*.pas,*.dpr,*.dpk,*.inc,*.pp,*.lpr)|*.pas;*.dpr;*.dpk;*.inc;*.pp;*.lpr'
Enabled = False
AsmAttri.Foreground = clGreen
AsmAttri.FrameEdges = sfeAround
CommentAttri.Foreground = clBlue
CommentAttri.FrameEdges = sfeAround
CommentAttri.Style = [fsBold]
IDEDirectiveAttri.FrameEdges = sfeAround
IdentifierAttri.FrameEdges = sfeAround
KeyAttri.FrameEdges = sfeAround
NumberAttri.Foreground = clNavy
NumberAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
StringAttri.Foreground = clBlue
StringAttri.FrameEdges = sfeAround
SymbolAttri.Foreground = clRed
SymbolAttri.FrameEdges = sfeAround
CaseLabelAttri.FrameEdges = sfeAround
DirectiveAttri.Foreground = clRed
DirectiveAttri.FrameEdges = sfeAround
DirectiveAttri.Style = [fsBold]
CompilerMode = pcmDelphi
NestedComments = False
left = 24
top = 8
end
object SynCppSyn1: TSynCppSyn
Tag = 1
Enabled = False
AsmAttri.Foreground = clGreen
AsmAttri.FrameEdges = sfeAround
CommentAttri.Foreground = clBlue
CommentAttri.FrameEdges = sfeAround
CommentAttri.Style = [fsBold]
DirecAttri.Foreground = clBlue
DirecAttri.FrameEdges = sfeAround
DirecAttri.Style = [fsBold]
IdentifierAttri.FrameEdges = sfeAround
InvalidAttri.FrameEdges = sfeAround
KeyAttri.FrameEdges = sfeAround
NumberAttri.Foreground = clNavy
NumberAttri.FrameEdges = sfeAround
SpaceAttri.Foreground = clNone
SpaceAttri.FrameEdges = sfeAround
StringAttri.Foreground = clBlue
StringAttri.FrameEdges = sfeAround
SymbolAttri.Foreground = clRed
SymbolAttri.FrameEdges = sfeAround
left = 96
top = 8
end
object SynJavaSyn1: TSynJavaSyn
Enabled = False
CommentAttri.Foreground = clBlue
CommentAttri.FrameEdges = sfeAround
CommentAttri.Style = [fsBold]
DocumentAttri.Foreground = clBlue
DocumentAttri.FrameEdges = sfeAround
DocumentAttri.Style = [fsBold]
IdentifierAttri.FrameEdges = sfeAround
InvalidAttri.FrameEdges = sfeAround
KeyAttri.FrameEdges = sfeAround
NumberAttri.Foreground = clNavy
NumberAttri.FrameEdges = sfeAround
SpaceAttri.Foreground = clNone
SpaceAttri.FrameEdges = sfeAround
StringAttri.Foreground = clBlue
StringAttri.FrameEdges = sfeAround
SymbolAttri.Foreground = clRed
SymbolAttri.FrameEdges = sfeAround
left = 168
top = 8
end
object SynHTMLSyn1: TSynHTMLSyn
Tag = 1
Enabled = False
AndAttri.FrameEdges = sfeAround
ASPAttri.FrameEdges = sfeAround
CommentAttri.FrameEdges = sfeAround
IdentifierAttri.FrameEdges = sfeAround
KeyAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
SymbolAttri.FrameEdges = sfeAround
TextAttri.FrameEdges = sfeAround
UndefKeyAttri.FrameEdges = sfeAround
ValueAttri.FrameEdges = sfeAround
left = 328
top = 8
end
object SynXMLSyn1: TSynXMLSyn
Tag = 1
Enabled = False
ElementAttri.FrameEdges = sfeAround
AttributeAttri.FrameEdges = sfeAround
NamespaceAttributeAttri.FrameEdges = sfeAround
AttributeValueAttri.FrameEdges = sfeAround
NamespaceAttributeValueAttri.FrameEdges = sfeAround
TextAttri.FrameEdges = sfeAround
CDATAAttri.FrameEdges = sfeAround
EntityRefAttri.FrameEdges = sfeAround
ProcessingInstructionAttri.FrameEdges = sfeAround
CommentAttri.FrameEdges = sfeAround
DocTypeAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
SymbolAttri.FrameEdges = sfeAround
WantBracesParsed = False
left = 24
top = 72
end
object SynLFMSyn1: TSynLFMSyn
Tag = 1
Enabled = False
CommentAttri.Foreground = clBlue
CommentAttri.FrameEdges = sfeAround
CommentAttri.Style = [fsBold]
IdentifierAttri.FrameEdges = sfeAround
KeyAttri.FrameEdges = sfeAround
NumberAttri.Foreground = clNavy
NumberAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
StringAttri.Foreground = clBlue
StringAttri.FrameEdges = sfeAround
left = 96
top = 72
end
object SynUNIXShellScriptSyn1: TSynUNIXShellScriptSyn
Tag = 1
Enabled = False
CommentAttri.FrameEdges = sfeAround
IdentifierAttri.FrameEdges = sfeAround
KeyAttri.FrameEdges = sfeAround
SecondKeyAttri.FrameEdges = sfeAround
NumberAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
StringAttri.FrameEdges = sfeAround
SymbolAttri.FrameEdges = sfeAround
VarAttri.FrameEdges = sfeAround
left = 296
top = 72
end
object SynPHPSyn1: TSynPHPSyn
Tag = 1
Enabled = False
CommentAttri.Foreground = clBlue
CommentAttri.FrameEdges = sfeAround
CommentAttri.Style = [fsBold]
IdentifierAttri.FrameEdges = sfeAround
InvalidSymbolAttri.FrameEdges = sfeAround
KeyAttri.FrameEdges = sfeAround
NumberAttri.Foreground = clNavy
NumberAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
StringAttri.Foreground = clBlue
StringAttri.FrameEdges = sfeAround
SymbolAttri.Foreground = clRed
SymbolAttri.FrameEdges = sfeAround
VariableAttri.FrameEdges = sfeAround
left = 96
top = 136
end
object SynTeXSyn1: TSynTeXSyn
Tag = 1
Enabled = False
CommentAttri.FrameEdges = sfeAround
TextAttri.FrameEdges = sfeAround
ControlSequenceAttri.FrameEdges = sfeAround
MathmodeAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
BraceAttri.FrameEdges = sfeAround
BracketAttri.FrameEdges = sfeAround
left = 168
top = 136
end
object SynSQLSyn1: TSynSQLSyn
Tag = 1
Enabled = False
CommentAttri.Foreground = clBlue
CommentAttri.FrameEdges = sfeAround
CommentAttri.Style = [fsBold]
DataTypeAttri.FrameEdges = sfeAround
DefaultPackageAttri.FrameEdges = sfeAround
ExceptionAttri.FrameEdges = sfeAround
FunctionAttri.FrameEdges = sfeAround
IdentifierAttri.FrameEdges = sfeAround
KeyAttri.FrameEdges = sfeAround
NumberAttri.Foreground = clNavy
NumberAttri.FrameEdges = sfeAround
PLSQLAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
SQLPlusAttri.FrameEdges = sfeAround
StringAttri.Foreground = clBlue
StringAttri.FrameEdges = sfeAround
SymbolAttri.Foreground = clRed
SymbolAttri.FrameEdges = sfeAround
TableNameAttri.FrameEdges = sfeAround
VariableAttri.FrameEdges = sfeAround
SQLDialect = sqlSybase
left = 240
top = 136
end
object SynPerlSyn1: TSynPerlSyn
Tag = 1
Enabled = False
CommentAttri.Foreground = clBlue
CommentAttri.FrameEdges = sfeAround
CommentAttri.Style = [fsBold]
IdentifierAttri.FrameEdges = sfeAround
InvalidAttri.FrameEdges = sfeAround
KeyAttri.FrameEdges = sfeAround
NumberAttri.Foreground = clNavy
NumberAttri.FrameEdges = sfeAround
OperatorAttri.FrameEdges = sfeAround
PragmaAttri.FrameEdges = sfeAround
SpaceAttri.Foreground = clNone
SpaceAttri.FrameEdges = sfeAround
StringAttri.Foreground = clNavy
StringAttri.FrameEdges = sfeAround
SymbolAttri.Foreground = clRed
SymbolAttri.FrameEdges = sfeAround
VariableAttri.FrameEdges = sfeAround
left = 240
top = 8
end
object SynCssSyn1: TSynCssSyn
Tag = 1
Enabled = False
CommentAttri.Foreground = clBlue
CommentAttri.FrameEdges = sfeAround
CommentAttri.Style = [fsBold]
IdentifierAttri.FrameEdges = sfeAround
KeyAttri.FrameEdges = sfeAround
NumberAttri.Foreground = clNavy
NumberAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
StringAttri.Foreground = clBlue
StringAttri.FrameEdges = sfeAround
SymbolAttri.Foreground = clRed
SymbolAttri.FrameEdges = sfeAround
left = 24
top = 136
end
object SynPythonSyn1: TSynPythonSyn
Tag = 1
Enabled = False
CommentAttri.FrameEdges = sfeAround
IdentifierAttri.FrameEdges = sfeAround
KeyAttri.FrameEdges = sfeAround
NonKeyAttri.FrameEdges = sfeAround
SystemAttri.FrameEdges = sfeAround
NumberAttri.FrameEdges = sfeAround
HexAttri.FrameEdges = sfeAround
OctalAttri.FrameEdges = sfeAround
FloatAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
StringAttri.FrameEdges = sfeAround
DocStringAttri.FrameEdges = sfeAround
SymbolAttri.FrameEdges = sfeAround
ErrorAttri.FrameEdges = sfeAround
left = 328
top = 136
end
object SynDiffSyn1: TSynDiffSyn
Tag = 1
DefaultFilter = 'Difference Files (*.diff,*.patch)|*.diff;*.patch'
Enabled = False
UnknownAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
OrigFileAttri.FrameEdges = sfeAround
NewFileAttri.FrameEdges = sfeAround
ChunkMarkerAttri.FrameEdges = sfeAround
ChunkNewAttri.FrameEdges = sfeAround
ChunkOldAttri.FrameEdges = sfeAround
ChunkMixedAttri.FrameEdges = sfeAround
LineAddedAttri.FrameEdges = sfeAround
LineRemovedAttri.FrameEdges = sfeAround
LineChangedAttri.FrameEdges = sfeAround
LineContextAttri.FrameEdges = sfeAround
left = 168
top = 72
end
object SynVBSyn1: TSynVBSyn
Tag = 1
Enabled = False
CommentAttri.Foreground = clBlue
CommentAttri.FrameEdges = sfeAround
CommentAttri.Style = [fsBold]
IdentifierAttri.FrameEdges = sfeAround
KeyAttri.FrameEdges = sfeAround
NumberAttri.Foreground = clNavy
NumberAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
StringAttri.Foreground = clBlue
StringAttri.FrameEdges = sfeAround
SymbolAttri.Foreground = clRed
SymbolAttri.FrameEdges = sfeAround
left = 24
top = 200
end
object SynBatSyn1: TSynBatSyn
Tag = 1
Enabled = False
CommentAttri.Foreground = clBlue
CommentAttri.FrameEdges = sfeAround
CommentAttri.Style = [fsBold]
IdentifierAttri.FrameEdges = sfeAround
KeyAttri.FrameEdges = sfeAround
NumberAttri.Foreground = clNavy
NumberAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
VariableAttri.FrameEdges = sfeAround
left = 96
top = 200
end
object SynIniSyn1: TSynIniSyn
Tag = 1
Enabled = False
CommentAttri.FrameEdges = sfeAround
TextAttri.FrameEdges = sfeAround
SectionAttri.FrameEdges = sfeAround
KeyAttri.FrameEdges = sfeAround
NumberAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
StringAttri.FrameEdges = sfeAround
SymbolAttri.FrameEdges = sfeAround
left = 168
top = 200
end
object SynPoSyn1: TSynPoSyn
Tag = 1
DefaultFilter = 'Po Files (*.po,*.pot)|*.po;*.pot'
Enabled = False
CommentAttri.FrameEdges = sfeAround
TextAttri.FrameEdges = sfeAround
KeyAttri.FrameEdges = sfeAround
SpaceAttri.FrameEdges = sfeAround
left = 240
top = 200
end
end

File diff suppressed because it is too large Load diff

View file

@ -17,6 +17,9 @@
<DpiAware Value="True"/>
</XPManifest>
<Icon Value="0"/>
<Resources Count="1">
<Resource_0 FileName="dmhigh.json" Type="RCDATA" ResourceName="HIGHLIGHTERS"/>
</Resources>
</General>
<i18n>
<EnableI18N Value="True"/>
@ -307,7 +310,7 @@ end;"/>
<PackageName Value="Image32"/>
</Item13>
</RequiredPackages>
<Units Count="270">
<Units Count="271">
<Unit0>
<Filename Value="doublecmd.lpr"/>
<IsPartOfProject Value="True"/>
@ -359,9 +362,6 @@ end;"/>
<Unit7>
<Filename Value="dmhigh.pas"/>
<IsPartOfProject Value="True"/>
<ComponentName Value="dmHighl"/>
<HasResources Value="True"/>
<ResourceBaseClass Value="DataModule"/>
<UnitName Value="dmHigh"/>
</Unit7>
<Unit8>
@ -1980,6 +1980,11 @@ end;"/>
<ResourceBaseClass Value="Form"/>
<UnitName Value="fChooseEncoding"/>
</Unit269>
<Unit270>
<Filename Value="uhighlighters.pas"/>
<IsPartOfProject Value="True"/>
<UnitName Value="uHighlighters"/>
</Unit270>
</Units>
</ProjectOptions>
<CompilerOptions>

View file

@ -216,7 +216,6 @@ begin
InitPasswordStore;
LoadPixMapManager;
Application.CreateForm(TfrmMain, frmMain); // main form
Application.CreateForm(TdmHighl, dmHighl); // highlighters
Application.CreateForm(TdmComData, dmComData); // common data
Application.CreateForm(TdmHelpManager, dmHelpMgr); // help manager

View file

@ -35,7 +35,7 @@ unit fEditor;
interface
uses
SysUtils, Classes, Controls, Forms, ActnList, Menus, SynEdit, StdCtrls,
SysUtils, Classes, Controls, Forms, ActnList, Menus, SynEdit, StdCtrls, LMessages,
ComCtrls, SynEditSearch, SynEditHighlighter, uDebug, uOSForms, uShowForm, types, Graphics,
uFormCommands, uHotkeyManager, LCLVersion, SynPluginMultiCaret, fEditSearch;
@ -172,6 +172,9 @@ type
function SaveFile(const aFileName: String): Boolean;
procedure SetFileName(const AValue: String);
protected
procedure CMThemeChanged(var Message: TLMessage); message CM_THEMECHANGED;
public
{ Public declarations }
SynEditSearch: TSynEditSearch;
@ -233,7 +236,7 @@ implementation
uses
Clipbrd, dmCommonData, dmHigh, SynEditTypes, LCLType, LConvEncoding,
uLng, uShowMsg, uGlobs, fOptions, DCClassesUtf8, uAdministrator,
uLng, uShowMsg, uGlobs, fOptions, DCClassesUtf8, uAdministrator, uHighlighters,
uOSUtils, uConvEncoding, fOptionsToolsEditor, uDCUtils, uClipboard, uFindFiles;
procedure ShowEditor(const sFileName: String; WaitData: TWaitData = nil);
@ -588,6 +591,14 @@ begin
Caption := ReplaceHome(FFileName);
end;
procedure TfrmEditor.CMThemeChanged(var Message: TLMessage);
var
Highlighter: TSynCustomHighlighter;
begin
Highlighter:= TSynCustomHighlighter(dmHighl.SynHighlighterHashList.Data[StatusBar.Panels[4].Text]);
if Assigned(Highlighter) then dmHighl.SetHighlighter(Editor, Highlighter);
end;
destructor TfrmEditor.Destroy;
begin
LastEditorUsedForConfiguration := nil;

View file

@ -949,7 +949,7 @@ uses
Laz2_XMLRead, DCOSUtils, DCStrUtils, fOptions, fOptionsFrame, fOptionsToolbar, uClassesEx,
uHotDir, uFileSorting, DCBasicTypes, foptionsDirectoryHotlist, uConnectionManager,
fOptionsToolbarBase, fOptionsToolbarMiddle, fEditor, uColumns, StrUtils, uSysFolders,
uColumnsFileView
uColumnsFileView, dmHigh
{$IFDEF MSWINDOWS}
, uNetworkThread
{$ENDIF}
@ -7096,6 +7096,7 @@ begin
FrameRight.UpdateColor;
gColorExt.UpdateStyle;
gHighlighters.UpdateStyle;
DCDEbug('AppThemeChange');

View file

@ -3,7 +3,7 @@
-------------------------------------------------------------------------
Internal editor highlighters configuration frame
Copyright (C) 2012-2017 Alexander Koblov (alexx2000@mail.ru)
Copyright (C) 2012-2023 Alexander Koblov (alexx2000@mail.ru)
Based on Lazarus IDE editor configuration frame (Editor/Display/Colors)
@ -31,7 +31,7 @@ interface
uses
Classes, SysUtils, FileUtil, SynEdit, Forms, Controls, StdCtrls, ExtCtrls,
ColorBox, ComCtrls, Dialogs, Menus, Buttons, fOptionsFrame, DividerBevel, types,
Graphics, SynEditHighlighter, SynUniClasses, SynUniRules, dmHigh;
LMessages, Graphics, SynEditHighlighter, SynUniClasses, SynUniRules, dmHigh;
type
@ -110,6 +110,7 @@ type
FDefHighlightElement,
FCurHighlightElement: TSynHighlighterAttributes;
FCurrentHighlighter: TSynCustomHighlighter;
FCurHighlightRule: TSynRule;
FIsEditingDefaults: Boolean;
UpdatingColor: Boolean;
procedure UpdateCurrentScheme;
@ -122,6 +123,7 @@ type
procedure Done; override;
procedure Load; override;
function Save: TOptionsEditorSaveFlags; override;
procedure CMThemeChanged(var Message: TLMessage); message CM_THEMECHANGED;
public
class function GetIconIndex: Integer; override;
class function GetTitle: String; override;
@ -133,7 +135,8 @@ implementation
{$R *.lfm}
uses
LCLType, LCLIntf, SynEditTypes, SynUniHighlighter, GraphUtil, uLng, uGlobs;
LCLType, LCLIntf, SynEditTypes, SynUniHighlighter, GraphUtil, uLng, uGlobs,
uHighlighters;
const
COLOR_NODE_PREFIX = ' abc ';
@ -258,8 +261,6 @@ begin
FCurrentHighlighter:= TSynCustomHighlighter(cmbLanguage.Items.Objects[cmbLanguage.ItemIndex]);
pnlFileExtensions.Enabled:= not (FCurrentHighlighter is TSynPlainTextHighlighter);
edtFileExtensions.Text:= Copy(FCurrentHighlighter.DefaultFilter, Pos('|', FCurrentHighlighter.DefaultFilter) + 1, MaxInt);
ColorPreview.Lines.Text:= FHighl.GetSampleSource(FCurrentHighlighter);
if ColorPreview.Lines.Text = EmptyStr then
try
ColorPreview.Lines.Text:= FCurrentHighlighter.SampleSource;
except
@ -331,6 +332,12 @@ begin
AttrToEdit.FrameStyle := TSynLineStyle(FrameStyleBox.ItemIndex);
end;
if AttrToEdit is TSynAttributes then
begin
if FCurHighlightRule is TSynRange then
TSynRange(FCurHighlightRule).SetColorForChilds();
end;
UpdatingColor := False;
UpdateCurrentScheme;
end;
@ -436,7 +443,6 @@ var
ParentFore, ParentBack: Boolean;
AttrToShow: TSynHighlighterAttributes;
IsDefault, CanGlobal: Boolean;
ARule: TSynRule;
begin
if UpdatingColor or (ColorElementTree.Selected = nil) or (ColorElementTree.Selected.Data = nil) then
Exit;
@ -450,10 +456,10 @@ begin
ParentBack:= False;
end
else begin
ARule:= TSynRule(ColorElementTree.Selected.Data);
ParentFore:= ARule.Attribs.ParentForeground;
ParentBack:= ARule.Attribs.ParentBackground;
FCurHighlightElement:= ARule.Attribs;
FCurHighlightRule:= TSynRule(ColorElementTree.Selected.Data);
ParentFore:= FCurHighlightRule.Attribs.ParentForeground;
ParentBack:= FCurHighlightRule.Attribs.ParentBackground;
FCurHighlightElement:= FCurHighlightRule.Attribs;
IsDefault := (Node.Level = 0);
CanGlobal := False;
end;
@ -596,7 +602,7 @@ begin
TextStrikeOutCheckBox.Checked := fsStrikeOut in AttrToShow.Style;
end;
if SameText(AttrToShow.Name, rsSynDefaultText) then
if IsDefault then
begin
AttrToShow.OnChange:= @SynPlainTextHighlighterChange;
end;
@ -874,7 +880,6 @@ end;
procedure TfrmOptionsEditorColors.Init;
begin
inherited Init;
FHighl:= TdmHighl.Create(nil, True);
FontOptionsToFont(gFonts[dcfEditor], ColorPreview.Font);
end;
@ -886,7 +891,11 @@ end;
procedure TfrmOptionsEditorColors.Load;
begin
FHighl.Assign(dmHighl);
if (FHighl = nil) then
FHighl:= dmHighl.Clone
else begin
FHighl.Assign(dmHighl);
end;
cmbLanguage.Items.Assign(FHighl.SynHighlighterList);
cmbLanguage.ItemIndex:= 0;
cmbLanguageChange(nil);
@ -898,6 +907,11 @@ begin
dmHighl.Assign(FHighl);
end;
procedure TfrmOptionsEditorColors.CMThemeChanged(var Message: TLMessage);
begin
Load;
end;
class function TfrmOptionsEditorColors.GetIconIndex: Integer;
begin
Result:= 21;

View file

@ -408,6 +408,7 @@ type
protected
procedure WMCommand(var Message: TLMCommand); message LM_COMMAND;
procedure WMSetFocus(var Message: TLMSetFocus); message LM_SETFOCUS;
procedure CMThemeChanged(var Message: TLMessage); message CM_THEMECHANGED;
public
constructor Create(TheOwner: TComponent; aWaitData: TWaitData; aQuickView: Boolean = False); overload;
@ -1265,6 +1266,17 @@ begin
if bPlugin then FWlxModule.SetFocus;
end;
procedure TfrmViewer.CMThemeChanged(var Message: TLMessage);
var
Highlighter: TSynCustomHighlighter;
begin
if miCode.Checked then
begin
Highlighter:= TSynCustomHighlighter(dmHighl.SynHighlighterHashList.Data[SynEdit.Highlighter.LanguageName]);
if Assigned(Highlighter) then dmHighl.SetHighlighter(SynEdit, Highlighter);
end;
end;
procedure TfrmViewer.RedEyes;
var
tmp:TBitMap;
@ -2646,7 +2658,7 @@ begin
SynEdit.OnStatusChange:= @SynEditStatusChange;
SynEditCaret;
end;
SynEdit.Highlighter:= FHighlighter;
dmHighl.SetHighlighter(SynEdit, FHighlighter);
PushPop(FElevate);
try

View file

@ -727,7 +727,7 @@ implementation
uses
LCLProc, LCLType, Dialogs, Laz2_XMLRead, LazUTF8, LConvEncoding, uExifWdx,
uGlobsPaths, uLng, uShowMsg, uFileProcs, uOSUtils, uFindFiles, uEarlyConfig,
uDCUtils, fMultiRename, uDCVersion, uDebug, uFileFunctions,
dmHigh, uDCUtils, fMultiRename, uDCVersion, uDebug, uFileFunctions,
uDefaultPlugins, Lua, uKeyboard, DCOSUtils, DCStrUtils, uPixMapManager,
uSynDiffControls
{$IF DEFINED(MSWINDOWS)}
@ -822,6 +822,7 @@ procedure SaveColorsConfig;
begin
gColors.Save(gStyles.Root);
gColorExt.Save(gStyles.Root);
gHighlighters.Save(gStyles.Root);
gStyles.SaveToFile(gpCfgDir + COLORS_JSON);
end;
@ -863,6 +864,7 @@ begin
gStyles.LoadFromFile(gpCfgDir + COLORS_JSON);
gColors.Load(gStyles.Root);
gColorExt.Load(gStyles.Root);
gHighlighters.Load(gStyles.Root);
Result := True;
end;
@ -1591,6 +1593,7 @@ begin
FreeAndNil(gStyles);
FreeThenNil(ColSet);
FreeThenNil(HotMan);
FreeAndNil(gHighlighters);
end;
{$IFDEF MSWINDOWS}
@ -2365,6 +2368,15 @@ begin
end;
LoadStringsFromFile(glsIgnoreList, ReplaceEnvVars(gIgnoreListFile));
{ Localization }
msgLoadLng;
if (gHighlighters = nil) then
begin
// Must be after msgLoadLng and before LoadColorsConfig
gHighlighters := THighlighters.Create;
end;
{ Hotkeys }
if not mbFileExists(gpCfgDir + gNameSCFile) then
gNameSCFile := 'shortcuts.scf';
@ -2387,9 +2399,6 @@ begin
if mbFileExists(gpCfgDir + 'history.xml') then
LoadConfigCheckErrors(@LoadHistoryConfig, gpCfgDir + 'history.xml', ErrorMessage);
{ Localization }
msgLoadLng;
FillFileFuncList;
{ Specialdir }

View file

@ -40,8 +40,6 @@ interface
uses
Classes, SynEditHighlighter;
procedure GetHighlighters(AOwner: TComponent; AHighlighters: TStringList;
AppendToList: boolean);
function GetHighlightersFilter(AHighlighters: TStringList): string;
function GetHighlighterFromFileExt(AHighlighters: TStringList;
Extension: string): TSynCustomHighlighter;
@ -50,27 +48,6 @@ implementation
uses
SysUtils;
procedure GetHighlighters(AOwner: TComponent; AHighlighters: TStringList;
AppendToList: boolean);
var
i: integer;
Highlighter: TSynCustomHighlighter;
begin
if Assigned(AOwner) and Assigned(AHighlighters) then begin
if not AppendToList then
AHighlighters.Clear;
for i := AOwner.ComponentCount - 1 downto 0 do begin
if not (AOwner.Components[i] is TSynCustomHighlighter) then
continue;
Highlighter := AOwner.Components[i] as TSynCustomHighlighter;
// only one highlighter for each language
if AHighlighters.IndexOf(Highlighter.GetLanguageName) = -1 then
AHighlighters.AddObject(Highlighter.GetLanguageName, Highlighter);
end;
AHighlighters.Sort;
end;
end;
function GetHighlightersFilter(AHighlighters: TStringList): string;
var

340
src/uhighlighters.pas Normal file
View file

@ -0,0 +1,340 @@
unit uHighlighters;
{$mode ObjFPC}{$H+}
interface
uses
Classes, SysUtils, SynEditHighlighter, SynHighlighterPas, SynHighlighterCPP,
SynHighlighterHTML, SynHighlighterUNIXShellScript, SynHighlighterPerl,
SynHighlighterDiff, SynHighlighterPo, SynHighlighterIni, SynHighlighterBat,
SynHighlighterTeX;
const
SYNS_XML_DefaultText = 'Default text';
type
{ TSynBatSynEx }
TSynBatSynEx = class(TSynBatSyn)
public
constructor Create(AOwner: TComponent); override;
end;
{ TSynCppSynEx }
TSynCppSynEx = class(TSynCppSyn)
protected
function GetSampleSource: string; override;
end;
{ TSynDiffSynEx }
TSynDiffSynEx = class(TSynDiffSyn)
protected
function GetSampleSource: string; override;
function GetDefaultFilter: string; override;
end;
{ TSynHTMLSynEx }
TSynHTMLSynEx = class(TSynHTMLSyn)
protected
function GetSampleSource: string; override;
end;
{ TSynIniSynEx }
TSynIniSynEx = class(TSynIniSyn)
public
constructor Create(AOwner: TComponent); override;
end;
{ TSynPasSynEx }
TSynPasSynEx = class(TSynPasSyn)
protected
function GetSampleSource: string; override;
function GetDefaultFilter: string; override;
end;
{ TSynPerlSynEx }
TSynPerlSynEx = class(TSynPerlSyn)
protected
function GetSampleSource: string; override;
end;
{ TSynPoSynEx }
TSynPoSynEx = class(TSynPoSyn)
protected
function GetDefaultFilter: string; override;
public
constructor Create(AOwner: TComponent); override;
end;
{ TSynTeXSynEx }
TSynTeXSynEx = class(TSynTeXSyn)
public
constructor Create(AOwner: TComponent); override;
end;
{ TSynUNIXShellScriptSynEx }
TSynUNIXShellScriptSynEx = class(TSynUNIXShellScriptSyn)
protected
function GetSampleSource: string; override;
end;
{ TSynPlainTextHighlighter }
TSynPlainTextHighlighter = class(TSynCustomHighlighter)
protected
function GetSampleSource: string; override;
public
class function GetLanguageName: string; override;
end;
{ TSynCustomHighlighterHelper }
TSynCustomHighlighterHelper = class helper for TSynCustomHighlighter
public
function LanguageName: String;
function Other: Boolean;
end;
TSynHighlighterAttrFeature =
( hafBackColor, hafForeColor, hafFrameColor,
hafStyle, hafStyleMask,
hafFrameStyle, hafFrameEdges
);
TSynHighlighterAttrFeatures = set of TSynHighlighterAttrFeature;
{ TSynHighlighterAttributesHelper }
TSynHighlighterAttributesHelper = class helper for TSynHighlighterAttributes
private
function GetFeatures: TSynHighlighterAttrFeatures;
public
property Features: TSynHighlighterAttrFeatures read GetFeatures;
end;
implementation
uses
SynEditStrConst, SynUniHighlighter, SynUniClasses, uLng;
{ TSynBatSynEx }
constructor TSynBatSynEx.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
CommentAttri.StoredName := SYNS_XML_AttrComment;
IdentifierAttri.StoredName := SYNS_XML_AttrIdentifier;
KeyAttri.StoredName := SYNS_XML_AttrKey;
NumberAttri.StoredName := SYNS_XML_AttrNumber;
SpaceAttri.StoredName := SYNS_XML_AttrSpace;
VariableAttri.StoredName := SYNS_XML_AttrVariable;
end;
{ TSynCppSynEx }
function TSynCppSynEx.GetSampleSource: string;
begin
Result :=
'/* Comment */'#13 + '#include <stdio.h>'#13 +
'#include <stdlib.h>'#13 + #13 +
'static char line_buf[LINE_BUF];'#13 + #13 +
'int main(int argc,char **argv){'#13 + ' FILE *file;'#13 +
' line_buf[0]=0;'#13 + ' printf("\n");'#13 +
' return 0;'#13 + '}'#13 + ''#13 + #13;
end;
{ TSynDiffSynEx }
function TSynDiffSynEx.GetSampleSource: string;
begin
Result :=
'*** /a/file'#13#10 +
'--- /b/file'#13#10 +
'***************'#13#10 +
'*** 2,5 ****'#13#10 +
'--- 2,5 ----'#13#10 +
' context'#13#10 +
'- removed'#13#10 +
'! Changed'#13#10 +
'+ added'#13#10 +
' context'#13#10;
end;
function TSynDiffSynEx.GetDefaultFilter: string;
begin
Result:= 'Difference Files (*.diff,*.patch)|*.diff;*.patch';
end;
{ TSynHTMLSynEx }
function TSynHTMLSynEx.GetSampleSource: string;
begin
Result :=
'<html>'#13 + '<title>Lazarus Sample source for html</title>'#13 +
'<body bgcolor=#ffffff background="bg.jpg">'#13 +
'<!-- Comment -->'#13 + '<img src="lazarus.jpg">'#13 +
'<p>'#13 + ' Some Text'#13 +
' Ampersands: &nbsp;F&nbsp;P&nbsp;C'#13 + '</p>'#13 +
'<invalid_tag>'#13 + '<!-- Text Block -->'#13 +
'</body>'#13 + '</html>'#13 + #13;
end;
{ TSynIniSynEx }
constructor TSynIniSynEx.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
CommentAttri.StoredName := SYNS_XML_AttrComment;
TextAttri.StoredName := SYNS_XML_AttrText;
SectionAttri.StoredName := SYNS_XML_AttrSection;
KeyAttri.StoredName := SYNS_XML_AttrKey;
NumberAttri.StoredName := SYNS_XML_AttrNumber;
SpaceAttri.StoredName := SYNS_XML_AttrSpace;
StringAttri.StoredName := SYNS_XML_AttrString;
SymbolAttri.StoredName := SYNS_XML_AttrSymbol;
end;
{ TSynPasSynEx }
function TSynPasSynEx.GetSampleSource: string;
begin
Result :=
'{ Comment }'#13 +
'{$R- compiler directive}'#13 +
'procedure TForm1.Button1Click(Sender: TObject);'#13 +
'var // Delphi Comment'#13 +
' Number, I, X: Integer;'#13 +
'begin'#13 +
' Number := 12345 * (2 + 9) // << Matching Brackets ;'#13 +
' Caption := ''The number is '' + IntToStr(Number);'#13 +
' asm'#13 + ' MOV AX,1234h'#13 +
' MOV Number,AX'#13 +
' end;'#13 +
' case ModalResult of'#13+
' mrOK: inc(X);'#13+
' mrCancel, mrIgnore: dec(X);'#13+
' end;'#13+
' ListBox1.Items.Add(IntToStr(X));'#13 +
'end;'#13 + #13;
end;
function TSynPasSynEx.GetDefaultFilter: string;
begin
Result:= 'Pascal Files (*.pas,*.dpr,*.dpk,*.inc,*.pp,*.lpr)|*.pas;*.dpr;*.dpk;*.inc;*.pp;*.lpr';
end;
{ TSynPerlSynEx }
function TSynPerlSynEx.GetSampleSource: string;
begin
Result :=
'#!/usr/bin/perl'#13 + '# Perl sample code'#13 +
''#13 + '$i = "10";'#13 + 'print "$ENV{PATH}\n";'#13 +
'($i =~ /\d+/) || die "Error\n";'#13 + ''#13 +
'# Text Block'#13 + ''#13 + #13;
end;
{ TSynPoSynEx }
function TSynPoSynEx.GetDefaultFilter: string;
begin
Result:= 'Po Files (*.po,*.pot)|*.po;*.pot';
end;
constructor TSynPoSynEx.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
CommentAttri.StoredName := SYNS_XML_AttrComment;
TextAttri.StoredName := SYNS_XML_AttrText;
KeyAttri.StoredName := SYNS_XML_AttrKey;
end;
{ TSynTeXSynEx }
constructor TSynTeXSynEx.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
CommentAttri.StoredName := SYNS_XML_AttrComment;
TextAttri.StoredName := SYNS_XML_AttrText;
MathmodeAttri.StoredName := SYNS_XML_AttrMathmode;
SpaceAttri.StoredName := SYNS_XML_AttrSpace;
ControlSequenceAttri.StoredName := SYNS_XML_AttrTexCommand;
BracketAttri.StoredName := SYNS_XML_AttrSquareBracket;
BraceAttri.StoredName := SYNS_XML_AttrRoundBracket;
end;
{ TSynUNIXShellScriptSynEx }
function TSynUNIXShellScriptSynEx.GetSampleSource: string;
begin
Result :=
'#!/bin/bash'#13#13 +
'# Bash syntax highlighting'#13#10 + 'set -x'#13#10 +
'set -e'#13#10 +
'Usage="Usage: $0 devel|stable"'#13#10 +
'FPCVersion=$1'#13#10 +
'for ver in devel stable; do'#13#10 +
' if [ "x$FPCVersion" = "x$ver" ]; then'#13#10 +
' fi'#13#10 + 'done'#13#10 +
'# Text Block'#13#10 + #13#10;
end;
{ TSynPlainTextHighlighter }
function TSynPlainTextHighlighter.GetSampleSource: string;
begin
Result :=
'Double Commander is a cross platform open source file manager'#13 +
'with two panels side by side. It is inspired by Total Commander'#13 +
'and features some new ideas.'#13;
end;
class function TSynPlainTextHighlighter.GetLanguageName: string;
begin
Result:= rsSynLangPlainText;
end;
{ TSynCustomHighlighterHelper }
function TSynCustomHighlighterHelper.LanguageName: String;
begin
if Self is TSynUniSyn then
Result:= TSynUniSyn(Self).Info.General.Name
else
Result:= Self.GetLanguageName;
end;
function TSynCustomHighlighterHelper.Other: Boolean;
begin
if Self is TSynUniSyn then
Result:= TSynUniSyn(Self).Info.General.Other
else
Result:= False;
end;
{ TSynHighlighterAttributesHelper }
function TSynHighlighterAttributesHelper.GetFeatures: TSynHighlighterAttrFeatures;
begin
if SameText(StoredName, SYNS_XML_DefaultText) then
Result:= [hafBackColor, hafForeColor]
else begin
if Self is TSynAttributes then
Result:= [hafBackColor, hafForeColor, hafStyle]
else
Result:= [hafBackColor, hafForeColor, hafFrameColor, hafStyle, hafFrameStyle, hafFrameEdges];
end;
end;
end.