https://www.rj-texted.se/
At the moment I am using this PureBasic.syx file (%AppData%\Roaming\RJ TextEd\Syntax\User defined\PureBasic.syx)
Code: Select all
;{}
[StandardExtensions]
default=.pb|.pbi|.pbf
[Keywords]
#ConstantsN=#\w+
#ConstantsStr=#\w+\$
#Keywords=\b(End(?:If|DataSection|Structure|StructureUnion|Procedure|Macro|Select|Enumeration|Import|Interface|With|DeclareModule|Module)?|Until|Wend|Next|Data(?:Section)?|Procedure(?:[CDL$]{0,5}?|Return)|Compiler(?:If|Select|EndIf|EndSelect|Case|Default|Else|Error)|Macro|Repeat|While|Select|Enumeration|ImportC?|Structure(?:Union)?|Interface|With|For(?:Each|Ever)?|Declare[CDL$]{0,5}?|Extends|Fakereturn|Step|Not|And|Or|True|False|Global|Protected|Shared|Static|Threaded|Break|Continue|To|Gosub|Case|Default|Goto|Swap|Define|(?:Re)?Dim|(?:New)?(?:List|Map)|(?:Def|Proto|Pseudo)type|X?IncludeFile|Include(?:Path|Binary)|Read|Restore|Debug(?:Level)?|(?:Call|Disable|Enable)Debugger|Enable(?:Explicit|ASM)|Disable(?:Explicit|ASM)|(?:Else)?(?:If)?|(?:Declare)?Module|Runtime)\b
#Procedure=\b[a-zA-Z]\w*[$a-zA-Z\d](?=\s*\()
#FuncAPI=\b\w+_(?=\h*\()
#Methods=\b\w+::\w+\b
#Point=[*@]\w+
#StructItem=(?<![.:])\\\w+
#Var=\b\w+\$
#Var2=(?<![\n\t])\b\w+(?=\.[sfdqbliwcapu])\b
#Var3=(?<![.\w])\b([a-zA-Z]\w*)(?=\h*[,\)=])
#StructDec=\.\w{2,}
#Type=\.[sfdqbliwcapu]\b
#HexNum=(?<!\w)\$[\dA-Fa-f]+
#Operators=[\&\(\)\*\/\\\:\+\<\=\>\,\.\?\[\]\^\-]+
[Options]
LineCommentA=;
Char='
String="
Symbols=-+<>!~%^&|={[()]}:.,;
Numbers=0123456789
AutoCloseBraceStart=("'
AutoCloseBraceEnd=)"'
AllowNestedComments=0
StringOnLine=0
AllowEscapeOutsideString=0
Case=0
CaseTags=0
HighlightUrl=0
AutoCompleteTags=0
AddProjectClassesToCompletion=0
OnlyHighlightInBlock=0
AutoCompleteSort=0
AllowHighlightBetweenTags=0
[FoldOptions]
Case=0
FoldLineComments=0
FoldOnIndention=0
List_Exclude=
[Fold]
1_Id=^Procedure
1_Begin=
1_End=^EndProcedure
1_Level=
1_ListItem=ceFunction
1_Name=Function
2_Id=^If
2_Begin=
2_End=^EndIf
2_Level=
2_ListItem=ceFunction
2_Name=If
3_Id=^ForEach
3_Begin=
3_End=^Next
3_Level=
3_ListItem=ceFunction
3_Name=ForEach
4_Id=^For
4_Begin=
4_End=^Next
4_Level=
4_ListItem=ceFunction
4_Name=For
5_Id=^While
5_Begin=
5_End=^Wend
5_Level=
5_ListItem=ceFunction
5_Name=While
Code: Select all
<ColorTheme author="AZJIO" description="PureBasic" modified="19.09.2024 06:47:00">
<Default color="11184810" backgroundcolor="4144959" bold="false" italic="false" underline="false"/>
<Selection color="24576" backgroundcolor="15261920"/>
<HTMLTagHighlight color1="16759260" color2="13434828"/>
<XMLTagHighlight color1="16764057" color2="13434828"/>
<ConstantsN color="14260446" backgroundcolor="16777215" bold="false" italic="false" underline="false"/>
<Var color="16754436" backgroundcolor="16777215" bold="false" italic="false" underline="false"/>
<Point color="15978352" backgroundcolor="16777215" bold="false" italic="false" underline="false"/>
<ControlCharacters color="8421504" backgroundcolor="11184810"/>
<LineHighlight color="11184810" backgroundcolor="15793151"/>
<BraceHighlight color="8388608" backgroundcolor="11184810" bold="true" italic="false" underline="false"/>
<FoldHighlight color="11184810" backgroundcolor="16314852"/>
<SyncEdit color="0" backgroundcolor="11184810"/>
<Character color="13408665" backgroundcolor="11184810" bold="false" italic="false" underline="false"/>
<String color="13408665" backgroundcolor="11184810" bold="false" italic="false" underline="false"/>
<Symbol color="255" backgroundcolor="11184810" bold="true" italic="false" underline="false"/>
<SymbolA color="0" backgroundcolor="16777215" bold="false" italic="false" underline="false"/>
<SymbolB color="0" backgroundcolor="16777215" bold="false" italic="false" underline="false"/>
<SymbolC color="0" backgroundcolor="16777215" bold="false" italic="false" underline="false"/>
<Comment color="7450225" backgroundcolor="11184810" bold="false" italic="true" underline="false"/>
<LineComment color="7450225" backgroundcolor="11184810" bold="false" italic="true" underline="false"/>
<Number color="15453084" backgroundcolor="11184810" bold="true" italic="true" underline="false"/>
<Hexadecimal color="11010220" backgroundcolor="11184810" bold="true" italic="false" underline="false"/>
<Text color="10066329" backgroundcolor="11184810" bold="true" italic="false" underline="false"/>
<URL color="16737843" backgroundcolor="11184810" bold="false" italic="false" underline="true"/>
<Attribute color="6250445" backgroundcolor="11184810" bold="false" italic="false" underline="false"/>
<AttributeValue color="33023" backgroundcolor="11184810" bold="false" italic="false" underline="false"/>
<ASPTag color="33023" backgroundcolor="11184810" bold="false" italic="false" underline="false"/>
<PHPTag color="33023" backgroundcolor="11184810" bold="false" italic="false" underline="false"/>
<Keyword0 color="33023" backgroundcolor="11184810" bold="true" italic="false" underline="false"/>
<Keyword1 color="8388608" backgroundcolor="11184810" bold="true" italic="true" underline="false"/>
<Keyword2 color="33023" backgroundcolor="11184810" bold="true" italic="false" underline="false"/>
<Keyword3 color="16744448" backgroundcolor="11184810" bold="false" italic="true" underline="false"/>
<Keyword4 color="15401195" backgroundcolor="11184810" bold="false" italic="false" underline="false"/>
<Keyword5 color="15401195" backgroundcolor="11184810" bold="false" italic="true" underline="false"/>
<Keyword6 color="7405479" backgroundcolor="11184810" bold="false" italic="false" underline="false"/>
<Keyword7 color="8421504" backgroundcolor="11184810" bold="false" italic="false" underline="false"/>
<Keyword8 color="0" backgroundcolor="11184810" bold="false" italic="false" underline="false"/>
<Keyword9 color="15401195" backgroundcolor="11184810" bold="true" italic="true" underline="false"/>
<Keyword10 color="33023" backgroundcolor="11184810" bold="true" italic="true" underline="false"/>
<Block0 color="33023" backgroundcolor="11184810" bold="false" italic="false" underline="false"/>
<Block1 color="32768" backgroundcolor="11184810" bold="false" italic="false" underline="false"/>
<Block2 color="8388736" backgroundcolor="11184810" bold="false" italic="false" underline="false"/>
<Block3 color="16711935" backgroundcolor="11184810" bold="false" italic="false" underline="false"/>
<Block4 color="26367" backgroundcolor="11184810" bold="false" italic="false" underline="false"/>
<LeftMarginColor text="0" background="15790320" gradient="true" bookmark="16768200" changed="65535" changed-saved="65280"/>
<LeftMarginLine style="1" color="8421504" icon="0"/>
<RightMarginLine style="1" color="12632256"/>
</ColorTheme>
There will be the text “All languages” (on the second tab), you need to select PureBasic. Here you can change the color. On the left in the toolbar you need to select the PureBasic syntax.
Despite the fact that I used the one from the link, regular expressions do not work there, only enumerations using the "|" delimiter.
Screenshot
I wouldn’t want to list 3000 functions; it’s much easier to use a regular expression for text ending with a bracket.
%AppData%\Roaming\RJ TextEd\TextEd.ini
add
Code: Select all
[FileExt]
.........
.pb=PureBasic
.pbi=PureBasic
.........
[PureBasic]
Ext=.pb|.pbi
File=PureBasic.syx
ThemeColorStyle=1
Theme=Theme_Default
Keys=3
Tags=0
Blocks=0
[PureBasic Gutter]
ThemeColorStyle=1
[PureBasic FontAndTabs]
ThemeColorStyle=1