Skip to content

Available Highlighters ​

Ethea SynEdit contains 63 highlighters, all registered on the SynEdit Highlighters page of the component palette. Each one is a component derived from TSynCustomHighlighter: drop it on the form and assign it to the Highlighter property of the editor (see Using a Highlighter).

Every highlighter lives in its own unit, named SynEdit.Highlighter.<Language>: to use it at run time add that unit to the uses clause. The units of the old names (SynHighlighterPas, SynHighlighterSQL...) are listed in Migrating from another SynEdit.

Classic languages ​

ComponentLanguageUnitFile extensions
TSynCppSynC and C++SynEdit.Highlighter.Cpp*.c *.cpp *.cc *.h *.hpp *.hh *.cxx *.hxx *.cu
TSynEiffelSynEiffelSynEdit.Highlighter.Eiffel*.e *.ace
TSynFortranSynFortranSynEdit.Highlighter.Fortran*.for
TSynGeneralSynGeneral (configurable)SynEdit.Highlighter.General
TSynJavaSynJavaSynEdit.Highlighter.Java*.java
TSynM3SynModula-3SynEdit.Highlighter.M3*.m3
TSynPasSynObject Pascal (Delphi)SynEdit.Highlighter.Pas*.pas *.pp *.dpr *.dpk *.inc
TSynVBSynVisual BasicSynEdit.Highlighter.VB*.bas
TSynCobolSynCOBOLSynEdit.Highlighter.Cobol*.cbl *.cob
TSynCSSynC#SynEdit.Highlighter.CS*.cs
TSynOmniSynOmni (configurable)SynEdit.Highlighter.Omni

Internet ​

ComponentLanguageUnitFile extensions
TSynCssSynCSSSynEdit.Highlighter.Css*.css
TSynHTMLSynHTMLSynEdit.Highlighter.Html*.htm *.html
TSynJScriptSynJavaScriptSynEdit.Highlighter.JScript*.js
TSynPHPSynPHPSynEdit.Highlighter.PHP*.php *.php3 *.phtml *.inc
TSynVBScriptSynVBScriptSynEdit.Highlighter.VBScript*.vbs
TSynXMLSynXMLSynEdit.Highlighter.XML*.xml *.xsd *.xsl *.xslt *.dtd
TSynJSONSynJSONSynEdit.Highlighter.JSON*.json
TSynVrml97SynVRML97 / X3DSynEdit.Highlighter.Vrml97*.wrl *.wrml *.vrl *.vrml *.x3d

Scripting ​

ComponentLanguageUnitFile extensions
TSynAWKSynAWKSynEdit.Highlighter.AWK*.awk
TSynBatSynMS-DOS BatchSynEdit.Highlighter.Bat*.bat *.cmd
TSynDWSSynDWScriptSynEdit.Highlighter.DWS*.dws *.pas *.inc
TSynKixSynKiXtartSynEdit.Highlighter.Kix*.kix
TSynPerlSynPerlSynEdit.Highlighter.Perl*.pl *.pm *.cgi
TSynPythonSynPythonSynEdit.Highlighter.Python*.py
TSynTclTkSynTcl/TkSynEdit.Highlighter.TclTk*.tcl
TSynGWScriptSynGW-TEL scriptSynEdit.Highlighter.GWS*.gws
TSynRubySynRubySynEdit.Highlighter.Ruby*.rb *.rbw
TSynUNIXShellScriptSynUNIX shell scriptSynEdit.Highlighter.UNIXShellScript*.sh

Database ​

ComponentLanguageUnitFile extensions
TSynCACSynCA-ClipperSynEdit.Highlighter.CAC*.prg *.ch *.inc
TSynCacheSynCaché ObjectScriptSynEdit.Highlighter.Cache*.mac *.inc *.int
TSynFoxproSynFoxProSynEdit.Highlighter.Foxpro*.prg
TSynSQLSynSQLSynEdit.Highlighter.SQL*.sql
TSynSDDSynSemanta Data DictionarySynEdit.Highlighter.SDD*.sdd

Assembler and low level ​

ComponentLanguageUnitFile extensions
TSynADSP21xxSynADSP21xxSynEdit.Highlighter.ADSP21xx*.dsp *.inc
TSynAsmSynx86 AssemblySynEdit.Highlighter.Assembler*.asm
TSynHC11Syn68HC11 AssemblerSynEdit.Highlighter.HC11*.hc11 *.asm *.asc
TSynHP48SynHP48SynEdit.Highlighter.HP48*.s *.sou *.a *.hp
TSynSTSynStructured Text (IEC 61131-3)SynEdit.Highlighter.ST*.st

Data modeling ​

ComponentLanguageUnitFile extensions
TSynDmlSynGembase (DML)SynEdit.Highlighter.Dml*.dml *.gem
TSynModelicaSynModelicaSynEdit.Highlighter.Modelica*.mo
TSynSMLSynStandard MLSynEdit.Highlighter.Sml*.sml

Data and configuration ​

ComponentLanguageUnitFile extensions
TSynDfmSynDelphi forms (DFM)SynEdit.Highlighter.Dfm*.dfm *.xfm
TSynIniSynINISynEdit.Highlighter.Ini*.ini *.toml
TSynInnoSynInno Setup scriptSynEdit.Highlighter.Inno*.iss

Other ​

ComponentLanguageUnitFile extensions
TSynBaanSynBaan 4GLSynEdit.Highlighter.Baan*.cln
TSynGalaxySynGalaxySynEdit.Highlighter.Galaxy*.gtv *.galrep *.txt
TSynProgressSynProgressSynEdit.Highlighter.Progress*.w *.p *.i
TSynMsgSynSynGen message filesSynEdit.Highlighter.Msg*.msg
TSynIdlSynCORBA IDLSynEdit.Highlighter.IDL*.idl
TSynUnrealSynUnrealSynEdit.Highlighter.Unreal*.c *.cpp *.cc *.h *.hpp *.hh *.cxx *.hxx *.cu
TSynCPMSynCOAS Product Manager reportSynEdit.Highlighter.CPM*.rdf *.rif *.rmf *.rxf
TSynTeXSynTeX / LaTeXSynEdit.Highlighter.TeX*.tex
TSynYAMLSynYAMLSynEdit.Highlighter.YAML*.yaml
TSynHaskellSynHaskellSynEdit.Highlighter.Haskell*.hs *.lhs
TSynLDRSynLEGO LDrawSynEdit.Highlighter.LDraw*.ldr
TSynURISynURISynEdit.Highlighter.URI
TSynDOTSynDOT (Graphviz)SynEdit.Highlighter.DOT*.dot
TSynRCSynResource script (RC)SynEdit.Highlighter.RC*.rc
TSynMarkdownSynMarkdownSynEdit.Highlighter.Markdown
TSynRexxSynREXXSynEdit.Highlighter.Rexx*.REX
TSynLLVMIRSynLLVM IRSynEdit.Highlighter.LLVM*.ll
TSynWebIDLSynWeb IDLSynEdit.Highlighter.WebIDL*.idl

Special highlighters ​

ComponentUnitPurpose
TSynMultiSynSynEdit.Highlighter.MultiCombines several highlighters in the same document, see Multi Highlighter.
TSynGeneralSynSynEdit.Highlighter.GeneralA configurable highlighter: keywords, comments and strings are defined with properties.
TSynOmniSynSynEdit.Highlighter.OmniA configurable highlighter driven by a language definition, with its own setup dialog (SynEdit.OmniSetupDialog).
TSynHighlighterManagerSynEdit.Highlighter.ManagerA design-time helper: it places on the form the highlighters you select from a list.

To write a highlighter for a language that is not in the list, see Create your Highlighter.

Released under the MPL 1.1 / GPL 2 dual license.