highlighter-0.1: src/Text/Highlighter/Lexers/CMake.hs
module Text.Highlighter.Lexers.CMake (lexer) where
import Text.Regex.PCRE.Light
import Text.Highlighter.Types
lexer :: Lexer
lexer = Lexer
{ lName = "\67\77\97\107\101"
, lAliases = ["\99\109\97\107\101"]
, lExtensions = ["\46\99\109\97\107\101"]
, lMimetypes = ["\116\101\120\116\47\120\45\99\109\97\107\101"]
, lStart = root'
, lFlags = [multiline]
}
keywords' :: TokenMatcher
keywords' =
[ tok "\92\98\40\87\73\78\51\50\124\85\78\73\88\124\65\80\80\76\69\124\67\89\71\87\73\78\124\66\79\82\76\65\78\68\124\77\73\78\71\87\124\77\83\86\67\124\77\83\86\67\95\73\68\69\124\77\83\86\67\54\48\124\77\83\86\67\55\48\124\77\83\86\67\55\49\124\77\83\86\67\56\48\124\77\83\86\67\57\48\41\92\98" (Arbitrary "\75\101\121\119\111\114\100")
]
ws' :: TokenMatcher
ws' =
[ tok "\91\32\92\116\93\43" (Arbitrary "\84\101\120\116")
, tok "\35\46\43\92\110" (Arbitrary "\67\111\109\109\101\110\116")
]
args' :: TokenMatcher
args' =
[ tokNext "\92\40" (Arbitrary "\80\117\110\99\116\117\97\116\105\111\110") Push
, tokNext "\92\41" (Arbitrary "\80\117\110\99\116\117\97\116\105\111\110") Pop
, tok "\40\92\36\123\41\40\46\43\63\41\40\125\41" (ByGroups [(Arbitrary "\79\112\101\114\97\116\111\114"), (Arbitrary "\78\97\109\101" :. Arbitrary "\86\97\114\105\97\98\108\101"), (Arbitrary "\79\112\101\114\97\116\111\114")])
, tok "\40\63\115\41\34\46\42\63\34" (Arbitrary "\76\105\116\101\114\97\108" :. Arbitrary "\83\116\114\105\110\103" :. Arbitrary "\68\111\117\98\108\101")
, tok "\92\92\92\83\43" (Arbitrary "\76\105\116\101\114\97\108" :. Arbitrary "\83\116\114\105\110\103")
, tok "\91\94\92\41\36\34\35\32\92\116\92\110\93\43" (Arbitrary "\76\105\116\101\114\97\108" :. Arbitrary "\83\116\114\105\110\103")
, tok "\92\110" (Arbitrary "\84\101\120\116")
, anyOf keywords'
, anyOf ws'
]
root' :: TokenMatcher
root' =
[ tokNext "\92\98\40\91\65\45\90\97\45\122\95\93\43\41\40\91\32\92\116\93\42\41\40\92\40\41" (ByGroups [(Arbitrary "\78\97\109\101" :. Arbitrary "\66\117\105\108\116\105\110"), (Arbitrary "\84\101\120\116"), (Arbitrary "\80\117\110\99\116\117\97\116\105\111\110")]) (GoTo args')
, anyOf keywords'
, anyOf ws'
]
string' :: TokenMatcher
string' =
[
]