summaryrefslogtreecommitdiff
path: root/uvim/runtime/syntax/fish.vim
diff options
context:
space:
mode:
Diffstat (limited to 'uvim/runtime/syntax/fish.vim')
-rw-r--r--uvim/runtime/syntax/fish.vim225
1 files changed, 0 insertions, 225 deletions
diff --git a/uvim/runtime/syntax/fish.vim b/uvim/runtime/syntax/fish.vim
deleted file mode 100644
index 266878bbdc..0000000000
--- a/uvim/runtime/syntax/fish.vim
+++ /dev/null
@@ -1,225 +0,0 @@
-" Vim syntax file
-" Language: fish
-" Maintainer: Nicholas Boyle (github.com/nickeb96)
-" Repository: https://github.com/nickeb96/fish.vim
-" Last Change: February 1, 2023
-
-if exists("b:current_syntax")
- finish
-endif
-
-let s:cpo_save = &cpo
-set cpo&vim
-
-
-" Statements
-syn cluster fishStatement contains=fishKeywordAndOr,fishNot,fishSelectStatement,fishKeyword,fishKeywordIf,fishCommand,fishVariable
-
-syn keyword fishKeywordAndOr and or nextgroup=fishNot,fishSelectStatement,fishKeyword,fishKeywordIf,fishCommand
-hi def link fishKeywordAndOr fishOperator
-
-syn keyword fishNot not skipwhite nextgroup=fishSelectStatement,fishKeyword,fishKeywordIf,fishCommand
-syn match fishNot /!/ skipwhite nextgroup=fishSelectStatement,fishKeyword,fishKeywordIf,fishCommand
-hi def link fishNot fishOperator
-
-syn keyword fishSelectStatement command builtin skipwhite nextgroup=fishKeyword,fishKeywordIf,fishCommand,fishOption
-hi def link fishSelectStatement fishKeyword
-
-syn keyword fishKeyword end skipwhite nextgroup=@fishTerminator
-
-syn keyword fishKeywordIf if skipwhite nextgroup=@fishStatement
-syn keyword fishKeyword else skipwhite nextgroup=fishKeywordIf,fishSemicolon
-hi def link fishKeywordIf fishKeyword
-
-syn keyword fishKeyword switch skipwhite nextgroup=@fishArgument
-syn keyword fishKeyword case skipwhite nextgroup=@fishArgument
-
-syn keyword fishKeyword while skipwhite nextgroup=@fishStatement
-
-syn keyword fishKeyword for skipwhite nextgroup=fishForVariable
-syn match fishForVariable /[[:alnum:]_]\+/ contained skipwhite nextgroup=fishKeywordIn
-syn keyword fishKeywordIn in contained skipwhite nextgroup=@fishArgument
-hi def link fishForVariable fishParameter
-hi def link fishKeywordIn fishKeyword
-
-syn keyword fishKeyword _ abbr argparse begin bg bind block break breakpoint cd commandline
- \ complete continue count disown echo emit eval exec exit false fg function functions
- \ history jobs math printf pwd random read realpath return set set_color source status
- \ string test time true type ulimit wait
- \ skipwhite nextgroup=@fishNext
-syn match fishKeyword /\<contains\>/ skipwhite nextgroup=@fishNext
-
-syn match fishCommand /[[:alnum:]_\/[][[:alnum:]+._-]*/ skipwhite nextgroup=@fishNext
-
-
-" Internally Nested Arguments
-
-syn cluster fishSubscriptArgs contains=fishInnerVariable,fishIndexNum,fishIndexRange,fishInnerCommandSub
-
-syn match fishInnerVariable /\$\+[[:alnum:]_]\+/ contained
-syn match fishInnerVariable /\$\+[[:alnum:]_]\+\[/me=e-1,he=e-1 contained nextgroup=fishInnerSubscript
-hi def link fishInnerVariable fishVariable
-
-syn region fishInnerSubscript matchgroup=fishVariable start=/\[/ end=/]/ contained
- \ keepend contains=@fishSubscriptArgs
-hi def link fishInnerSubscript fishSubscript
-
-syn match fishIndexNum /[+-]?[[:digit:]]\+/ contained
-hi def link fishIndexNum fishParameter
-
-syn match fishIndexRange /\.\./ contained
-hi def link fishIndexRange fishParameter
-
-syn region fishInnerCommandSub matchgroup=fishOperator start=/(/ start=/\$(/ end=/)/ contained
- \ contains=@fishStatement
-hi def link fishInnerCommandSub fishCommandSub
-
-syn region fishQuotedCommandSub matchgroup=fishOperator start=/\$(/ end=/)/ contained
- \ contains=@fishStatement
-hi def link fishQuotedCommandSub fishCommandSub
-
-syn match fishBraceExpansionComma /,/ contained
-hi def link fishBraceExpansionComma fishOperator
-
-syn match fishBracedParameter '[[:alnum:]\u5b\u5d@:=+.%/!_-]\+' contained contains=fishInnerPathGlob
-hi def link fishBracedParameter fishParameter
-
-syn region fishBracedQuote start=/'/ skip=/\\'/ end=/'/ contained
- \ contains=fishEscapedEscape,fishEscapedSQuote
-syn region fishBracedQuote start=/"/ skip=/\\"/ end=/"/ contained
- \ contains=fishEscapedEscape,fishEscapedDQuote,fishEscapedDollar,fishInnerVariable,fishInnerCommandSub
-hi def link fishBracedQuote fishQuote
-
-
-" Arguments
-
-syn cluster fishArgument contains=fishParameter,fishOption,fishVariable,fishPathGlob,fishBraceExpansion,fishQuote,fishCharacter,fishCommandSub,fishRedirection,fishSelfPid
-
-syn match fishParameter '[[:alnum:]\u5b\u5d@:=+.,%/!_-]\+' contained skipwhite nextgroup=@fishNext
-
-syn match fishOption /-[[:alnum:]=_-]*/ contained skipwhite nextgroup=@fishNext
-
-syn match fishPathGlob /\(\~\|*\|?\)/ contained skipwhite nextgroup=@fishNext
-
-syn region fishBraceExpansion matchgroup=fishOperator start=/{/ end=/}/ contained
- \ contains=fishBraceExpansionComma,fishInnerVariable,fishInnerCommandSub,fishBracedParameter,fishBracedQuote
- \ skipwhite nextgroup=@fishNext
-
-syn match fishVariable /\$\+[[:alnum:]_]\+/ skipwhite nextgroup=@fishNext
-syn match fishVariable /\$\+[[:alnum:]_]\+\[/me=e-1,he=e-1 nextgroup=fishSubscript
-
-syn region fishSubscript matchgroup=fishVariable start=/\[/ end=/]/ contained
- \ keepend contains=@fishSubscriptArgs
- \ skipwhite nextgroup=@fishNext
-
-syn region fishCommandSub matchgroup=fishOperator start=/(/ start=/\$(/ end=/)/ contained
- \ contains=@fishStatement
- \ skipwhite nextgroup=@fishNext
-
-syn region fishQuote start=/'/ skip=/\\'/ end=/'/ contained
- \ contains=fishEscapedEscape,fishEscapedSQuote
- \ skipwhite nextgroup=@fishNext
-syn region fishQuote start=/"/ skip=/\\"/ end=/"/ contained
- \ contains=fishEscapedEscape,fishEscapedDQuote,fishEscapedDollar,fishInnerVariable,fishQuotedCommandSub
- \ skipwhite nextgroup=@fishNext
-
-syn match fishEscapedEscape /\\\\/ contained
-syn match fishEscapedSQuote /\\'/ contained
-syn match fishEscapedDQuote /\\"/ contained
-syn match fishEscapedDollar /\\\$/ contained
-hi def link fishEscapedEscape fishCharacter
-hi def link fishEscapedSQuote fishCharacter
-hi def link fishEscapedDQuote fishCharacter
-hi def link fishEscapedDollar fishCharacter
-
-syn match fishCharacter /\\[0-7]\{1,3}/ contained skipwhite nextgroup=@fishNext
-syn match fishCharacter /\\u[0-9a-fA-F]\{4}/ contained skipwhite nextgroup=@fishNext
-syn match fishCharacter /\\U[0-9a-fA-F]\{8}/ contained skipwhite nextgroup=@fishNext
-syn match fishCharacter /\\x[0-7][0-9a-fA-F]\|\\x[0-9a-fA-F]/ contained skipwhite nextgroup=@fishNext
-syn match fishCharacter /\\X[0-9a-fA-F]\{1,2}/ contained skipwhite nextgroup=@fishNext
-syn match fishCharacter /\\[abcefnrtv[\](){}<>\\*?~%#$|&;'" ]/ contained skipwhite nextgroup=@fishNext
-
-syn match fishRedirection /</ contained skipwhite nextgroup=fishRedirectionTarget
-syn match fishRedirection /[0-9&]\?>[>?]\?/ contained skipwhite nextgroup=fishRedirectionTarget
-syn match fishRedirection /[0-9&]\?>&[0-9-]/ contained skipwhite nextgroup=@fishNext
-
-syn match fishRedirectionTarget /[[:alnum:]$~*?{,}"'\/._-]\+/ contained contains=fishInnerVariable skipwhite nextgroup=@fishNext
-hi def link fishRedirectionTarget fishRedirection
-
-syn match fishSelfPid /%self\>/ contained nextgroup=@fishNext
-hi def link fishSelfPid fishOperator
-
-
-" Terminators
-
-syn cluster fishTerminator contains=fishPipe,fishBackgroundJob,fishSemicolon,fishSymbolicAndOr
-
-syn match fishPipe /\(1>\|2>\|&\)\?|/ contained skipwhite nextgroup=@fishStatement
-hi def link fishPipe fishEnd
-
-syn match fishBackgroundJob /&$/ contained skipwhite nextgroup=@fishStatement
-syn match fishBackgroundJob /&[^<>&|]/me=s+1,he=s+1 contained skipwhite nextgroup=@fishStatement
-hi def link fishBackgroundJob fishEnd
-
-syn match fishSemicolon /;/ skipwhite nextgroup=@fishStatement
-hi def link fishSemicolon fishEnd
-
-syn match fishSymbolicAndOr /\(&&\|||\)/ contained skipwhite skipempty nextgroup=@fishStatement
-hi def link fishSymbolicAndOr fishOperator
-
-
-" Other
-
-syn cluster fishNext contains=fishEscapedNl,@fishArgument,@fishTerminator
-
-syn match fishEscapedNl /\\$/ skipnl skipwhite contained nextgroup=@fishNext
-
-syn match fishComment /#.*/ contains=fishTodo,@Spell
-
-syn keyword fishTodo TODO contained
-
-
-
-syn sync minlines=200
-syn sync maxlines=300
-
-
-" Intermediate highlight groups matching $fish_color_* variables
-
-hi def link fishCommand fish_color_command
-hi def link fishComment fish_color_comment
-hi def link fishEnd fish_color_end
-hi def link fishCharacter fish_color_escape
-hi def link fishKeyword fish_color_keyword
-hi def link fishEscapedNl fish_color_normal
-hi def link fishOperator fish_color_operator
-hi def link fishVariable fish_color_operator
-hi def link fishInnerVariable fish_color_operator
-hi def link fishPathGlob fish_color_operator
-hi def link fishOption fish_color_option
-hi def link fishParameter fish_color_param
-hi def link fishQuote fish_color_quote
-hi def link fishRedirection fish_color_redirection
-
-
-" Default highlight groups
-
-hi def link fish_color_param Normal
-hi def link fish_color_normal Normal
-hi def link fish_color_option Normal
-hi def link fish_color_command Function
-hi def link fish_color_keyword Keyword
-hi def link fish_color_end Delimiter
-hi def link fish_color_operator Operator
-hi def link fish_color_redirection Type
-hi def link fish_color_quote String
-hi def link fish_color_escape Character
-hi def link fish_color_comment Comment
-
-hi def link fishTodo Todo
-
-
-let b:current_syntax = 'fish'
-
-let &cpo = s:cpo_save
-unlet s:cpo_save