Mercurial > yakumo_izuru > aya
diff vendor/github.com/alecthomas/chroma/v2/lexers/embedded/fsharp.xml @ 66:787b5ee0289d draft
Use vendored modules
Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>
author | yakumo.izuru |
---|---|
date | Sun, 23 Jul 2023 13:18:53 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/vendor/github.com/alecthomas/chroma/v2/lexers/embedded/fsharp.xml Sun Jul 23 13:18:53 2023 +0000 @@ -0,0 +1,245 @@ +<lexer> + <config> + <name>FSharp</name> + <alias>fsharp</alias> + <filename>*.fs</filename> + <filename>*.fsi</filename> + <mime_type>text/x-fsharp</mime_type> + </config> + <rules> + <state name="comment"> + <rule pattern="[^(*)@"]+"> + <token type="Comment"/> + </rule> + <rule pattern="\(\*"> + <token type="Comment"/> + <push/> + </rule> + <rule pattern="\*\)"> + <token type="Comment"/> + <pop depth="1"/> + </rule> + <rule pattern="@""> + <token type="LiteralString"/> + <push state="lstring"/> + </rule> + <rule pattern="""""> + <token type="LiteralString"/> + <push state="tqs"/> + </rule> + <rule pattern="""> + <token type="LiteralString"/> + <push state="string"/> + </rule> + <rule pattern="[(*)@]"> + <token type="Comment"/> + </rule> + </state> + <state name="string"> + <rule pattern="[^\\"]+"> + <token type="LiteralString"/> + </rule> + <rule> + <include state="escape-sequence"/> + </rule> + <rule pattern="\\\n"> + <token type="LiteralString"/> + </rule> + <rule pattern="\n"> + <token type="LiteralString"/> + </rule> + <rule pattern=""B?"> + <token type="LiteralString"/> + <pop depth="1"/> + </rule> + </state> + <state name="lstring"> + <rule pattern="[^"]+"> + <token type="LiteralString"/> + </rule> + <rule pattern="\n"> + <token type="LiteralString"/> + </rule> + <rule pattern=""""> + <token type="LiteralString"/> + </rule> + <rule pattern=""B?"> + <token type="LiteralString"/> + <pop depth="1"/> + </rule> + </state> + <state name="tqs"> + <rule pattern="[^"]+"> + <token type="LiteralString"/> + </rule> + <rule pattern="\n"> + <token type="LiteralString"/> + </rule> + <rule pattern=""""B?"> + <token type="LiteralString"/> + <pop depth="1"/> + </rule> + <rule pattern="""> + <token type="LiteralString"/> + </rule> + </state> + <state name="escape-sequence"> + <rule pattern="\\[\\"\'ntbrafv]"> + <token type="LiteralStringEscape"/> + </rule> + <rule pattern="\\[0-9]{3}"> + <token type="LiteralStringEscape"/> + </rule> + <rule pattern="\\u[0-9a-fA-F]{4}"> + <token type="LiteralStringEscape"/> + </rule> + <rule pattern="\\U[0-9a-fA-F]{8}"> + <token type="LiteralStringEscape"/> + </rule> + </state> + <state name="root"> + <rule pattern="\s+"> + <token type="Text"/> + </rule> + <rule pattern="\(\)|\[\]"> + <token type="NameBuiltinPseudo"/> + </rule> + <rule pattern="\b(?<!\.)([A-Z][\w\']*)(?=\s*\.)"> + <token type="NameNamespace"/> + <push state="dotted"/> + </rule> + <rule pattern="\b([A-Z][\w\']*)"> + <token type="Name"/> + </rule> + <rule pattern="///.*?\n"> + <token type="LiteralStringDoc"/> + </rule> + <rule pattern="//.*?\n"> + <token type="CommentSingle"/> + </rule> + <rule pattern="\(\*(?!\))"> + <token type="Comment"/> + <push state="comment"/> + </rule> + <rule pattern="@""> + <token type="LiteralString"/> + <push state="lstring"/> + </rule> + <rule pattern="""""> + <token type="LiteralString"/> + <push state="tqs"/> + </rule> + <rule pattern="""> + <token type="LiteralString"/> + <push state="string"/> + </rule> + <rule pattern="\b(open|module)(\s+)([\w.]+)"> + <bygroups> + <token type="Keyword"/> + <token type="Text"/> + <token type="NameNamespace"/> + </bygroups> + </rule> + <rule pattern="\b(let!?)(\s+)(\w+)"> + <bygroups> + <token type="Keyword"/> + <token type="Text"/> + <token type="NameVariable"/> + </bygroups> + </rule> + <rule pattern="\b(type)(\s+)(\w+)"> + <bygroups> + <token type="Keyword"/> + <token type="Text"/> + <token type="NameClass"/> + </bygroups> + </rule> + <rule pattern="\b(member|override)(\s+)(\w+)(\.)(\w+)"> + <bygroups> + <token type="Keyword"/> + <token type="Text"/> + <token type="Name"/> + <token type="Punctuation"/> + <token type="NameFunction"/> + </bygroups> + </rule> + <rule pattern="\b(abstract|as|assert|base|begin|class|default|delegate|do!|do|done|downcast|downto|elif|else|end|exception|extern|false|finally|for|function|fun|global|if|inherit|inline|interface|internal|in|lazy|let!|let|match|member|module|mutable|namespace|new|null|of|open|override|private|public|rec|return!|return|select|static|struct|then|to|true|try|type|upcast|use!|use|val|void|when|while|with|yield!|yield|atomic|break|checked|component|const|constraint|constructor|continue|eager|event|external|fixed|functor|include|method|mixin|object|parallel|process|protected|pure|sealed|tailcall|trait|virtual|volatile)\b"> + <token type="Keyword"/> + </rule> + <rule pattern="``([^`\n\r\t]|`[^`\n\r\t])+``"> + <token type="Name"/> + </rule> + <rule pattern="#[ \t]*(if|endif|else|line|nowarn|light|r|\d+)\b"> + <token type="CommentPreproc"/> + </rule> + <rule pattern="(!=|#|&&|&|\(|\)|\*|\+|,|-\.|->|-|\.\.|\.|::|:=|:>|:|;;|;|<-|<\]|<|>\]|>|\?\?|\?|\[<|\[\||\[|\]|_|`|\{|\|\]|\||\}|~|<@@|<@|=|@>|@@>)"> + <token type="Operator"/> + </rule> + <rule pattern="([=<>@^|&+\*/$%-]|[!?~])?[!$%&*+\./:<=>?@^|~-]"> + <token type="Operator"/> + </rule> + <rule pattern="\b(and|or|not)\b"> + <token type="OperatorWord"/> + </rule> + <rule pattern="\b(sbyte|byte|char|nativeint|unativeint|float32|single|float|double|int8|uint8|int16|uint16|int32|uint32|int64|uint64|decimal|unit|bool|string|list|exn|obj|enum)\b"> + <token type="KeywordType"/> + </rule> + <rule pattern="[^\W\d][\w']*"> + <token type="Name"/> + </rule> + <rule pattern="\d[\d_]*[uU]?[yslLnQRZINGmM]?"> + <token type="LiteralNumberInteger"/> + </rule> + <rule pattern="0[xX][\da-fA-F][\da-fA-F_]*[uU]?[yslLn]?[fF]?"> + <token type="LiteralNumberHex"/> + </rule> + <rule pattern="0[oO][0-7][0-7_]*[uU]?[yslLn]?"> + <token type="LiteralNumberOct"/> + </rule> + <rule pattern="0[bB][01][01_]*[uU]?[yslLn]?"> + <token type="LiteralNumberBin"/> + </rule> + <rule pattern="-?\d[\d_]*(.[\d_]*)?([eE][+\-]?\d[\d_]*)[fFmM]?"> + <token type="LiteralNumberFloat"/> + </rule> + <rule pattern="'(?:(\\[\\\"'ntbr ])|(\\[0-9]{3})|(\\x[0-9a-fA-F]{2}))'B?"> + <token type="LiteralStringChar"/> + </rule> + <rule pattern="'.'"> + <token type="LiteralStringChar"/> + </rule> + <rule pattern="'"> + <token type="Keyword"/> + </rule> + <rule pattern="@?""> + <token type="LiteralStringDouble"/> + <push state="string"/> + </rule> + <rule pattern="[~?][a-z][\w\']*:"> + <token type="NameVariable"/> + </rule> + </state> + <state name="dotted"> + <rule pattern="\s+"> + <token type="Text"/> + </rule> + <rule pattern="\."> + <token type="Punctuation"/> + </rule> + <rule pattern="[A-Z][\w\']*(?=\s*\.)"> + <token type="NameNamespace"/> + </rule> + <rule pattern="[A-Z][\w\']*"> + <token type="Name"/> + <pop depth="1"/> + </rule> + <rule pattern="[a-z_][\w\']*"> + <token type="Name"/> + <pop depth="1"/> + </rule> + <rule> + <pop depth="1"/> + </rule> + </state> + </rules> +</lexer>