diff options
| author | Mitja Felicijan <mitja.felicijan@gmail.com> | 2024-10-25 00:47:47 +0200 |
|---|---|---|
| committer | Mitja Felicijan <mitja.felicijan@gmail.com> | 2024-10-25 00:47:47 +0200 |
| commit | c6cc0108ca7738023b45e0eeac0fa2390532dd93 (patch) | |
| tree | 36890e6cd3091bbab8efbe686cc56f467f645bfd /vendor/github.com/alecthomas/chroma/v2/lexers/embedded/r.xml | |
| parent | 0130404a1dc663d4aa68d780c9bcb23a4243e68d (diff) | |
| download | jbmafp-c6cc0108ca7738023b45e0eeac0fa2390532dd93.tar.gz | |
Diffstat (limited to 'vendor/github.com/alecthomas/chroma/v2/lexers/embedded/r.xml')
| -rw-r--r-- | vendor/github.com/alecthomas/chroma/v2/lexers/embedded/r.xml | 127 |
1 files changed, 127 insertions, 0 deletions
diff --git a/vendor/github.com/alecthomas/chroma/v2/lexers/embedded/r.xml b/vendor/github.com/alecthomas/chroma/v2/lexers/embedded/r.xml new file mode 100644 index 0000000..6dbfcba --- /dev/null +++ b/vendor/github.com/alecthomas/chroma/v2/lexers/embedded/r.xml @@ -0,0 +1,127 @@ +<lexer> + <config> + <name>R</name> + <alias>splus</alias> + <alias>s</alias> + <alias>r</alias> + <filename>*.S</filename> + <filename>*.R</filename> + <filename>*.r</filename> + <filename>.Rhistory</filename> + <filename>.Rprofile</filename> + <filename>.Renviron</filename> + <mime_type>text/S-plus</mime_type> + <mime_type>text/S</mime_type> + <mime_type>text/x-r-source</mime_type> + <mime_type>text/x-r</mime_type> + <mime_type>text/x-R</mime_type> + <mime_type>text/x-r-history</mime_type> + <mime_type>text/x-r-profile</mime_type> + </config> + <rules> + <state name="numbers"> + <rule pattern="0[xX][a-fA-F0-9]+([pP][0-9]+)?[Li]?"> + <token type="LiteralNumberHex"/> + </rule> + <rule pattern="[+-]?([0-9]+(\.[0-9]+)?|\.[0-9]+|\.)([eE][+-]?[0-9]+)?[Li]?"> + <token type="LiteralNumber"/> + </rule> + </state> + <state name="operators"> + <rule pattern="<<?-|->>?|-|==|<=|>=|<|>|&&?|!=|\|\|?|\?"> + <token type="Operator"/> + </rule> + <rule pattern="\*|\+|\^|/|!|%[^%]*%|=|~|\$|@|:{1,3}"> + <token type="Operator"/> + </rule> + </state> + <state name="root"> + <rule pattern="((?:`[^`\\]*(?:\\.[^`\\]*)*`)|(?:(?:[a-zA-z]|[_.][^0-9])[\w_.]*))\s*(?=\()"> + <token type="NameFunction"/> + </rule> + <rule> + <include state="statements"/> + </rule> + <rule pattern="\{|\}"> + <token type="Punctuation"/> + </rule> + <rule pattern="."> + <token type="Text"/> + </rule> + </state> + <state name="valid_name"> + <rule pattern="(?:`[^`\\]*(?:\\.[^`\\]*)*`)|(?:(?:[a-zA-z]|[_.][^0-9])[\w_.]*)"> + <token type="Name"/> + </rule> + </state> + <state name="keywords"> + <rule pattern="(if|else|for|while|repeat|in|next|break|return|switch|function)(?![\w.])"> + <token type="KeywordReserved"/> + </rule> + </state> + <state name="builtin_symbols"> + <rule pattern="(NULL|NA(_(integer|real|complex|character)_)?|letters|LETTERS|Inf|TRUE|FALSE|NaN|pi|\.\.(\.|[0-9]+))(?![\w.])"> + <token type="KeywordConstant"/> + </rule> + <rule pattern="(T|F)\b"> + <token type="NameBuiltinPseudo"/> + </rule> + </state> + <state name="string_squote"> + <rule pattern="([^\'\\]|\\.)*\'"> + <token type="LiteralString"/> + <pop depth="1"/> + </rule> + </state> + <state name="comments"> + <rule pattern="#.*$"> + <token type="CommentSingle"/> + </rule> + </state> + <state name="punctuation"> + <rule pattern="\[{1,2}|\]{1,2}|\(|\)|;|,"> + <token type="Punctuation"/> + </rule> + </state> + <state name="statements"> + <rule> + <include state="comments"/> + </rule> + <rule pattern="\s+"> + <token type="Text"/> + </rule> + <rule pattern="\'"> + <token type="LiteralString"/> + <push state="string_squote"/> + </rule> + <rule pattern="\""> + <token type="LiteralString"/> + <push state="string_dquote"/> + </rule> + <rule> + <include state="builtin_symbols"/> + </rule> + <rule> + <include state="valid_name"/> + </rule> + <rule> + <include state="numbers"/> + </rule> + <rule> + <include state="keywords"/> + </rule> + <rule> + <include state="punctuation"/> + </rule> + <rule> + <include state="operators"/> + </rule> + </state> + <state name="string_dquote"> + <rule pattern="([^"\\]|\\.)*""> + <token type="LiteralString"/> + <pop depth="1"/> + </rule> + </state> + </rules> +</lexer>
\ No newline at end of file |
