module Skylighting.Syntax.Css (syntax) where
import Skylighting.Types
import Data.Map
import Skylighting.Regex
import qualified Data.Set
syntax :: Syntax
syntax = Syntax
{ sName = "CSS"
, sFilename = "css.xml"
, sShortname = "Css"
, sContexts =
fromList
[ ( "Base"
, Context
{ cName = "Base"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher = LineContinue
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectSpaces
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindRuleSets" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = NormalTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "Comment"
, Context
{ cName = "Comment"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher = DetectSpaces
, rAttribute = CommentTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = Detect2Chars '*' '/'
, rAttribute = CommentTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = IncludeRules ( "Alerts" , "" )
, rAttribute = CommentTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectIdentifier
, rAttribute = CommentTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = CommentTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "FindComments"
, Context
{ cName = "FindComments"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher =
RegExpr
RE
{ reString = "/\\*BEGIN.*\\*/"
, reCompiled = Just (compileRegex True "/\\*BEGIN.*\\*/")
, reCaseSensitive = True
}
, rAttribute = RegionMarkerTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "/\\*END.*\\*/"
, reCompiled = Just (compileRegex True "/\\*END.*\\*/")
, reCaseSensitive = True
}
, rAttribute = RegionMarkerTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = Detect2Chars '/' '*'
, rAttribute = CommentTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "Comment" ) ]
}
]
, cAttribute = NormalTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "FindRuleSets"
, Context
{ cName = "FindRuleSets"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher =
RegExpr
RE
{ reString = "@media\\b"
, reCompiled = Just (compileRegex True "@media\\b")
, reCaseSensitive = True
}
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "Media" ) ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "@import\\b"
, reCompiled = Just (compileRegex True "@import\\b")
, reCaseSensitive = True
}
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "Import" ) ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "@(font-face|charset)\\b"
, reCompiled = Just (compileRegex True "@(font-face|charset)\\b")
, reCaseSensitive = True
}
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar '{'
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "RuleSet" ) ]
}
, Rule
{ rMatcher = DetectChar '['
, rAttribute = AttributeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "SelAttr" ) ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString =
"#(-)?([_a-zA-Z]|(\\\\[0-9a-fA-F]{1,6})|(\\\\[^\\n\\r\\f0-9a-fA-F]))([_a-zA-Z0-9-]|(\\\\[0-9a-fA-F]{1,6})|(\\\\[^\\n\\r\\f0-9a-fA-F]))*"
, reCompiled =
Just
(compileRegex
True
"#(-)?([_a-zA-Z]|(\\\\[0-9a-fA-F]{1,6})|(\\\\[^\\n\\r\\f0-9a-fA-F]))([_a-zA-Z0-9-]|(\\\\[0-9a-fA-F]{1,6})|(\\\\[^\\n\\r\\f0-9a-fA-F]))*")
, reCaseSensitive = True
}
, rAttribute = FloatTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString =
"\\.([a-zA-Z0-9\\-_]|[\\x80-\\xFF]|\\\\[0-9A-Fa-f]{1,6})*"
, reCompiled =
Just
(compileRegex
True
"\\.([a-zA-Z0-9\\-_]|[\\x80-\\xFF]|\\\\[0-9A-Fa-f]{1,6})*")
, reCaseSensitive = True
}
, rAttribute = FloatTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = ":lang\\([\\w_-]+\\)"
, reCompiled = Just (compileRegex True ":lang\\([\\w_-]+\\)")
, reCaseSensitive = True
}
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar ':'
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "SelPseudo" ) ]
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindStrings" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindComments" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = NormalTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "FindStrings"
, Context
{ cName = "FindStrings"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher = DetectChar '"'
, rAttribute = StringTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "StringDQ" ) ]
}
, Rule
{ rMatcher = DetectChar '\''
, rAttribute = StringTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "StringSQ" ) ]
}
]
, cAttribute = NormalTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "FindValues"
, Context
{ cName = "FindValues"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher =
RegExpr
RE
{ reString =
"[-+]?[0-9.]+(em|ex|ch|rem|vw|vh|vm|px|in|cm|mm|pt|pc|deg|rad|grad|turn|ms|s|Hz|kHz)\\b"
, reCompiled =
Just
(compileRegex
True
"[-+]?[0-9.]+(em|ex|ch|rem|vw|vh|vm|px|in|cm|mm|pt|pc|deg|rad|grad|turn|ms|s|Hz|kHz)\\b")
, reCaseSensitive = True
}
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "[-+]?[0-9.]+[%]?"
, reCompiled = Just (compileRegex True "[-+]?[0-9.]+[%]?")
, reCaseSensitive = True
}
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "[\\w\\-]+"
, reCompiled = Just (compileRegex True "[\\w\\-]+")
, reCaseSensitive = True
}
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = NormalTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "Import"
, Context
{ cName = "Import"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher = DetectChar ';'
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = False
, keywordDelims = Data.Set.fromList "\t\n !&()*+,./:;<=>?[\\]^{|}~"
}
(makeWordSet
False
[ "all"
, "aural"
, "braille"
, "embossed"
, "handheld"
, "print"
, "projection"
, "screen"
, "speech"
, "tty"
, "tv"
])
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindValues" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindStrings" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindComments" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = NormalTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "InsideString"
, Context
{ cName = "InsideString"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher =
RegExpr
RE
{ reString = "\\\\[\"']"
, reCompiled = Just (compileRegex True "\\\\[\"']")
, reCaseSensitive = True
}
, rAttribute = StringTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectIdentifier
, rAttribute = StringTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = StringTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "MQEE"
, Context
{ cName = "MQEE"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher = DetectSpaces
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindComments" )
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar ':'
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "MQEV" ) ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "\\)\\s+and\\s+\\("
, reCompiled = Just (compileRegex True "\\)\\s+and\\s+\\(")
, reCaseSensitive = True
}
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar ')'
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop , Pop ]
}
]
, cAttribute = DecValTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = True
, cFallthroughContext = [ Pop ]
, cDynamic = False
}
)
, ( "MQEV"
, Context
{ cName = "MQEV"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher = DetectSpaces
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "[1-9][0-9.]*\\s*/\\s*[1-9][0-9.]*"
, reCompiled =
Just (compileRegex True "[1-9][0-9.]*\\s*/\\s*[1-9][0-9.]*")
, reCaseSensitive = True
}
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString =
"[0-9.]+(em|ex|ch|rem|vw|vh|vm|px|in|cm|mm|pt|pc|deg|rad|grad|turn|ms|s|Hz|kHz|dpi|dpcm)\\b"
, reCompiled =
Just
(compileRegex
True
"[0-9.]+(em|ex|ch|rem|vw|vh|vm|px|in|cm|mm|pt|pc|deg|rad|grad|turn|ms|s|Hz|kHz|dpi|dpcm)\\b")
, reCaseSensitive = True
}
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "[0-9.]+[%]?"
, reCompiled = Just (compileRegex True "[0-9.]+[%]?")
, reCaseSensitive = True
}
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "(portrait|landscape)"
, reCompiled = Just (compileRegex True "(portrait|landscape)")
, reCaseSensitive = True
}
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = ".*"
, reCompiled = Just (compileRegex True ".*")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = DecValTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "Media"
, Context
{ cName = "Media"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher = DetectChar '{'
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "Media2" ) ]
}
, Rule
{ rMatcher = DetectChar '('
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "MediaQueryExpression" ) ]
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = False
, keywordDelims = Data.Set.fromList "\t\n !&()*+,./:;<=>?[\\]^{|}~"
}
(makeWordSet
False
[ "all"
, "aural"
, "braille"
, "embossed"
, "handheld"
, "print"
, "projection"
, "screen"
, "speech"
, "tty"
, "tv"
])
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "MediaQueries" ) ]
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = False
, keywordDelims = Data.Set.fromList "\t\n !&()*+,./:;<=>?[\\]^{|}~"
}
(makeWordSet False [ "not" , "only" ])
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "MediaTypes" ) ]
}
, Rule
{ rMatcher = DetectChar ','
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindComments" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "\\S+"
, reCompiled = Just (compileRegex True "\\S+")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = NormalTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "Media2"
, Context
{ cName = "Media2"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher = DetectChar '}'
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop , Pop ]
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindRuleSets" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = NormalTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "MediaQueries"
, Context
{ cName = "MediaQueries"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher =
RegExpr
RE
{ reString = "\\s+and\\s+\\("
, reCompiled = Just (compileRegex True "\\s+and\\s+\\(")
, reCaseSensitive = True
}
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "MediaQueryExpression" ) ]
}
, Rule
{ rMatcher = DetectChar '{'
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar ','
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectSpaces
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindComments" )
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "\\S+"
, reCompiled = Just (compileRegex True "\\S+")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = DecValTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "MediaQueryExpression"
, Context
{ cName = "MediaQueryExpression"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher = DetectSpaces
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = False
, keywordDelims = Data.Set.fromList "\t\n !&()*+,./:;<=>?[\\]^{|}~"
}
(makeWordSet
False
[ "aspect-ratio"
, "color"
, "color-index"
, "device-aspect-ratio"
, "device-height"
, "device-width"
, "grid"
, "height"
, "max-aspect-ratio"
, "max-color"
, "max-color-index"
, "max-device-aspect-ratio"
, "max-device-height"
, "max-device-width"
, "max-height"
, "max-monochrome"
, "max-resolution"
, "max-width"
, "min-aspect-ratio"
, "min-color"
, "min-color-index"
, "min-device-aspect-ratio"
, "min-device-height"
, "min-device-width"
, "min-height"
, "min-monochrome"
, "min-resolution"
, "min-width"
, "monochrome"
, "orientation"
, "resolution"
, "scan"
, "width"
])
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "MQEE" ) ]
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindComments" )
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "\\S+"
, reCompiled = Just (compileRegex True "\\S+")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = DecValTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "MediaTypes"
, Context
{ cName = "MediaTypes"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = False
, keywordDelims = Data.Set.fromList "\t\n !&()*+,./:;<=>?[\\]^{|}~"
}
(makeWordSet
False
[ "all"
, "aural"
, "braille"
, "embossed"
, "handheld"
, "print"
, "projection"
, "screen"
, "speech"
, "tty"
, "tv"
])
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "MediaQueries" ) ]
}
, Rule
{ rMatcher = DetectChar '{'
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar ','
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectSpaces
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindComments" )
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "\\S+"
, reCompiled = Just (compileRegex True "\\S+")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = DecValTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "PropParen"
, Context
{ cName = "PropParen"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher = DetectChar '('
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "PropParen2" ) ]
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindComments" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "\\S"
, reCompiled = Just (compileRegex True "\\S")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = NormalTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "PropParen2"
, Context
{ cName = "PropParen2"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher = DetectChar ')'
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop , Pop ]
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindValues" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindStrings" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindComments" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = NormalTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "Rule"
, Context
{ cName = "Rule"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher = DetectChar ':'
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "Rule2" ) ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "\\S"
, reCompiled = Just (compileRegex True "\\S")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = NormalTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "Rule2"
, Context
{ cName = "Rule2"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher = DetectChar ';'
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop , Pop ]
}
, Rule
{ rMatcher = DetectChar '}'
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop , Pop , Pop ]
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = False
, keywordDelims = Data.Set.fromList "\t\n !&()*+,./:;<=>?[\\]^{|}~"
}
(makeWordSet
False
[ "-epub-hyphens"
, "100"
, "200"
, "300"
, "400"
, "500"
, "600"
, "700"
, "800"
, "900"
, "above"
, "absolute"
, "always"
, "armenian"
, "auto"
, "avoid"
, "baseline"
, "below"
, "bidi-override"
, "blink"
, "block"
, "bold"
, "bolder"
, "border-box"
, "both"
, "bottom"
, "box"
, "break"
, "capitalize"
, "caption"
, "center"
, "circle"
, "cjk-ideographic"
, "clip"
, "close-quote"
, "collapse"
, "compact"
, "condensed"
, "content-box"
, "crop"
, "cross"
, "crosshair"
, "cursive"
, "dashed"
, "decimal"
, "decimal-leading-zero"
, "default"
, "disc"
, "dotted"
, "double"
, "e-resize"
, "ellipsis"
, "ellipsis-word"
, "embed"
, "expanded"
, "extra-condensed"
, "extra-expanded"
, "fantasy"
, "fixed"
, "georgian"
, "groove"
, "hand"
, "hebrew"
, "help"
, "hidden"
, "hide"
, "higher"
, "hiragana"
, "hiragana-iroha"
, "icon"
, "inherit"
, "inline"
, "inline-block"
, "inline-table"
, "inset"
, "inside"
, "invert"
, "italic"
, "justify"
, "katakana"
, "katakana-iroha"
, "konq-center"
, "landscape"
, "large"
, "larger"
, "left"
, "level"
, "light"
, "lighter"
, "line-through"
, "list-item"
, "loud"
, "lower"
, "lower-alpha"
, "lower-greek"
, "lower-latin"
, "lower-roman"
, "lowercase"
, "ltr"
, "marker"
, "medium"
, "menu"
, "message-box"
, "middle"
, "mix"
, "monospace"
, "move"
, "n-resize"
, "narrower"
, "ne-resize"
, "no-close-quote"
, "no-open-quote"
, "no-repeat"
, "none"
, "normal"
, "nowrap"
, "nw-resize"
, "oblique"
, "open-quote"
, "outset"
, "outside"
, "overline"
, "pointer"
, "portrait"
, "pre"
, "pre-line"
, "pre-wrap"
, "relative"
, "repeat"
, "repeat-x"
, "repeat-y"
, "ridge"
, "right"
, "rtl"
, "run-in"
, "s-resize"
, "sans-serif"
, "scroll"
, "se-resize"
, "semi-condensed"
, "semi-expanded"
, "separate"
, "serif"
, "show"
, "small"
, "small-caps"
, "small-caption"
, "smaller"
, "solid"
, "square"
, "static"
, "static-position"
, "status-bar"
, "sub"
, "super"
, "sw-resize"
, "table"
, "table-caption"
, "table-cell"
, "table-column"
, "table-column-group"
, "table-footer-group"
, "table-header-group"
, "table-row"
, "table-row-group"
, "text"
, "text-bottom"
, "text-top"
, "thick"
, "thin"
, "top"
, "transparent"
, "ultra-condensed"
, "ultra-expanded"
, "underline"
, "upper-alpha"
, "upper-latin"
, "upper-roman"
, "uppercase"
, "visible"
, "w-resize"
, "wait"
, "wider"
, "x-large"
, "x-small"
, "xx-large"
, "xx-small"
])
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = False
, keywordDelims = Data.Set.fromList "\t\n !&()*+,./:;<=>?[\\]^{|}~"
}
(makeWordSet
False
[ "ActiveBorder"
, "ActiveCaption"
, "AppWorkspace"
, "aqua"
, "Background"
, "black"
, "blue"
, "ButtonFace"
, "ButtonHighlight"
, "ButtonShadow"
, "ButtonText"
, "CaptionText"
, "cyan"
, "fuchsia"
, "gray"
, "GrayText"
, "green"
, "Highlight"
, "HighlightText"
, "InactiveBorder"
, "InactiveCaption"
, "InactiveCaptionText"
, "InfoBackground"
, "InfoText"
, "lime"
, "maroon"
, "Menu"
, "MenuText"
, "navy"
, "olive"
, "purple"
, "red"
, "Scrollbar"
, "silver"
, "teal"
, "ThreeDDarkShadow"
, "ThreeDFace"
, "ThreeDHighlight"
, "ThreeDLightShadow"
, "ThreeDShadow"
, "white"
, "Window"
, "WindowFrame"
, "WindowText"
, "yellow"
])
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "#([0-9A-Fa-f]{3}){1,4}\\b"
, reCompiled = Just (compileRegex True "#([0-9A-Fa-f]{3}){1,4}\\b")
, reCaseSensitive = True
}
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = False
, keywordDelims = Data.Set.fromList "\t\n !&()*+,./:;<=>?[\\]^{|}~"
}
(makeWordSet
False
[ "attr"
, "counter"
, "counters"
, "expression"
, "format"
, "hsl"
, "hsla"
, "local"
, "rect"
, "rgb"
, "rgba"
, "url"
])
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "PropParen" ) ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "!important\\b"
, reCompiled = Just (compileRegex True "!important\\b")
, reCaseSensitive = True
}
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindValues" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindStrings" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindComments" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = NormalTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "RuleSet"
, Context
{ cName = "RuleSet"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher = DetectChar '}'
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = False
, keywordDelims = Data.Set.fromList "\t\n !&()*+,./:;<=>?[\\]^{|}~"
}
(makeWordSet
False
[ "-khtml-background-size"
, "-khtml-border-bottom-left-radius"
, "-khtml-border-bottom-right-radius"
, "-khtml-border-radius"
, "-khtml-border-top-left-radius"
, "-khtml-border-top-right-radius"
, "-khtml-box-shadow"
, "-khtml-opacity"
, "-moz-animation-delay"
, "-moz-animation-direction"
, "-moz-animation-duration"
, "-moz-animation-fill-mode"
, "-moz-animation-iteration"
, "-moz-animation-name"
, "-moz-animation-play-state"
, "-moz-background-size"
, "-moz-border-bottom-colors"
, "-moz-border-image"
, "-moz-border-left-colors"
, "-moz-border-radius"
, "-moz-border-radius-bottomleft"
, "-moz-border-radius-bottomright"
, "-moz-border-radius-topleft"
, "-moz-border-radius-topright"
, "-moz-border-right-colors"
, "-moz-border-top-colors"
, "-moz-box"
, "-moz-box-flex"
, "-moz-box-shadow"
, "-moz-box-sizing"
, "-moz-column-count"
, "-moz-column-gap"
, "-moz-hyphens"
, "-moz-linear-gradient"
, "-moz-opacity"
, "-moz-outline-style"
, "-moz-perspective"
, "-moz-radial-gradient"
, "-moz-resize"
, "-moz-transform"
, "-moz-transform-origin"
, "-moz-transform-style"
, "-moz-transition"
, "-moz-transition-duration"
, "-moz-transition-property"
, "-ms-animation-delay"
, "-ms-animation-direction"
, "-ms-animation-duration"
, "-ms-animation-fill-mode"
, "-ms-animation-iteration"
, "-ms-animation-name"
, "-ms-animation-play-state"
, "-ms-box-sizing"
, "-ms-filter"
, "-ms-interpolation-mode"
, "-ms-linear-gradient"
, "-ms-text-size-adjust"
, "-ms-transform"
, "-ms-transition"
, "-o-background-size"
, "-o-linear-gradient"
, "-o-text-overflow"
, "-o-transform-origin"
, "-o-transition"
, "-webkit-animation-delay"
, "-webkit-animation-direction"
, "-webkit-animation-duration"
, "-webkit-animation-fill-mode"
, "-webkit-animation-iteration"
, "-webkit-animation-name"
, "-webkit-animation-play-state"
, "-webkit-appearance"
, "-webkit-background-size"
, "-webkit-border-bottom-colors"
, "-webkit-border-bottom-left-radius"
, "-webkit-border-bottom-right-radius"
, "-webkit-border-image"
, "-webkit-border-left-colors"
, "-webkit-border-radius"
, "-webkit-border-radius-bottomleft"
, "-webkit-border-radius-bottomright"
, "-webkit-border-right-colors"
, "-webkit-border-top-colors"
, "-webkit-border-top-left-radius"
, "-webkit-border-top-right-radius"
, "-webkit-box-flex"
, "-webkit-box-reflect"
, "-webkit-box-shadow"
, "-webkit-box-sizing"
, "-webkit-column-count"
, "-webkit-column-gap"
, "-webkit-gradient"
, "-webkit-hyphens"
, "-webkit-linear-gradient"
, "-webkit-perspective"
, "-webkit-text-fill-color"
, "-webkit-text-size-adjust"
, "-webkit-text-stroke-color"
, "-webkit-text-stroke-width"
, "-webkit-transform"
, "-webkit-transform-origin"
, "-webkit-transform-style"
, "-webkit-transition"
, "-webkit-transition-duration"
, "-webkit-transition-property"
, "align-content"
, "align-items"
, "align-self"
, "alignment-baseline"
, "all"
, "animation-delay"
, "animation-direction"
, "animation-duration"
, "animation-fill-mode"
, "animation-iteration-count"
, "animation-name"
, "animation-play-state"
, "animation-timing-function"
, "ascent"
, "azimuth"
, "backface-visibility"
, "background"
, "background-attachment"
, "background-blend-mode"
, "background-break"
, "background-clip"
, "background-color"
, "background-image"
, "background-origin"
, "background-position"
, "background-repeat"
, "background-size"
, "baseline"
, "baseline-shift"
, "bbox"
, "bookmark-label"
, "bookmark-level"
, "border"
, "border-bottom"
, "border-bottom-color"
, "border-bottom-image"
, "border-bottom-left-image"
, "border-bottom-left-radius"
, "border-bottom-right-image"
, "border-bottom-right-radius"
, "border-bottom-style"
, "border-bottom-width"
, "border-boundary"
, "border-collapse"
, "border-color"
, "border-corner-image"
, "border-image"
, "border-image-outset"
, "border-image-repeat"
, "border-image-slice"
, "border-image-source"
, "border-image-width"
, "border-left"
, "border-left-color"
, "border-left-image"
, "border-left-style"
, "border-left-width"
, "border-radius"
, "border-right"
, "border-right-color"
, "border-right-image"
, "border-right-style"
, "border-right-width"
, "border-spacing"
, "border-style"
, "border-top"
, "border-top-color"
, "border-top-image"
, "border-top-left-image"
, "border-top-left-radius"
, "border-top-right-image"
, "border-top-right-radius"
, "border-top-style"
, "border-top-width"
, "border-width"
, "bottom"
, "box-align"
, "box-decoration-break"
, "box-direction"
, "box-flex"
, "box-shadow"
, "box-sizing"
, "box-snap"
, "box-suppress"
, "break-after"
, "break-before"
, "break-inside"
, "cap-height"
, "caption-side"
, "caret-color"
, "centerline"
, "chains"
, "clear"
, "clip"
, "clip-path"
, "clip-rule"
, "color"
, "color-interpolation-filters"
, "column-count"
, "column-fill"
, "column-gap"
, "column-rule"
, "column-rule-color"
, "column-rule-style"
, "column-rule-width"
, "column-span"
, "column-width"
, "columns"
, "content"
, "counter-increment"
, "counter-reset"
, "counter-set"
, "cue"
, "cue-after"
, "cue-before"
, "cursor"
, "definition-src"
, "descent"
, "direction"
, "display"
, "dominant-baseline"
, "elevation"
, "empty-cells"
, "filter"
, "flex"
, "flex-basis"
, "flex-direction"
, "flex-flow"
, "flex-grow"
, "flex-shrink"
, "flex-wrap"
, "float"
, "flood-color"
, "flood-opacity"
, "flow"
, "flow-from"
, "flow-into"
, "font"
, "font-family"
, "font-feature-settings"
, "font-kerning"
, "font-language-override"
, "font-size"
, "font-size-adjust"
, "font-stretch"
, "font-style"
, "font-synthesis"
, "font-variant"
, "font-variant-alternates"
, "font-variant-caps"
, "font-variant-east-asian"
, "font-variant-ligatures"
, "font-variant-numeric"
, "font-variant-position"
, "font-weight"
, "footnote-display"
, "footnote-policy"
, "glyph-orientation-vertical"
, "grid"
, "grid-area"
, "grid-auto-columns"
, "grid-auto-flow"
, "grid-auto-rows"
, "grid-column"
, "grid-column-end"
, "grid-column-gap"
, "grid-column-start"
, "grid-gap"
, "grid-row"
, "grid-row-end"
, "grid-row-gap"
, "grid-row-start"
, "grid-template"
, "grid-template-areas"
, "grid-template-columns"
, "grid-template-rows"
, "hanging-punctuation"
, "height"
, "hyphens"
, "image-orientation"
, "image-rendering"
, "image-resolution"
, "initial-letter"
, "initial-letter-align"
, "initial-letter-wrap"
, "isolation"
, "justify-content"
, "justify-items"
, "justify-self"
, "konq_bgpos_x"
, "konq_bgpos_y"
, "left"
, "letter-spacing"
, "lighting-color"
, "line-grid"
, "line-height"
, "line-snap"
, "linear-gradient"
, "list-style"
, "list-style-image"
, "list-style-keyword"
, "list-style-position"
, "list-style-type"
, "margin"
, "margin-bottom"
, "margin-left"
, "margin-right"
, "margin-top"
, "marker-offset"
, "marker-side"
, "marquee-direction"
, "marquee-loop"
, "marquee-speed"
, "marquee-style"
, "mask"
, "mask-border"
, "mask-border-mode"
, "mask-border-outset"
, "mask-border-repeat"
, "mask-border-slice"
, "mask-border-source"
, "mask-border-width"
, "mask-clip"
, "mask-composite"
, "mask-image"
, "mask-mode"
, "mask-origin"
, "mask-position"
, "mask-repeat"
, "mask-size"
, "mask-type"
, "mathline"
, "max-height"
, "max-lines"
, "max-width"
, "min-height"
, "min-width"
, "mix-blend-mode"
, "nav-down"
, "nav-left"
, "nav-right"
, "nav-up"
, "object-fit"
, "object-position"
, "offset-after"
, "offset-before"
, "offset-end"
, "offset-start"
, "opacity"
, "order"
, "orphans"
, "outline"
, "outline-color"
, "outline-offset"
, "outline-style"
, "outline-width"
, "overflow"
, "overflow-style"
, "overflow-wrap"
, "overflow-x"
, "overflow-y"
, "padding"
, "padding-bottom"
, "padding-left"
, "padding-right"
, "padding-top"
, "page"
, "page-break-after"
, "page-break-before"
, "page-break-inside"
, "panose-1"
, "pause"
, "pause-after"
, "pause-before"
, "perspective"
, "perspective-origin"
, "pitch"
, "pitch-range"
, "play-during"
, "pointer-events"
, "polar-anchor"
, "polar-angle"
, "polar-distance"
, "polar-origin"
, "position"
, "presentation-level"
, "quotes"
, "resize"
, "rest"
, "rest-after"
, "rest-before"
, "richness"
, "right"
, "rotation"
, "rotation-point"
, "ruby-align"
, "ruby-merge"
, "ruby-position"
, "running"
, "scroll-behavior"
, "scroll-snap-align"
, "scroll-snap-margin"
, "scroll-snap-margin-block"
, "scroll-snap-margin-block-end"
, "scroll-snap-margin-block-start"
, "scroll-snap-margin-bottom"
, "scroll-snap-margin-inline"
, "scroll-snap-margin-inline-end"
, "scroll-snap-margin-inline-start"
, "scroll-snap-margin-left"
, "scroll-snap-margin-right"
, "scroll-snap-margin-top"
, "scroll-snap-padding"
, "scroll-snap-padding-block"
, "scroll-snap-padding-block-end"
, "scroll-snap-padding-block-start"
, "scroll-snap-padding-bottom"
, "scroll-snap-padding-inline"
, "scroll-snap-padding-inline-end"
, "scroll-snap-padding-inline-start"
, "scroll-snap-padding-left"
, "scroll-snap-padding-right"
, "scroll-snap-padding-top"
, "scroll-snap-stop"
, "scroll-snap-type"
, "shape-image-threshold"
, "shape-inside"
, "shape-margin"
, "shape-outside"
, "size"
, "slope"
, "speak"
, "speak-as"
, "speak-header"
, "speak-numeral"
, "speak-punctuation"
, "speech-rate"
, "src"
, "stemh"
, "stemv"
, "stress"
, "string-set"
, "tab-size"
, "table-layout"
, "text-align"
, "text-align-last"
, "text-combine-upright"
, "text-decoration"
, "text-decoration-color"
, "text-decoration-line"
, "text-decoration-skip"
, "text-decoration-style"
, "text-emphasis"
, "text-emphasis-color"
, "text-emphasis-position"
, "text-emphasis-style"
, "text-indent"
, "text-justify"
, "text-orientation"
, "text-overflow"
, "text-shadow"
, "text-transform"
, "text-underline-position"
, "text-wrap"
, "top"
, "topline"
, "transform"
, "transform-origin"
, "transform-style"
, "transition"
, "transition-delay"
, "transition-duration"
, "transition-property"
, "transition-timing-function"
, "unicode-bidi"
, "unicode-range"
, "units-per-em"
, "vertical-align"
, "visibility"
, "voice-balance"
, "voice-duration"
, "voice-family"
, "voice-pitch"
, "voice-range"
, "voice-rate"
, "voice-stress"
, "voice-volume"
, "volume"
, "white-space"
, "widows"
, "width"
, "widths"
, "will-change"
, "word-break"
, "word-spacing"
, "word-wrap"
, "wrap-flow"
, "wrap-through"
, "writing-mode"
, "x-height"
, "z-index"
, "zoom"
])
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "Rule" ) ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "-?[A-Za-z_-]+(?=\\s*:)"
, reCompiled = Just (compileRegex True "-?[A-Za-z_-]+(?=\\s*:)")
, reCaseSensitive = True
}
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "CSS" , "Rule" ) ]
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindComments" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "\\S"
, reCompiled = Just (compileRegex True "\\S")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = NormalTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "SelAttr"
, Context
{ cName = "SelAttr"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher = DetectChar ']'
, rAttribute = AttributeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "FindStrings" )
, rAttribute = AttributeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = AttributeTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "SelPseudo"
, Context
{ cName = "SelPseudo"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = False
, keywordDelims = Data.Set.fromList "\t\n !&()*+,./:;<=>?[\\]^{|}~"
}
(makeWordSet
False
[ "active"
, "after"
, "before"
, "checked"
, "disabled"
, "empty"
, "enabled"
, "first-child"
, "first-letter"
, "first-line"
, "first-of-type"
, "focus"
, "hover"
, "indeterminate"
, "last-child"
, "last-of-type"
, "link"
, "not"
, "nth-child"
, "nth-last-child"
, "nth-last-of-type"
, "nth-of-type"
, "only-child"
, "only-of-type"
, "root"
, "selection"
, "target"
, "visited"
])
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
]
, cAttribute = DecValTok
, cLineEmptyContext = []
, cLineEndContext = [ Pop ]
, cLineBeginContext = []
, cFallthrough = True
, cFallthroughContext = [ Pop ]
, cDynamic = False
}
)
, ( "StringDQ"
, Context
{ cName = "StringDQ"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher = DetectChar '"'
, rAttribute = StringTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "InsideString" )
, rAttribute = StringTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = StringTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "StringSQ"
, Context
{ cName = "StringSQ"
, cSyntax = "CSS"
, cRules =
[ Rule
{ rMatcher = DetectChar '\''
, rAttribute = StringTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = IncludeRules ( "CSS" , "InsideString" )
, rAttribute = StringTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = StringTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
]
, sAuthor = "Wilbert Berendsen (wilbert@kde.nl)"
, sVersion = "3"
, sLicense = "LGPL"
, sExtensions = [ "*.css" ]
, sStartingContext = "Base"
}