module Text.Highlighter.Lexers.Ioke (lexer) where import Text.Regex.PCRE.Light import Text.Highlighter.Types lexer :: Lexer lexer = Lexer { lName = "Ioke" , lAliases = ["ioke", "ik"] , lExtensions = [".ik"] , lMimetypes = ["text/x-iokesrc"] , lStart = root' , lFlags = [multiline] } squareRegexp' :: TokenMatcher squareRegexp' = [ tokNext "(?>|\\|\\|>>|\\*\\*>>|:::|::|\\.\\.\\.|===|\\*\\*>|\\*\\*=|&&>|&&=|\\|\\|>|\\|\\|=|\\->>|\\+>>|!>>|<>>>|<>>|&>>|%>>|#>>|@>>|/>>|\\*>>|\\?>>|\\|>>|\\^>>|\126>>|\\$>>|=>>|<<=|>>=|<=>|<\\->|=\126|!\126|=>|\\+\\+|\\-\\-|<=|>=|==|!=|&&|\\.\\.|\\+=|\\-=|\\*=|\\/=|%=|&=|\\^=|\\|=|<\\-|\\+>|!>|<>|&>|%>|#>|\\@>|\\/>|\\*>|\\?>|\\|>|\\^>|\126>|\\$>|<\\->|\\->|<<|>>|\\*\\*|\\?\\||\\?&|\\|\\||>|<|\\*|\\/|%|\\+|\\-|&|\\^|\\||=|\\$|!|\126|\\?|#|\8800|\8728|\8712|\8713)" (Arbitrary "Operator") , tok "(and|nand|or|xor|nor|return|import)(?![a-zA-Z0-9_!?])" (Arbitrary "Operator") , tok "(\\`\\`|\\`|\\'\\'|\\'|\\.|\\,|@|@@|\\[|\\]|\\(|\\)|{|})" (Arbitrary "Punctuation") , tok "[A-Z][a-zA-Z0-9_!:?]*" (Arbitrary "Name" :. Arbitrary "Class") , tok "[a-z_][a-zA-Z0-9_!:?]*" (Arbitrary "Name") ]