summaryrefslogtreecommitdiff
path: root/uvim/runtime/syntax/just.vim
diff options
context:
space:
mode:
Diffstat (limited to 'uvim/runtime/syntax/just.vim')
-rw-r--r--uvim/runtime/syntax/just.vim406
1 files changed, 0 insertions, 406 deletions
diff --git a/uvim/runtime/syntax/just.vim b/uvim/runtime/syntax/just.vim
deleted file mode 100644
index 79c81d0f9c..0000000000
--- a/uvim/runtime/syntax/just.vim
+++ /dev/null
@@ -1,406 +0,0 @@
-" Vim syntax file
-" Language: Justfile
-" Maintainer: Peter Benjamin <@pbnj>
-" Last Change: 2025 Jan 25
-" Credits: The original author, Noah Bogart <https://github.com/NoahTheDuke/vim-just/>
-
-if exists('b:current_syntax')
- finish
-endif
-
-let s:cpo_save = &cpo
-set cpo&vim
-
-let b:current_syntax = 'just'
-
-" syncing fromstart prevents mismatched highlighting when jumping around in a justfile
-" linebreaks= keeps multi-line constructs highlighted correctly while typing
-syn sync fromstart linebreaks=10
-
-" a-zA-Z0-9_-
-syn iskeyword @,48-57,_,-
-
-syn match justComment "#.*$" contains=@Spell,justCommentTodo
-syn match justCommentInBody '#.*$' contained contains=justCommentTodo,justInterpolation,@justOtherCurlyBraces
-syn keyword justCommentTodo TODO FIXME XXX contained
-syn match justShebang "^\s*#!.*$" contains=justInterpolation,@justOtherCurlyBraces
-syn match justName "\h\k*" contained
-syn match justFunction "\h\k*" contained
-
-syn match justPreBodyComment "\v%(\s|\\\n)*%([^\\]\n)@3<!#%([^!].*)?\n%(\t+| +)@=" transparent contained contains=justComment
- \ nextgroup=@justBodies skipnl
-
-syn region justBacktick start=/`/ end=/`/
-syn region justBacktick start=/```/ end=/```/
-syn region justRawString start=/'/ end=/'/
-syn region justRawString start=/'''/ end=/'''/
-syn region justString start=/"/ skip=/\\\\\|\\"/ end=/"/ contains=justStringEscapeSequence,justStringUEscapeSequence,justStringEscapeError
-syn region justString start=/"""/ skip=/\\\\\|\\"/ end=/"""/ contains=justStringEscapeSequence,justStringUEscapeSequence,justStringEscapeError
-
-syn region justShellExpandRawString start=/\v\k@1<!x'/ end=/'/
- \ contains=justShellExpandVarRaw,justDollarEscape
-syn region justShellExpandRawString start=/\v\k@1<!x'''/ end=/'''/
- \ contains=justShellExpandVarRaw,justDollarEscape
-syn region justShellExpandString
- \ start=/\v\k@1<!x"/ skip=/\\\\\|\\"/ end=/"/
- \ contains=justStringEscapeSequence,justStringUEscapeSequence,justStringEscapeError,justShellExpandVar,justDollarEscape,justDollarEscapeSplit
-syn region justShellExpandString
- \ start=/\v\k@1<!x"""/ skip=/\\\\\|\\"/ end=/"""/
- \ contains=justStringEscapeSequence,justStringUEscapeSequence,justStringEscapeError,justShellExpandVar,justDollarEscape,justDollarEscapeSplit
-
-syn cluster justStringLiterals
- \ contains=justRawString,justString,justShellExpandRawString,justShellExpandString
-syn cluster justAllStrings contains=justBacktick,@justStringLiterals
-
-syn match justRegexReplacement
- \ /\v,%(\_s|\\\n)*%('\_[^']*'|'''%(\_.%(''')@!)*\_.?''')%(\_s|\\\n)*%(,%(\_s|\\\n)*)?\)/me=e-1
- \ transparent contained contains=@justExpr,@justStringsWithRegexCapture
-syn match justRegexReplacement
- \ /\v,%(\_s|\\\n)*%("%(\_[^"]|\\")*"|"""%(\_.%(""")@!)*\_.?""")%(\_s|\\\n)*%(,%(\_s|\\\n)*)?\)/me=e-1
- \ transparent contained contains=@justExpr,@justStringsWithRegexCapture
-
-syn region justRawStrRegexRepl start=/\v'/ end=/'/ contained contains=justRegexCapture,justDollarEscape
-syn region justRawStrRegexRepl start=/\v'''/ end=/'''/ contained contains=justRegexCapture,justDollarEscape
-syn region justStringRegexRepl start=/\v"/ skip=/\\\\\|\\"/ end=/"/ contained contains=justStringEscapeSequence,justStringUEscapeSequence,justStringEscapeError,justRegexCapture,justDollarEscape,justDollarEscapeSplit
-syn region justStringRegexRepl start=/\v"""/ skip=/\\\\\|\\"/ end=/"""/ contained contains=justStringEscapeSequence,justStringUEscapeSequence,justStringEscapeError,justRegexCapture,justDollarEscape,justDollarEscapeSplit
-syn match justRegexCapture '\v\$%(\w+|\{\w+\})' contained
-syn cluster justStringsWithRegexCapture contains=justRawStrRegexRepl,justStringRegexRepl
-
-syn cluster justRawStrings contains=justRawString,justRawStrRegexRepl
-
-syn region justStringInsideBody start=/\v\\@1<!'/ end=/'/ contained contains=justInterpolation,@justOtherCurlyBraces,justIndentError
-syn region justStringInsideBody start=/\v\\@1<!"/ skip=/\v\\@1<!\\"/ end=/"/ contained contains=justInterpolation,@justOtherCurlyBraces,justIndentError
-syn region justStringInShebangBody start=/\v\\@1<!'/ end=/'/ contained contains=justInterpolation,@justOtherCurlyBraces,justShebangIndentError
-syn region justStringInShebangBody start=/\v\\@1<!"/ skip=/\v\\@1<!\\"/ end=/"/ contained contains=justInterpolation,@justOtherCurlyBraces,justShebangIndentError
-
-syn match justStringEscapeError '\\.' contained
-syn match justStringEscapeSequence '\v\\[tnr"\\]' contained
-syn match justStringUEscapeSequence '\v\\u\{[0-9A-Fa-f]{1,6}\}' contained
-
-syn match justAssignmentOperator "\V:=" contained
-
-syn region justExprParen start='\V(' end='\V)' transparent contains=@justExpr
-syn region justExprParenInInterp start='\V(' end='\V)' transparent contained contains=@justExprInInterp
-
-syn match justRecipeAt "^@" contained
-syn match justRecipeColon ":" contained
-
-syn region justRecipeAttributes
- \ matchgroup=justRecipeAttr start='\v^%(\\\n)@3<!\[' end='\V]'
- \ contains=justRecipeAttr,justRecipeAttrSep,justRecipeAttrArgs,justRecipeAttrArgError,justRecipeAttrValueShort
-
-syn keyword justRecipeAttr
- \ confirm doc extension group linux macos no-cd no-exit-message no-quiet openbsd positional-arguments private script unix windows working-directory
- \ contained
-syn match justRecipeAttrSep ',' contained
-syn match justRecipeAttrValueShort '\v:%(\_s|\\\n)*' transparent contained
- \ contains=justRecipeAttrValueColon nextgroup=@justStringLiterals,justInvalidAttrValue
-syn match justRecipeAttrValueColon '\V:' contained
-syn region justRecipeAttrArgs matchgroup=justRecipeAttr start='\V(' end='\V)' contained
- \ contains=@justStringLiterals
-syn match justRecipeAttrArgError '\v\(%(\s|\\?\n)*\)' contained
-
-syn match justInvalidAttrValue '\v[^"',]["']@![^,\]]*' contained
-
-syn match justRecipeDeclSimple "\v^\@?\h\k*%(%(\s|\\\n)*:\=@!)@="
- \ transparent contains=justRecipeName
- \ nextgroup=justRecipeNoDeps,justRecipeDeps
-
-syn region justRecipeDeclComplex start="\v^\@?\h\k*%(\s|\\\n)+%([+*$]+%(\s|\\\n)*)*\h" end="\v%(:\=@!)@=|$"
- \ transparent
- \ contains=justRecipeName,justParameter
- \ nextgroup=justRecipeNoDeps,justRecipeDeps
-
-syn match justRecipeName "\v^\@?\h\k*" transparent contained contains=justRecipeAt,justFunction
-
-syn match justParameter "\v%(\s|\\\n)@3<=%(%([*+]%(\s|\\\n)*)?%(\$%(\s|\\\n)*)?|\$%(\s|\\\n)*[*+]%(\s|\\\n)*)\h\k*"
- \ transparent contained
- \ contains=justName,justVariadicPrefix,justParamExport,justVariadicPrefixError
- \ nextgroup=justPreParamValue
-
-syn match justPreParamValue '\v%(\s|\\\n)*\=%(\s|\\\n)*'
- \ contained transparent
- \ contains=justParameterOperator
- \ nextgroup=justParamValue
-
-syn region justParamValue contained transparent
- \ start="\v\S"
- \ skip="\\\n"
- \ end="\v%(\s|^)%([*+$:]|\h)@=|:@=|$"
- \ contains=@justAllStrings,justRecipeParenDefault,@justExprFunc
- \ nextgroup=justParameterError
-syn match justParameterOperator "\V=" contained
-
-syn match justVariadicPrefix "\v%(\s|\\\n)@3<=[*+]%(%(\s|\\\n)*\$?%(\s|\\\n)*\h)@=" contained
-syn match justParamExport '\V$' contained
-syn match justVariadicPrefixError "\v\$%(\s|\\\n)*[*+]" contained
-
-syn match justParameterError "\v%(%([+*$]+%(\s|\\\n)*)*\h\k*)@>%(%(\s|\\\n)*\=)@!" contained
-
-syn region justRecipeParenDefault
- \ matchgroup=justRecipeDepParamsParen start='\v%(\=%(\s|\\\n)*)@<=\(' end='\V)'
- \ contained
- \ contains=@justExpr
-syn match justRecipeSubsequentDeps '\V&&' contained
-
-syn match justRecipeNoDeps '\v:%(\s|\\\n)*\n|:#@=|:%(\s|\\\n)+#@='
- \ transparent contained
- \ contains=justRecipeColon
- \ nextgroup=justPreBodyComment,@justBodies
-syn region justRecipeDeps start="\v:%(\s|\\\n)*%([a-zA-Z_(]|\&\&)" skip='\\\n' end="\v#@=|\\@1<!\n"
- \ transparent contained
- \ contains=justFunction,justRecipeColon,justRecipeSubsequentDeps,justRecipeParamDep
- \ nextgroup=justPreBodyComment,@justBodies
-
-syn region justRecipeParamDep contained transparent
- \ matchgroup=justRecipeDepParamsParen
- \ start="\V("
- \ end="\V)"
- \ contains=justRecipeDepParenName,@justExpr
-
-syn keyword justBoolean true false contained
-
-syn match justAssignment "\v^\h\k*%(\s|\\\n)*:\=" transparent contains=justAssignmentOperator
-
-syn match justSet '\v^set' contained
-syn keyword justSetKeywords
- \ allow-duplicate-recipes allow-duplicate-variables dotenv-load dotenv-filename dotenv-path dotenv-required export fallback ignore-comments positional-arguments quiet script-interpreter shell tempdir unstable windows-shell working-directory
- \ contained
-syn keyword justSetDeprecatedKeywords windows-powershell contained
-syn match justBooleanSet "\v^set%(\s|\\\n)+%(allow-duplicate-%(recip|variabl)es|dotenv-%(loa|require)d|export|fallback|ignore-comments|positional-arguments|quiet|unstable|windows-powershell)%(%(\s|\\\n)*:\=%(\s|\\\n)*%(true|false))?%(\s|\\\n)*%($|#@=)"
- \ contains=justSet,justSetKeywords,justSetDeprecatedKeywords,justAssignmentOperator,justBoolean
- \ transparent
-
-syn match justStringSet '\v^set%(\s|\\\n)+\k+%(\s|\\\n)*:\=%(\s|\\\n)*%(x?['"])@=' transparent contains=justSet,justSetKeywords,justAssignmentOperator
-
-syn match justShellSet
- \ "\v^set%(\s|\\\n)+%(s%(hell|cript-interpreter)|windows-shell)%(\s|\\\n)*:\=%(\s|\\\n)*\[@="
- \ contains=justSet,justSetKeywords,justAssignmentOperator
- \ transparent skipwhite
- \ nextgroup=justShellSetValue
-syn region justShellSetValue
- \ start='\V[' end='\V]'
- \ contained
- \ contains=@justStringLiterals,justShellSetError
-
-syn match justShellSetError '\v\k+['"]@!' contained
-
-syn match justAlias '\v^alias' contained
-syn match justAliasDecl "\v^alias%(\s|\\\n)+\h\k*%(\s|\\\n)*:\=%(\s|\\\n)*"
- \ transparent
- \ contains=justAlias,justFunction,justAssignmentOperator
- \ nextgroup=justAliasRes
-syn match justAliasRes '\v\h\k*%(\s|\\\n)*%(#@=|$)' contained transparent contains=justFunction
-
-syn match justExportedAssignment "\v^export%(\s|\\\n)+\h\k*%(\s|\\\n)*:\=" transparent
- \ contains=justExport,justAssignmentOperator
-
-syn match justExport '\v^export' contained
-
-syn match justUnexportStatement '\v^unexport%(\s|\\\n)+\w+\s*$' contains=justUnexport
-syn match justUnexport '\v^unexport' contained
-
-syn keyword justConditional if else
-syn region justConditionalBraces start="\v\{\{@!" end="\v\}@=" transparent contains=@justExpr
-syn region justConditionalBracesInInterp start="\v\{\{@!" end="\v\}@=" transparent contained contains=@justExprInInterp
-
-syn match justLineLeadingSymbol "\v^%(\\\n)@3<!\s+\zs%(\@-|-\@|\@|-)"
-
-syn match justLineContinuation "\\$"
- \ containedin=ALLBUT,justComment,justCommentInBody,justShebang,@justRawStrings,justRecipeAttrArgError,justShellExpandRawDefaultValue
-
-syn region justBody
- \ start=/\v^\z( +|\t+)%(#!)@!\S/
- \ skip='\v\\\n|\n\s*$'
- \ end="\v\n\z1@!|%(^\S)@2<=\_.@="
- \ contains=justInterpolation,@justOtherCurlyBraces,justLineLeadingSymbol,justCommentInBody,justStringInsideBody,justIndentError
- \ contained
-
-syn region justShebangBody
- \ start="\v^\z( +|\t+)#!"
- \ skip='\v\\\n|\n\s*$'
- \ end="\v\n\z1@!|%(^\S)@2<=\_.@="
- \ contains=justInterpolation,@justOtherCurlyBraces,justCommentInBody,justShebang,justStringInShebangBody,justShebangIndentError
- \ contained
-
-syn cluster justBodies contains=justBody,justShebangBody
-
-syn match justIndentError '\v^%(\\\n)@3<!%( +\zs\t|\t+\zs )\s*\S@='
-syn match justShebangIndentError '\v^ +\zs\t\s*\S@='
-
-syn region justInterpolation
- \ matchgroup=justInterpolationDelim
- \ start="\v\{\{\{@!" end="\v%(%(\\\n\s|\S)\s*)@<=\}\}|$"
- \ matchgroup=justInterpError end='^\S'
- \ contained
- \ contains=@justExprInInterp
-
-syn match justBadCurlyBraces '\v\{{3}\ze[^{]' contained
-syn match justCurlyBraces '\v\{{4}' contained
-syn match justBadCurlyBraces '\v\{{5}\ze[^{]' contained
-syn cluster justOtherCurlyBraces contains=justCurlyBraces,justBadCurlyBraces
-
-syn match justFunctionCall "\v\w+%(\s|\\\n)*\(@=" transparent contains=justBuiltInFunction
-
-" error() is intentionally not included in this list
-syn keyword justBuiltInFunction
- \ absolute_path append arch blake3 blake3_file cache_dir cache_directory canonicalize capitalize choose clean config_dir config_directory config_local_dir config_local_directory data_dir data_directory data_local_dir data_local_directory datetime datetime_utc encode_uri_component env env_var env_var_or_default executable_dir executable_directory extension file_name file_stem home_dir home_directory invocation_dir invocation_dir_native invocation_directory invocation_directory_native is_dependency join just_executable just_pid justfile justfile_dir justfile_directory kebabcase lowercamelcase lowercase module_dir module_directory module_file num_cpus os os_family parent_dir parent_directory path_exists prepend quote replace replace_regex semver_matches sha256 sha256_file shell shoutykebabcase shoutysnakecase snakecase source_dir source_directory source_file style titlecase trim trim_end trim_end_match trim_end_matches trim_start trim_start_match trim_start_matches uppercamelcase uppercase uuid without_extension
- \ contained
-
-syn match justUserDefinedError "\v%(assert|error)%(%(\s|\\\n)*\()@="
-
-syn match justReplaceRegex '\vreplace_regex%(\s|\\\n)*\(@=' transparent contains=justBuiltInFunction nextgroup=justReplaceRegexCall
-syn match justReplaceRegexInInterp '\vreplace_regex%(\s|\\\n)*\(@=' transparent contained contains=justBuiltInFunction nextgroup=justReplaceRegexCallInInterp
-
-syn region justReplaceRegexCall
- \ matchgroup=justReplaceRegexCall
- \ start='\V(' end='\V)'
- \ transparent contained
- \ contains=@justExpr,justRegexReplacement
-syn region justReplaceRegexCallInInterp
- \ matchgroup=justReplaceRegexCall
- \ start='\V(' end='\V)'
- \ transparent contained
- \ contains=@justExprInInterp,justRegexReplacement
-
-syn match justParameterLineContinuation '\v%(\s|\\\n)*' contained nextgroup=justParameterError
-
-syn match justRecipeDepParenName '\v%(\(\n?)@3<=%(\_s|\\\n)*\h\k*'
- \ transparent contained
- \ contains=justFunction
-
-syn cluster justBuiltInFunctions contains=justFunctionCall,justUserDefinedError
-
-syn match justConditionalOperator "\V=="
-syn match justConditionalOperator "\V!="
-syn match justConditionalOperator "\V=~"
-
-syn match justOperator "\V+"
-syn match justOperator "\V/"
-syn match justOperator "\V&&"
-syn match justOperator "\V||"
-
-syn keyword justConstant
- \ HEX HEXLOWER HEXUPPER
- \ CLEAR NORMAL BOLD ITALIC UNDERLINE INVERT HIDE STRIKETHROUGH
- \ BLACK RED GREEN YELLOW BLUE MAGENTA CYAN WHITE
- \ BG_BLACK BG_RED BG_GREEN BG_YELLOW BG_BLUE BG_MAGENTA BG_CYAN BG_WHITE
-
-syn match justShellExpandVarRaw '\v\$%(\{\_[^}]*\}|\w+)' contained contains=justShellExpandRawDefaultDelimiter
-syn match justShellExpandRawDefaultDelimiter '\V:-' contained nextgroup=justShellExpandRawDefaultValue
-syn match justShellExpandRawDefaultValue '\v\_[^}]*' contained
-syn match justShellExpandVar '\v\$%(\w|\\\n\s*)+' contained
-syn region justShellExpandVar start='\v\$%(\\\n\s*)*\{' end='\V}' contains=justShellExpandDefaultDelimiter,justStringEscapeSequence,justStringUEscapeSequence,justStringEscapeError
-syn match justShellExpandDefaultDelimiter '\v:%(\\\n\s*)*-@=' contained nextgroup=justShellExpandDefault
-syn region justShellExpandDefault
- \ matchgroup=justShellExpandDefaultDelimiter start='\V-' end='\v\}@='
- \ contained
- \ contains=justStringEscapeSequence,justStringUEscapeSequence,justStringEscapeError
-
-syn match justDollarEscape '\V$$' contained
-syn match justDollarEscapeSplit '\v\$%(\\\n\s*)*\$' contained
-
-syn cluster justExprBase contains=@justAllStrings,@justBuiltInFunctions,justConditional,justConditionalOperator,justOperator,justConstant
-syn cluster justExpr contains=@justExprBase,justExprParen,justConditionalBraces,justReplaceRegex
-syn cluster justExprInInterp contains=@justExprBase,justName,justExprParenInInterp,justConditionalBracesInInterp,justReplaceRegexInInterp
-
-syn cluster justExprFunc contains=@justBuiltInFunctions,justReplaceRegex,justExprParen
-
-syn match justImport /\v^import%(%(\s|\\\n)*\?|%(\s|\\\n)+%(x?['"])@=)/ transparent
- \ contains=justImportStatement,justOptionalFile
-syn match justImportStatement '^import' contained
-
-syn match justOldInclude "^!include"
-
-syn match justModule /\v^mod%(%(\s|\\\n)*\?)?%(\s|\\\n)+\h\k*\s*%($|%(\s|\\\n)*%(x?['"]|#)@=)/
- \ transparent contains=justModStatement,justName,justOptionalFile
-syn match justModStatement '^mod' contained
-
-syn match justOptionalFile '\V?' contained
-
-" Most linked colorscheme colors are chosen based on semantics of the color name.
-" Some are for parity with other syntax files (for example, Number for recipe body highlighting
-" is to align with the make.vim distributed with Vim).
-" Deprecated `just` syntaxes are highlighted as Underlined.
-"
-" Colors are linked 'def'(ault) so that users who prefer other colors
-" can override them, e.g. in ~/.vim/after/syntax/just.vim
-"
-" Note that vim-just's highlight groups are an implementation detail and may be subject to change.
-
-" The list of highlight links is sorted alphabetically.
-
-hi def link justAlias Statement
-hi def link justAssignmentOperator Operator
-hi def link justBacktick Special
-hi def link justBadCurlyBraces Error
-hi def link justBody Number
-hi def link justBoolean Boolean
-hi def link justBuiltInFunction Function
-hi def link justComment Comment
-hi def link justCommentInBody Comment
-hi def link justCommentTodo Todo
-hi def link justConditional Conditional
-hi def link justConditionalOperator Conditional
-hi def link justConstant Constant
-hi def link justCurlyBraces Special
-hi def link justDollarEscape Special
-hi def link justDollarEscapeSplit Special
-hi def link justExport Statement
-hi def link justFunction Function
-hi def link justImportStatement Include
-hi def link justIndentError Error
-hi def link justInterpError Error
-hi def link justInterpolation Normal
-hi def link justInterpolationDelim Delimiter
-hi def link justInvalidAttrValue Error
-hi def link justLineContinuation Special
-hi def link justLineLeadingSymbol Special
-hi def link justModStatement Keyword
-hi def link justName Identifier
-hi def link justOldInclude Error
-hi def link justOperator Operator
-hi def link justOptionalFile Conditional
-hi def link justParameterError Error
-hi def link justParameterOperator Operator
-hi def link justParamExport Statement
-hi def link justRawString String
-hi def link justRawStrRegexRepl String
-hi def link justRecipeAt Special
-hi def link justRecipeAttr Type
-hi def link justRecipeAttrArgError Error
-hi def link justRecipeAttrSep Operator
-hi def link justRecipeAttrValueColon Operator
-hi def link justRecipeColon Operator
-hi def link justRecipeDepParamsParen Delimiter
-hi def link justRecipeSubsequentDeps Delimiter
-hi def link justRegexCapture Identifier
-hi def link justSet Statement
-hi def link justSetDeprecatedKeywords Underlined
-hi def link justSetKeywords Keyword
-hi def link justShebang SpecialComment
-hi def link justShebangBody Number
-hi def link justShebangIndentError Error
-hi def link justShellExpandDefault Character
-hi def link justShellExpandDefaultDelimiter Operator
-hi def link justShellExpandRawDefaultDelimiter Operator
-hi def link justShellExpandRawDefaultValue Character
-hi def link justShellExpandRawString String
-hi def link justShellExpandString String
-hi def link justShellExpandVar PreProc
-hi def link justShellExpandVarRaw PreProc
-hi def link justShellSetError Error
-hi def link justString String
-hi def link justStringEscapeError Error
-hi def link justStringEscapeSequence Special
-hi def link justStringInShebangBody String
-hi def link justStringInsideBody String
-hi def link justStringRegexRepl String
-hi def link justStringUEscapeSequence Special
-hi def link justUnexport Statement
-hi def link justUserDefinedError Exception
-hi def link justVariadicPrefix Statement
-hi def link justVariadicPrefixError Error
-
-let &cpo = s:cpo_save
-unlet s:cpo_save