summaryrefslogtreecommitdiff
path: root/vendor/github.com/alecthomas/chroma/v2/lexers/embedded/fish.xml
diff options
context:
space:
mode:
authorMitja Felicijan <mitja.felicijan@gmail.com>2024-10-25 00:47:47 +0200
committerMitja Felicijan <mitja.felicijan@gmail.com>2024-10-25 00:47:47 +0200
commitc6cc0108ca7738023b45e0eeac0fa2390532dd93 (patch)
tree36890e6cd3091bbab8efbe686cc56f467f645bfd /vendor/github.com/alecthomas/chroma/v2/lexers/embedded/fish.xml
parent0130404a1dc663d4aa68d780c9bcb23a4243e68d (diff)
downloadjbmafp-c6cc0108ca7738023b45e0eeac0fa2390532dd93.tar.gz
Added vendor lock on depsHEADmaster
Diffstat (limited to 'vendor/github.com/alecthomas/chroma/v2/lexers/embedded/fish.xml')
-rw-r--r--vendor/github.com/alecthomas/chroma/v2/lexers/embedded/fish.xml159
1 files changed, 159 insertions, 0 deletions
diff --git a/vendor/github.com/alecthomas/chroma/v2/lexers/embedded/fish.xml b/vendor/github.com/alecthomas/chroma/v2/lexers/embedded/fish.xml
new file mode 100644
index 0000000..deb7814
--- /dev/null
+++ b/vendor/github.com/alecthomas/chroma/v2/lexers/embedded/fish.xml
@@ -0,0 +1,159 @@
+<lexer>
+ <config>
+ <name>Fish</name>
+ <alias>fish</alias>
+ <alias>fishshell</alias>
+ <filename>*.fish</filename>
+ <filename>*.load</filename>
+ <mime_type>application/x-fish</mime_type>
+ </config>
+ <rules>
+ <state name="paren">
+ <rule pattern="\)">
+ <token type="Keyword"/>
+ <pop depth="1"/>
+ </rule>
+ <rule>
+ <include state="root"/>
+ </rule>
+ </state>
+ <state name="math">
+ <rule pattern="\)\)">
+ <token type="Keyword"/>
+ <pop depth="1"/>
+ </rule>
+ <rule pattern="[-+*/%^|&amp;]|\*\*|\|\|">
+ <token type="Operator"/>
+ </rule>
+ <rule pattern="\d+#\d+">
+ <token type="LiteralNumber"/>
+ </rule>
+ <rule pattern="\d+#(?! )">
+ <token type="LiteralNumber"/>
+ </rule>
+ <rule pattern="\d+">
+ <token type="LiteralNumber"/>
+ </rule>
+ <rule>
+ <include state="root"/>
+ </rule>
+ </state>
+ <state name="root">
+ <rule>
+ <include state="basic"/>
+ </rule>
+ <rule>
+ <include state="interp"/>
+ </rule>
+ <rule>
+ <include state="data"/>
+ </rule>
+ </state>
+ <state name="interp">
+ <rule pattern="\$\(\(">
+ <token type="Keyword"/>
+ <push state="math"/>
+ </rule>
+ <rule pattern="\(">
+ <token type="Keyword"/>
+ <push state="paren"/>
+ </rule>
+ <rule pattern="\$#?(\w+|.)">
+ <token type="NameVariable"/>
+ </rule>
+ </state>
+ <state name="basic">
+ <rule pattern="(?&lt;=(?:^|\A|;|&amp;&amp;|\|\||\||\b(continue|function|return|switch|begin|while|break|count|false|block|echo|case|true|else|exit|test|set|cdh|and|pwd|for|end|not|if|cd|or)\b)\s*)(continue|function|return|switch|begin|while|break|count|false|block|test|case|true|echo|exit|else|set|cdh|and|pwd|for|end|not|if|cd|or)(?=;?\b)">
+ <token type="Keyword"/>
+ </rule>
+ <rule pattern="(?&lt;=for\s+\S+\s+)in\b">
+ <token type="Keyword"/>
+ </rule>
+ <rule pattern="\b(fish_update_completions|fish_command_not_found|fish_breakpoint_prompt|fish_status_to_signal|fish_right_prompt|fish_is_root_user|fish_mode_prompt|fish_vcs_prompt|fish_key_reader|fish_svn_prompt|fish_git_prompt|fish_hg_prompt|fish_greeting|fish_add_path|commandline|fish_prompt|fish_indent|fish_config|fish_pager|breakpoint|fish_title|prompt_pwd|functions|set_color|realpath|funcsave|contains|complete|argparse|fish_opt|history|builtin|getopts|suspend|command|mimedb|printf|ulimit|disown|string|source|funced|status|random|isatty|fishd|prevd|vared|umask|nextd|alias|pushd|emit|jobs|popd|help|psub|wait|fish|read|time|exec|eval|math|trap|type|dirs|dirh|abbr|kill|bind|hash|open|fc|bg|fg)\s*\b(?!\.)">
+ <token type="NameBuiltin"/>
+ </rule>
+ <rule pattern="#!.*\n">
+ <token type="CommentHashbang"/>
+ </rule>
+ <rule pattern="#.*\n">
+ <token type="Comment"/>
+ </rule>
+ <rule pattern="\\[\w\W]">
+ <token type="LiteralStringEscape"/>
+ </rule>
+ <rule pattern="(\b\w+)(\s*)(=)">
+ <bygroups>
+ <token type="NameVariable"/>
+ <token type="Text"/>
+ <token type="Operator"/>
+ </bygroups>
+ </rule>
+ <rule pattern="[\[\]()={}]">
+ <token type="Operator"/>
+ </rule>
+ <rule pattern="(?&lt;=\[[^\]]+)\.\.|-(?=[^\[]+\])">
+ <token type="Operator"/>
+ </rule>
+ <rule pattern="&lt;&lt;-?\s*(\&#39;?)\\?(\w+)[\w\W]+?\2">
+ <token type="LiteralString"/>
+ </rule>
+ <rule pattern="(?&lt;=set\s+(?:--?[^\d\W][\w-]*\s+)?)\w+">
+ <token type="NameVariable"/>
+ </rule>
+ <rule pattern="(?&lt;=for\s+)\w[\w-]*(?=\s+in)">
+ <token type="NameVariable"/>
+ </rule>
+ <rule pattern="(?&lt;=function\s+)\w(?:[^\n])*?(?= *[-\n])">
+ <token type="NameFunction"/>
+ </rule>
+ <rule pattern="(?&lt;=(?:^|\b(?:and|or|sudo)\b|;|\|\||&amp;&amp;|\||\(|(?:\b\w+\s*=\S+\s)) *)\w[\w-]*">
+ <token type="NameFunction"/>
+ </rule>
+ </state>
+ <state name="data">
+ <rule pattern="(?s)\$?&#34;(\\\\|\\[0-7]+|\\.|[^&#34;\\$])*&#34;">
+ <token type="LiteralStringDouble"/>
+ </rule>
+ <rule pattern="&#34;">
+ <token type="LiteralStringDouble"/>
+ <push state="string"/>
+ </rule>
+ <rule pattern="(?s)\$&#39;(\\\\|\\[0-7]+|\\.|[^&#39;\\])*&#39;">
+ <token type="LiteralStringSingle"/>
+ </rule>
+ <rule pattern="(?s)&#39;.*?&#39;">
+ <token type="LiteralStringSingle"/>
+ </rule>
+ <rule pattern=";">
+ <token type="Punctuation"/>
+ </rule>
+ <rule pattern="&amp;&amp;|\|\||&amp;|\||\^|&lt;|&gt;">
+ <token type="Operator"/>
+ </rule>
+ <rule pattern="\s+">
+ <token type="Text"/>
+ </rule>
+ <rule pattern="\b\d+\b">
+ <token type="LiteralNumber"/>
+ </rule>
+ <rule pattern="(?&lt;=\s+)--?[^\d][\w-]*">
+ <token type="NameAttribute"/>
+ </rule>
+ <rule pattern=".+?">
+ <token type="Text"/>
+ </rule>
+ </state>
+ <state name="string">
+ <rule pattern="&#34;">
+ <token type="LiteralStringDouble"/>
+ <pop depth="1"/>
+ </rule>
+ <rule pattern="(?s)(\\\\|\\[0-7]+|\\.|[^&#34;\\$])+">
+ <token type="LiteralStringDouble"/>
+ </rule>
+ <rule>
+ <include state="interp"/>
+ </rule>
+ </state>
+ </rules>
+</lexer> \ No newline at end of file