| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Skylighting.Parser
Synopsis
- parseSyntaxDefinition :: FilePath -> IO (Either String Syntax)
- parseSyntaxDefinitionFromText :: FilePath -> Text -> Either String Syntax
- addSyntaxDefinition :: Syntax -> SyntaxMap -> SyntaxMap
- resolveKeywords :: SyntaxMap -> Syntax -> Syntax
- missingIncludes :: [Syntax] -> [(Text, Text)]
Documentation
parseSyntaxDefinition :: FilePath -> IO (Either String Syntax) Source #
Parses a file containing a Kate XML syntax definition
into a Syntax description. Note that the resulting Syntax
must be processed with resolveKeywords (once the full syntax
map is assembled) before it can be used for tokenizing; the
functions in Skylighting.Loader do this automatically.
parseSyntaxDefinitionFromText :: FilePath -> Text -> Either String Syntax Source #
addSyntaxDefinition :: Syntax -> SyntaxMap -> SyntaxMap Source #
Adds a syntax definition to a syntax map, replacing any existing definition with the same name.
resolveKeywords :: SyntaxMap -> Syntax -> Syntax Source #
Resolve Keyword matchers that refer to lists; following up include directives in the syntax map and producing WordSets.
missingIncludes :: [Syntax] -> [(Text, Text)] Source #
Scan a list of Syntaxs and make sure that
IncludeRules never asks for a syntax not in this
list. Produces a list of pairs where the first
element is the including syntax name and the second
element is the (missing) included syntax name.
This is intended for sanity checks to avoid run-time
errors.