diff options
| author | Adam Stankiewicz <sheerun@sher.pl> | 2021-09-09 12:05:33 +0200 | 
|---|---|---|
| committer | Adam Stankiewicz <sheerun@sher.pl> | 2021-09-09 12:05:33 +0200 | 
| commit | 7f98e949d4922ba2109304bd4cabe9578a8062fb (patch) | |
| tree | e1b08f862397c14ab799e8f277c6fc39ec48b3b6 /syntax | |
| parent | ce31cd1d2f4e8eee9fd91325e4599f15cb9566fd (diff) | |
| download | vim-polyglot-7f98e949d4922ba2109304bd4cabe9578a8062fb.tar.gz vim-polyglot-7f98e949d4922ba2109304bd4cabe9578a8062fb.zip | |
Update
Diffstat (limited to 'syntax')
| -rw-r--r-- | syntax/aptconf.vim | 13 | ||||
| -rw-r--r-- | syntax/c.vim | 5 | ||||
| -rw-r--r-- | syntax/cpp.vim | 43 | ||||
| -rw-r--r-- | syntax/debchangelog.vim | 6 | ||||
| -rw-r--r-- | syntax/debsources.vim | 6 | ||||
| -rw-r--r-- | syntax/eelixir.vim | 5 | ||||
| -rw-r--r-- | syntax/git.vim | 65 | ||||
| -rw-r--r-- | syntax/julia.vim | 42 | ||||
| -rw-r--r-- | syntax/juliadoc.vim | 6 | ||||
| -rw-r--r-- | syntax/meson.vim | 3 | ||||
| -rw-r--r-- | syntax/pascal.vim | 2 | ||||
| -rw-r--r-- | syntax/plantuml.vim | 8 | ||||
| -rw-r--r-- | syntax/scala.vim | 12 | ||||
| -rw-r--r-- | syntax/scheme.vim | 13 | ||||
| -rw-r--r-- | syntax/tmux.vim | 6 | ||||
| -rw-r--r-- | syntax/toml.vim | 80 | 
16 files changed, 156 insertions, 159 deletions
| diff --git a/syntax/aptconf.vim b/syntax/aptconf.vim index 309b8faa..70f9d1c9 100644 --- a/syntax/aptconf.vim +++ b/syntax/aptconf.vim @@ -5,7 +5,7 @@ endif  " Vim syntax file  " Language:	APT config file  " Maintainer:	Yann Amar <quidame@poivron.org> -" Last Change:	2015 Dec 22 +" Last Change:	2021 Jul 12  " quit when a syntax file was already loaded  if !exists("main_syntax") @@ -400,10 +400,13 @@ syn cluster	aptconfSynaptic_ contains=aptconfSynaptic,  " }}}  " Unattended Upgrade: {{{  syn keyword	aptconfUnattendedUpgrade contained -	\ AutoFixInterruptedDpkg Automatic-Reboot Automatic-Reboot-Time -	\ Automatic-Reboot-WithUsers InstallOnShutdown Mail MailOnlyOnError -	\ MinimalSteps Origins-Pattern Package-Blacklist -	\ Remove-Unused-Dependencies +	\ Allow-APT-Mark-Fallback Allow-downgrade AutoFixInterruptedDpkg +	\ Automatic-Reboot Automatic-Reboot-Time Automatic-Reboot-WithUsers +	\ Debug InstallOnShutdown Mail MailOnlyOnError MailReport MinimalSteps +	\ OnlyOnACPower Origins-Pattern Package-Blacklist +	\ Remove-New-Unused-Dependencies Remove-Unused-Dependencies +	\ Remove-Unused-Kernel-Packages Skip-Updates-On-Metered-Connections +	\ SyslogEnable SyslogFacility Verbose  syn cluster	aptconfUnattendedUpgrade_ contains=aptconfUnattendedUpgrade  " }}} diff --git a/syntax/c.vim b/syntax/c.vim index a11a95a2..71474600 100644 --- a/syntax/c.vim +++ b/syntax/c.vim @@ -5,7 +5,7 @@ endif  " Vim syntax file  " Language:	C  " Maintainer:	Bram Moolenaar <Bram@vim.org> -" Last Change:	2021 Jan 11 +" Last Change:	2021 May 24  " Quit when a (custom) syntax file was already loaded  if exists("b:current_syntax") @@ -418,6 +418,9 @@ if exists("c_autodoc")    syn cluster cPreProcGroup add=cAutodocReal  endif +" be able to fold #pragma regions +syn region	cPragma		start="^\s*#pragma\s\+region\>" end="^\s*#pragma\s\+endregion\>" transparent keepend extend fold +  " Highlight User Labels  syn cluster	cMultiGroup	contains=cIncluded,cSpecial,cCommentSkip,cCommentString,cComment2String,@cCommentGroup,cCommentStartError,cUserCont,cUserLabel,cBitField,cOctalZero,cCppOutWrapper,cCppInWrapper,@cCppOutInGroup,cFormat,cNumber,cFloat,cOctal,cOctalError,cNumbersCom,cCppParen,cCppBracket,cCppString  if s:ft ==# 'c' || exists("cpp_no_cpp11") diff --git a/syntax/cpp.vim b/syntax/cpp.vim index 95a56d36..db95a78d 100644 --- a/syntax/cpp.vim +++ b/syntax/cpp.vim @@ -64,7 +64,7 @@ if !exists("cpp_no_cpp14")    syn match cppFloat		display contained "\<\d\+\.\d*\(e[-+]\=\d\+\)\=\([FfLl]\|i[fl]\=\|h\|min\|s\|ms\|us\|ns\|_\i*\)\=\>"    syn match cppFloat		display contained "\<\.\d\+\(e[-+]\=\d\+\)\=\([FfLl]\|i[fl]\=\|h\|min\|s\|ms\|us\|ns\|_\i*\)\=\>"    syn match cppFloat		display contained "\<\d\+e[-+]\=\d\+\([FfLl]\|i[fl]\=\|h\|min\|s\|ms\|us\|ns\|_\i*\)\=\>" -  syn region cppString		start=+\(L\|u\|u8\|U\|R\|LR\|u8R\|uR\|UR\)\="+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"\(sv\|s\|_\i*\)\=+ end='$' contains=cSpecial,cFormat,@Spell +  syn region cppString		start=+\(L\|u\|u8\|U\)\="+ skip=+\\\\\|\\"\|\\$+ excludenl end=+"\(sv\|s\|_\i*\)\=+ end='$' contains=cSpecial,cFormat,@Spell  endif  " C++ 17 extensions @@ -73,6 +73,20 @@ if !exists("cpp_no_cpp17")    syn match cppCast		"\<reinterpret_pointer_cast\s*$"    syn match cppFloat		display contained "\<0x\x*\.\x\+p[-+]\=\d\+\([FfLl]\|i[fl]\=\|h\|min\|s\|ms\|us\|ns\|_\i*\)\=\>"    syn match cppFloat		display contained "\<0x\x\+\.\=p[-+]\=\d\+\([FfLl]\|i[fl]\=\|h\|min\|s\|ms\|us\|ns\|_\i*\)\=\>" + +  " TODO: push this up to c.vim if/when supported in C23 +  syn match cppCharacter	"u8'[^\\]'" +  syn match cppCharacter	"u8'[^']*'" contains=cSpecial +  if exists("c_gnu") +    syn match cppSpecialError	  "u8'\\[^'\"?\\abefnrtv]'" +    syn match cppSpecialCharacter "u8'\\['\"?\\abefnrtv]'" +  else +    syn match cppSpecialError	  "u8'\\[^'\"?\\abfnrtv]'" +    syn match cppSpecialCharacter "u8'\\['\"?\\abfnrtv]'" +  endif +  syn match cppSpecialCharacter display "u8'\\\o\{1,3}'" +  syn match cppSpecialCharacter display "u8'\\x\x\+'" +  endif  " C++ 20 extensions @@ -93,23 +107,26 @@ endif  syn match cppMinMax "[<>]?"  " Default highlighting -hi def link cppAccess		cppStatement -hi def link cppCast		cppStatement +hi def link cppAccess			cppStatement +hi def link cppCast			cppStatement  hi def link cppExceptions		Exception -hi def link cppOperator		Operator +hi def link cppOperator			Operator  hi def link cppStatement		Statement -hi def link cppModifier		Type -hi def link cppType		Type -hi def link cppStorageClass	StorageClass +hi def link cppModifier			Type +hi def link cppType			Type +hi def link cppStorageClass		StorageClass  hi def link cppStructure		Structure -hi def link cppBoolean		Boolean -hi def link cppConstant		Constant +hi def link cppBoolean			Boolean +hi def link cppCharacter		cCharacter +hi def link cppSpecialCharacter		cSpecialCharacter +hi def link cppSpecialError		cSpecialError +hi def link cppConstant			Constant  hi def link cppRawStringDelimiter	Delimiter  hi def link cppRawString		String -hi def link cppString		String -hi def link cppNumber		Number -hi def link cppFloat		Number -hi def link cppModule		Include +hi def link cppString			String +hi def link cppNumber			Number +hi def link cppFloat			Number +hi def link cppModule			Include  let b:current_syntax = "cpp" diff --git a/syntax/debchangelog.vim b/syntax/debchangelog.vim index 174d86d7..a6b5c871 100644 --- a/syntax/debchangelog.vim +++ b/syntax/debchangelog.vim @@ -7,7 +7,7 @@ endif  " Maintainer:  Debian Vim Maintainers  " Former Maintainers: Gerfried Fuchs <alfie@ist.org>  "                     Wichert Akkerman <wakkerma@debian.org> -" Last Change: 2020 Nov 28 +" Last Change: 2021 Aug 03  " URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debchangelog.vim  " Standard syntax initialization @@ -28,7 +28,7 @@ let s:supported = [        \ 'jessie', 'stretch', 'buster', 'bullseye', 'bookworm',        \ 'trixie', 'sid', 'rc-buggy',        \ -      \ 'trusty', 'xenial', 'bionic', 'focal', 'groovy', 'hirsute', 'devel' +      \ 'trusty', 'xenial', 'bionic', 'focal', 'hirsute', 'impish', 'devel'        \ ]  let s:unsupported = [        \ 'frozen', 'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato', @@ -38,7 +38,7 @@ let s:unsupported = [        \ 'gutsy', 'hardy', 'intrepid', 'jaunty', 'karmic', 'lucid',        \ 'maverick', 'natty', 'oneiric', 'precise', 'quantal', 'raring', 'saucy',        \ 'utopic', 'vivid', 'wily', 'yakkety', 'zesty', 'artful', 'cosmic', -      \ 'disco', 'eoan' +      \ 'disco', 'eoan', 'groovy'        \ ]  let &cpo=s:cpo diff --git a/syntax/debsources.vim b/syntax/debsources.vim index 6ea0bcb1..f8ed8d99 100644 --- a/syntax/debsources.vim +++ b/syntax/debsources.vim @@ -6,7 +6,7 @@ endif  " Language:     Debian sources.list  " Maintainer:   Debian Vim Maintainers  " Former Maintainer: Matthijs Mohlmann <matthijs@cacholong.nl> -" Last Change: 2020 Nov 28 +" Last Change: 2021 Aug 03  " URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debsources.vim  " Standard syntax initialization @@ -30,7 +30,7 @@ let s:supported = [        \ 'jessie', 'stretch', 'buster', 'bullseye', 'bookworm',        \ 'trixie', 'sid', 'rc-buggy',        \ -      \ 'trusty', 'xenial', 'bionic', 'focal', 'groovy', 'hirsute', 'devel' +      \ 'trusty', 'xenial', 'bionic', 'focal', 'hirsute', 'impish', 'devel'        \ ]  let s:unsupported = [        \ 'buzz', 'rex', 'bo', 'hamm', 'slink', 'potato', @@ -40,7 +40,7 @@ let s:unsupported = [        \ 'gutsy', 'hardy', 'intrepid', 'jaunty', 'karmic', 'lucid',        \ 'maverick', 'natty', 'oneiric', 'precise', 'quantal', 'raring', 'saucy',        \ 'utopic', 'vivid', 'wily', 'yakkety', 'zesty', 'artful', 'cosmic', -      \ 'disco', 'eoan' +      \ 'disco', 'eoan', 'groovy'        \ ]  let &cpo=s:cpo diff --git a/syntax/eelixir.vim b/syntax/eelixir.vim index e30a51c9..8fbe92a7 100644 --- a/syntax/eelixir.vim +++ b/syntax/eelixir.vim @@ -24,13 +24,16 @@ if !exists("b:eelixir_subtype")      let b:eelixir_subtype = matchstr(&filetype,'^eex\.\zs\w\+')    endif    if b:eelixir_subtype == '' +    let b:eelixir_subtype = matchstr(&filetype,'^heex\.\zs\w\+') +  endif +  if b:eelixir_subtype == ''      let b:eelixir_subtype = matchstr(&filetype,'^leex\.\zs\w\+')    endif    if b:eelixir_subtype == ''      let b:eelixir_subtype = matchstr(&filetype,'^sface\.\zs\w\+')    endif    if b:eelixir_subtype == '' -    let b:eelixir_subtype = matchstr(substitute(expand("%:t"),'\c\%(\.eex\|\.sface\|\.leex\|\.eelixir\)\+$','',''),'\.\zs\w\+$') +    let b:eelixir_subtype = matchstr(substitute(expand("%:t"),'\c\%(\.eex\|\.heex\|\.leex\|\.sface\|\.eelixir\)\+$','',''),'\.\zs\w\+$')    endif    if b:eelixir_subtype == 'ex'      let b:eelixir_subtype = 'elixir' diff --git a/syntax/git.vim b/syntax/git.vim index 9d8efc69..16a86a6a 100644 --- a/syntax/git.vim +++ b/syntax/git.vim @@ -16,12 +16,28 @@ syn sync minlines=50  syn include @gitDiff syntax/diff.vim -syn region gitHead start=/\%^/ end=/^$/ contains=@NoSpell -syn region gitHead start=/\%(^commit\%( \x\{40\}\)\{1,\}\%(\s*(.*)\)\=$\)\@=/ end=/^$/ contains=@NoSpell - -" For git reflog and git show ...^{tree}, avoid sync issues -syn match gitHead /^\d\{6\} \%(\w\{4} \)\=\x\{40\}\%( [0-3]\)\=\t.*/ contains=@NoSpell -syn match gitHead /^\x\{40\} \x\{40}\t.*/ contains=@NoSpell +syn region gitHead start=/\%^\%(tag \|tree \|object \)\@=/ end=/^$/ contains=@NoSpell +syn region gitHead start=/\%(^commit\%( \x\{4,\}\)\{1,\}\%(\s*(.*)\)\=$\)\@=/ end=/^$/ contains=@NoSpell +" git log --oneline +" minimize false positives by verifying contents of buffer +if getline(1) =~# '^\x\{7,\} ' && getline('$') =~# '^\x\{7,\} ' +  syn match gitHashAbbrev /^\x\{7,\} \@=/ contains=@NoSpell +elseif getline(1) =~#     '^[|\/\\_ ]\{-\}\*[|\/\\_ ]\{-\} \x\{7,\} ' +  syn match gitHashAbbrev /^[|\/\\_ ]\{-\}\*[|\/\\_ ]\{-\} \zs\x\{7,\} \@=/ contains=@NoSpell +endif +" git log --graph +syn region gitGraph start=/\%(^[|\/\\_ ]*\*[|\/\\_ ]\{-\} commit\%( \x\{4,\}\)\{1,\}\%(\s*(.*)\)\=$\)\@=/ end=/^\%([|\/\\_ ]*$\)\@=/ contains=@NoSpell +" git blame --porcelain +syn region gitHead start=/\%(^\x\{40,\} \d\+ \d\+\%( \d\+\)\=$\)\@=/ end=/^\t\@=/ contains=@NoSpell +" git ls-tree +syn match  gitMode    /^\d\{6\}\%( \%(blob\|tree\) \x\{4,\}\t\)\@=/ nextgroup=gitType skipwhite contains=@NoSpell +" git ls-files --stage +syn match  gitMode    /^\d\{6\}\%( \x\{4,\} [0-3]\t\)\@=/ nextgroup=gitHashStage skipwhite contains=@NoSpell +" .git/HEAD, .git/refs/ +syn match  gitKeyword /\%^ref: \@=/ nextgroup=gitReference skipwhite contains=@NoSpell +syn match  gitHash /\%^\x\{40,}\%$/ skipwhite contains=@NoSpell +" .git/logs/ +syn match  gitReflog /^\x\{40,\} \x\{40,\} .\{-\}\d\+\s-\d\{4\}\t.*/ skipwhite contains=@NoSpell,gitReflogOld  syn region gitDiff start=/^\%(diff --git \)\@=/ end=/^\%(diff --\|$\)\@=/ contains=@gitDiff fold  syn region gitDiff start=/^\%(@@ -\)\@=/ end=/^\%(diff --\%(git\|cc\|combined\) \|$\)\@=/ contains=@gitDiff @@ -33,31 +49,43 @@ syn match gitDiffAdded "{+[^}]*+}" contained containedin=gitDiff  syn match gitDiffRemoved "^ \+-.*" contained containedin=gitDiffMerge  syn match gitDiffRemoved "\[-[^]]*-\]" contained containedin=gitDiff -syn match  gitKeyword /^\%(object\|type\|tag\|commit\|tree\|parent\|encoding\|gpgsig\%(-\w\+\)\=\|summary\|boundary\|filename\|previous\)\>/ contained containedin=gitHead nextgroup=gitHash,gitType skipwhite contains=@NoSpell -syn match  gitKeyword /^\%(tag\>\|ref:\)/ contained containedin=gitHead nextgroup=gitReference skipwhite contains=@NoSpell +syn match  gitKeyword /^commit \@=/ contained containedin=gitHead nextgroup=gitHashAbbrev skipwhite contains=@NoSpell +syn match  gitKeyword /^\%(object\|tree\|parent\|encoding\|gpgsig\%(-\w\+\)\=\|previous\) \@=/ contained containedin=gitHead nextgroup=gitHash skipwhite contains=@NoSpell  syn match  gitKeyword /^Merge:/  contained containedin=gitHead nextgroup=gitHashAbbrev skipwhite contains=@NoSpell -syn match  gitMode    /^\d\{6\}\>/ contained containedin=gitHead nextgroup=gitType,gitHash skipwhite -syn match  gitIdentityKeyword /^\%(author\|committer\|tagger\)\%(-mail\|-time\|-tz\)\=\>/ contained containedin=gitHead nextgroup=gitIdentity skipwhite +syn match  gitIdentityKeyword /^\%(author\|committer\|tagger\) \@=/ contained containedin=gitHead nextgroup=gitIdentity skipwhite  syn match  gitIdentityHeader /^\%(Author\|Commit\|Tagger\):/ contained containedin=gitHead nextgroup=gitIdentity skipwhite  syn match  gitDateHeader /^\%(AuthorDate\|CommitDate\|Date\):/ contained containedin=gitHead nextgroup=gitDate skipwhite +syn match  gitKeyword /^[*|\/\\_ ]\+\zscommit \@=/ contained containedin=gitGraph nextgroup=gitHashAbbrev skipwhite contains=@NoSpell +syn match  gitKeyword /^[|\/\\_ ]\+\zs\%(object\|tree\|parent\|encoding\|gpgsig\%(-\w\+\)\=\|previous\) \@=/ contained containedin=gitGraph nextgroup=gitHash skipwhite contains=@NoSpell +syn match  gitKeyword /^[|\/\\_ ]\+\zsMerge:/  contained containedin=gitGraph nextgroup=gitHashAbbrev skipwhite contains=@NoSpell +syn match  gitIdentityKeyword /^[|\/\\_ ]\+\zs\%(author\|committer\|tagger\) \@=/ contained containedin=gitGraph nextgroup=gitIdentity skipwhite +syn match  gitIdentityHeader /^[|\/\\_ ]\+\zs\%(Author\|Commit\|Tagger\):/ contained containedin=gitGraph nextgroup=gitIdentity skipwhite +syn match  gitDateHeader /^[|\/\\_ ]\+\zs\%(AuthorDate\|CommitDate\|Date\):/ contained containedin=gitGraph nextgroup=gitDate skipwhite + +syn match  gitKeyword /^type \@=/ contained containedin=gitHead nextgroup=gitType skipwhite contains=@NoSpell +syn match  gitKeyword /^\%(summary\|boundary\|filename\|\%(author\|committer\)-\%(time\|tz\)\) \@=/ contained containedin=gitHead skipwhite contains=@NoSpell +syn match  gitKeyword /^tag \@=/ contained containedin=gitHead nextgroup=gitReference skipwhite contains=@NoSpell +syn match  gitIdentityKeyword /^\%(author\|committer\)-mail \@=/ contained containedin=gitHead nextgroup=gitEmail skipwhite  syn match  gitReflogHeader /^Reflog:/ contained containedin=gitHead nextgroup=gitReflogMiddle skipwhite  syn match  gitReflogHeader /^Reflog message:/ contained containedin=gitHead skipwhite  syn match  gitReflogMiddle /\S\+@{\d\+} (/he=e-2 nextgroup=gitIdentity +syn match  gitIdentity /\S.\{-\} <[^>]*>/ contained nextgroup=gitDate skipwhite +syn region gitEmail matchgroup=gitEmailDelimiter start=/</ end=/>/ keepend oneline contained containedin=gitIdentity  syn match  gitDate      /\<\u\l\l \u\l\l \d\=\d \d\d:\d\d:\d\d \d\d\d\d [+-]\d\d\d\d/ contained  syn match  gitDate      /-\=\d\+ [+-]\d\d\d\d\>/               contained  syn match  gitDate      /\<\d\+ \l\+ ago\>/                    contained -syn match  gitType      /\<\%(tag\|commit\|tree\|blob\)\>/     contained nextgroup=gitHash skipwhite -syn match  gitStage     /\<\d\t\@=/                            contained +syn match  gitType      /\<\%(tag\|commit\|tree\|blob\)\>/     contained nextgroup=gitHashAbbrev skipwhite  syn match  gitReference /\S\+\S\@!/                            contained -syn match  gitHash      /\<\x\{40\}\>/                         contained nextgroup=gitIdentity,gitStage,gitHash skipwhite contains=@NoSpell -syn match  gitHash      /^\<\x\{40\}\>/ containedin=gitHead contained nextgroup=gitHash skipwhite contains=@NoSpell -syn match  gitHashAbbrev /\<\x\{4,40\}\>/           contained nextgroup=gitHashAbbrev skipwhite contains=@NoSpell +syn match  gitHash      /\<\x\{40,\}\>/             contained nextgroup=gitIdentity,gitHash skipwhite contains=@NoSpell +syn match  gitReflogOld /^\x\{40,\} \@=/            contained nextgroup=gitReflogNew skipwhite contains=@NoSpell +syn match  gitReflogNew /\<\x\{40,\} \@=/           contained nextgroup=gitIdentity skipwhite contains=@NoSpell +syn match  gitHashAbbrev /\<\x\{4,\}\>/             contained nextgroup=gitHashAbbrev skipwhite contains=@NoSpell  syn match  gitHashAbbrev /\<\x\{4,39\}\.\.\./he=e-3 contained nextgroup=gitHashAbbrev skipwhite contains=@NoSpell +syn match  gitHashStage /\<\x\{4,\}\>/              contained nextgroup=gitStage skipwhite contains=@NoSpell +syn match  gitStage     /\<\d\t\@=/                 contained -syn match  gitIdentity /\S.\{-\} <[^>]*>/ contained nextgroup=gitDate skipwhite -syn region gitEmail matchgroup=gitEmailDelimiter start=/</ end=/>/ keepend oneline contained containedin=gitIdentity  syn match  gitNotesHeader /^Notes:\ze\n    / @@ -72,7 +100,10 @@ hi def link gitEmailDelimiter    Delimiter  hi def link gitEmail             Special  hi def link gitDate              Number  hi def link gitMode              Number +hi def link gitHashStage         gitHash  hi def link gitHashAbbrev        gitHash +hi def link gitReflogOld         gitHash +hi def link gitReflogNew         gitHash  hi def link gitHash              Identifier  hi def link gitReflogMiddle      gitReference  hi def link gitReference         Function diff --git a/syntax/julia.vim b/syntax/julia.vim index 88aa464e..bafae9b4 100644 --- a/syntax/julia.vim +++ b/syntax/julia.vim @@ -13,6 +13,9 @@ elseif exists("b:current_syntax")    finish  endif +let s:cpo_save = &cpo +set cpo&vim +  if version < 704    " this is used to disable regex syntax like `\@3<='    " on older vim versions @@ -40,9 +43,9 @@ let s:julia_highlight_operators = get(g:, "julia_highlight_operators", 1)  " It doesn't include a few characters (spaces and all closing parentheses)  " because those may or may not be valid in the lookbehind on a case-by-case  " basis. -let s:nonid_chars = '\U00-\U08' . '\U0A-\U1F' . -      \             '\U21-\U28' . '\U2A-\U2F' . '\U3A-\U40' . '\U5B-\U5E' . '\U60' . '\U7B\U7C' . -      \             '\U7E-\UA1' . '\UA7\UA8' . '\UAB-\UAD' . '\UAF\UB1\UB4' . '\UB6-\UB8' . '\UBB\UBF' . '\UD7\UF7' +let s:nonid_chars = '\U00-\U08' . '\U0A-\U1F' +      \           . '\U21-\U28' . '\U2A-\U2F' . '\U3A-\U40' . '\U5B-\U5E' . '\U60' . '\U7B\U7C' +      \           . '\U7E-\UA1' . '\UA7\UA8' . '\UAB-\UAD' . '\UAF\UB1\UB4' . '\UB6-\UB8' . '\UBB\UBF' . '\UD7\UF7'  " The complete list  let s:nonidS_chars = '[:space:])\U5D}' . s:nonid_chars @@ -60,10 +63,10 @@ let s:op_chars = '\U25\U26\U2A\U2B\U2D\U2F\U3C-\U3E\U5C\U5E\U7C\U7E\UAC\UB1\UD7\  let s:op_chars_wc = '\U2026\U205D\U214B\U2190-\U2194\U219A-\U219E\U21A0\U21A2-\U21A4\U21A6\U21A9-\U21AC\U21AE\U21B6\U21B7\U21BA-\U21BD\U21C0\U21C1\U21C4\U21C6\U21C7\U21C9\U21CB-\U21D0\U21D2\U21D4\U21DA-\U21DD\U21E0\U21E2\U21F4-\U21FF\U2208-\U220D\U2213\U2214\U2217-\U221D\U2224-\U222A\U2237\U2238\U223A\U223B\U223D\U223E\U2240-\U228B\U228D-\U229C\U229E-\U22A3\U22A9\U22AC\U22AE\U22B0-\U22B7\U22BB-\U22BD\U22C4-\U22C7\U22C9-\U22D3\U22D5-\U22FF\U233F\U25B7\U27C2\U27C8\U27C9\U27D1\U27D2\U27D5-\U27D7\U27F0\U27F1\U27F5-\U27F7\U27F9-\U27FF\U2900-\U2918\U291D-\U2920\U2944-\U2970\U29B7\U29B8\U29BC\U29BE-\U29C1\U29E1\U29E3-\U29E5\U29F4\U29F6\U29F7\U29FA\U29FB\U2A07\U2A08\U2A1D\U2A1F\U2A22-\U2A2E\U2A30-\U2A3D\U2A40-\U2A45\U2A4A-\U2A58\U2A5A-\U2A63\U2A66\U2A67\U2A6A-\U2AD9\U2ADB\U2AF7-\U2AFA\U2B30-\U2B44\U2B47-\U2B4C\UFFE9-\UFFEC'  " Full operators regex -let s:operators = '\%(' . '\.\%([-+*/^÷%|&⊻]\|//\|\\\|>>\|>>>\?\)\?=' . -      \           '\|'  . '[:<>]=\|||\|&&\||>\|<|\|[<>:]:\|<<\|>>>\?\|//\|[-=]>\|\.\.\.\?' . -      \           '\|'  . '\.\?[!' . s:op_chars . s:op_chars_wc . ']' . -      \           '\)' +let s:operators = '\%(' . '\.\%([-+*/^÷%|&⊻]\|//\|\\\|>>\|>>>\?\)\?=' +      \         . '\|'  . '[:<>]=\|||\|&&\||>\|<|\|[<>:]:\|<<\|>>>\?\|//\|[-=]>\|\.\.\.\?' +      \         . '\|'  . '\.\?[!' . s:op_chars . s:op_chars_wc . ']' +      \         . '\)'  " Characters that can be used to start an identifier. Above \UBF we don't @@ -247,11 +250,11 @@ let s:hex_regex = '0x\x\%(_\?\x\)*\%(\>\|im\>\|\ze\X\)'  let s:bin_regex = '0b[01]\%(_\?[01]\)*\%(\>\|im\>\|\ze[^01]\)'  let s:oct_regex = '0o\o\%(_\?\o\)*\%(\>\|im\>\|\ze\O\)' -let s:int_regex = '\%(' . s:hex_regex . -      \           '\|'  . s:bin_regex . -      \           '\|'  . s:oct_regex . -      \           '\|'  . s:dec_regex . -      \           '\)' +let s:int_regex = '\%(' . s:hex_regex +      \         . '\|'  . s:bin_regex +      \         . '\|'  . s:oct_regex +      \         . '\|'  . s:dec_regex +      \         . '\)'  "floating point regexes  "  starting with a dot, optional exponent @@ -267,12 +270,12 @@ let s:hexfloat_regex1 = '0x\.\%\(\x\%(_\?\x\)*\)\?[pP][-+]\?\d\+\%(\>\|im\>\|\ze  "  starting with a digit  let s:hexfloat_regex2 = '0x\x\%(_\?\x\)*\%\(\.\%\(\x\%(_\?\x\)*\)\?\)\?[pP][-+]\?\d\+\%(\>\|im\>\|\ze\X\)' -let s:float_regex = '\%(' . s:float_regex3 . -      \             '\|'  . s:float_regex2 . -      \             '\|'  . s:float_regex1 . -      \             '\|'  . s:hexfloat_regex2 . -      \             '\|'  . s:hexfloat_regex1 . -      \             '\)' +let s:float_regex = '\%(' . s:float_regex3 +      \           . '\|'  . s:float_regex2 +      \           . '\|'  . s:float_regex1 +      \           . '\|'  . s:hexfloat_regex2 +      \           . '\|'  . s:hexfloat_regex1 +      \           . '\)'  exec 'syntax match   juliaNumber	contained "' . s:int_regex . '" contains=juliaComplexUnit'  exec 'syntax match   juliaFloat		contained "' . s:float_regex . '" contains=juliaComplexUnit' @@ -545,3 +548,6 @@ hi def link juliaError			Error  syntax sync fromstart  let b:current_syntax = "julia" + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/syntax/juliadoc.vim b/syntax/juliadoc.vim index c4dbfdbd..41626d03 100644 --- a/syntax/juliadoc.vim +++ b/syntax/juliadoc.vim @@ -9,6 +9,9 @@ if exists('b:current_syntax')    finish  endif +let s:cpo_save = &cpo +set cpo&vim +  syntax sync fromstart  syntax region juliadocCode matchgroup=juliadocCodeDelimiter start="`" end="`" concealends display oneline @@ -67,3 +70,6 @@ highlight default link juliadocAdmonitionsType Todo  highlight default link juliadocAdmonitionsTitle Title  let b:current_syntax = "juliadoc" + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/syntax/meson.vim b/syntax/meson.vim index 1a6cda37..8e151a7e 100644 --- a/syntax/meson.vim +++ b/syntax/meson.vim @@ -7,7 +7,7 @@ endif  " License:	VIM License  " Maintainer:	Nirbheek Chauhan <nirbheek.chauhan@gmail.com>  "		Liam Beguin <liambeguin@gmail.com> -" Last Change:	2016 Dec 7 +" Last Change:	2021 Aug 16  " Credits:	Zvezdan Petkovic <zpetkovic@acm.org>  "		Neil Schemenauer <nas@meson.ca>  "		Dmitry Vasiliev @@ -122,6 +122,7 @@ syn keyword mesonBuiltin    \ summary    \ target_machine    \ test +  \ unset_variable    \ vcs_tag    \ warning    \ range diff --git a/syntax/pascal.vim b/syntax/pascal.vim index 3080352e..d75f3354 100644 --- a/syntax/pascal.vim +++ b/syntax/pascal.vim @@ -7,7 +7,7 @@ endif  " Maintainer:		Doug Kearns <dougkearns@gmail.com>  " Previous Maintainers:	Xavier Crégut <xavier.cregut@enseeiht.fr>  "			Mario Eusebio <bio@dq.fct.unl.pt> -" Last Change:		2021 Apr 23 +" Last Change:		2021 May 20  " Contributors: Tim Chase <tchase@csc.com>,  "		Stas Grabois <stsi@vtrails.com>, diff --git a/syntax/plantuml.vim b/syntax/plantuml.vim index 9b235afb..538ef1e1 100644 --- a/syntax/plantuml.vim +++ b/syntax/plantuml.vim @@ -49,9 +49,11 @@ syntax keyword plantumlKeyword split start stereotype stop title top up while  " Not in 'java - jar plantuml.jar - language' results  syntax keyword plantumlKeyword endlegend sprite then  " gantt -syntax keyword plantumlTypeKeyword project monday tuesday wednesday thursday friday saturday sunday -syntax keyword plantumlKeyword starts ends start end closed day after colored lasts happens in at are to the and - +syntax keyword plantumlTypeKeyword monday tuesday wednesday thursday friday saturday sunday today +syntax keyword plantumlTypeKeyword project Project labels Labels last first column +syntax keyword plantumlKeyword starts ends start end closed after colored lasts happens in at are to the and +syntax keyword plantumlKeyword printscale ganttscale projectscale daily weekly monthly quarterly yearly zoom +syntax keyword plantumlKeyword day days week weeks today then complete displays same row pauses  syntax keyword plantumlCommentTODO XXX TODO FIXME NOTE contained  syntax match plantumlColor /#[0-9A-Fa-f]\{6\}\>/ diff --git a/syntax/scala.vim b/syntax/scala.vim index 6f802f3c..decceba4 100644 --- a/syntax/scala.vim +++ b/syntax/scala.vim @@ -70,11 +70,13 @@ syn match scalaChar /'\\u[A-Fa-f0-9]\{4}'/ contains=scalaUnicodeChar  syn match scalaEscapedChar /\\[\\"'ntbrf]/  syn match scalaUnicodeChar /\\u[A-Fa-f0-9]\{4}/  hi link scalaChar Character -hi link scalaEscapedChar Function +hi link scalaEscapedChar Special  hi link scalaUnicodeChar Special  syn match scalaOperator "||"  syn match scalaOperator "&&" +syn match scalaOperator "|" +syn match scalaOperator "&"  hi link scalaOperator Special  syn match scalaNameDefinition /\<[_A-Za-z0-9$]\+\>/ contained nextgroup=scalaPostNameDefinition,scalaVariableDeclarationList @@ -122,7 +124,7 @@ hi link scalaTypePostExtension Keyword  syn match scalaTypeAnnotation /\%([_a-zA-Z0-9$\s]:\_s*\)\ze[_=(\.A-Za-z0-9$]\+/ skipwhite nextgroup=scalaTypeDeclaration contains=scalaRoundBrackets  syn match scalaTypeAnnotation /)\_s*:\_s*\ze[_=(\.A-Za-z0-9$]\+/ skipwhite nextgroup=scalaTypeDeclaration -hi link scalaTypeAnnotation Normal +hi clear scalaTypeAnnotation  syn match scalaCaseFollowing /\<[_\.A-Za-z0-9$]\+\>/ contained contains=scalaCapitalWord  syn match scalaCaseFollowing /`[^`]\+`/ contained contains=scalaCapitalWord @@ -148,21 +150,21 @@ hi link scalaString String  hi link scalaStringEmbeddedQuote String  syn region scalaIString matchgroup=scalaInterpolationBrackets start=/\<[a-zA-Z][a-zA-Z0-9_]*"/ skip=/\\"/ end=/"/ contains=scalaInterpolation,scalaInterpolationB,scalaEscapedChar,scalaUnicodeChar -syn region scalaTripleIString matchgroup=scalaInterpolationBrackets start=/\<[a-zA-Z][a-zA-Z0-9_]*"""/ end=/"""\%([^"]\|$\)/ contains=scalaInterpolation,scalaInterpolationB,scalaEscapedChar,scalaUnicodeChar +syn region scalaTripleIString matchgroup=scalaInterpolationBrackets start=/\<[a-zA-Z][a-zA-Z0-9_]*"""/ end=/"""\ze\%([^"]\|$\)/ contains=scalaInterpolation,scalaInterpolationB,scalaEscapedChar,scalaUnicodeChar  hi link scalaIString String  hi link scalaTripleIString String  syn match scalaInterpolation /\$[a-zA-Z0-9_$]\+/ contained  exe 'syn region scalaInterpolationB matchgroup=scalaInterpolationBoundary start=/\${/ end=/}/ contained contains=' . s:ContainedGroup()  hi link scalaInterpolation Function -hi link scalaInterpolationB Normal +hi clear scalaInterpolationB  syn region scalaFString matchgroup=scalaInterpolationBrackets start=/f"/ skip=/\\"/ end=/"/ contains=scalaFInterpolation,scalaFInterpolationB,scalaEscapedChar,scalaUnicodeChar  syn match scalaFInterpolation /\$[a-zA-Z0-9_$]\+\(%[-A-Za-z0-9\.]\+\)\?/ contained  exe 'syn region scalaFInterpolationB matchgroup=scalaInterpolationBoundary start=/${/ end=/}\(%[-A-Za-z0-9\.]\+\)\?/ contained contains=' . s:ContainedGroup()  hi link scalaFString String  hi link scalaFInterpolation Function -hi link scalaFInterpolationB Normal +hi clear scalaFInterpolationB  syn region scalaTripleString start=/"""/ end=/"""\%([^"]\|$\)/ contains=scalaEscapedChar,scalaUnicodeChar  syn region scalaTripleFString matchgroup=scalaInterpolationBrackets start=/f"""/ end=/"""\%([^"]\|$\)/ contains=scalaFInterpolation,scalaFInterpolationB,scalaEscapedChar,scalaUnicodeChar diff --git a/syntax/scheme.vim b/syntax/scheme.vim index 8e991aa9..2db92bcd 100644 --- a/syntax/scheme.vim +++ b/syntax/scheme.vim @@ -4,11 +4,12 @@ endif  " Vim syntax file  " Language: Scheme (R7RS) -" Last Change: 2018-01-06 +" Last Change: 2021-01-03  " Author: Evan Hanson <evhan@foldling.org>  " Maintainer: Evan Hanson <evhan@foldling.org>  " Previous Author: Dirk van Deun <dirk@igwe.vub.ac.be>  " Previous Maintainer: Sergey Khorev <sergey.khorev@gmail.com> +" Repository: https://git.foldling.org/vim-scheme.git  " URL: https://foldling.org/vim/syntax/scheme.vim  if exists('b:current_syntax') @@ -18,6 +19,8 @@ endif  let s:cpo = &cpo  set cpo&vim +syn spell notoplevel +  syn match schemeParentheses "[^ '`\t\n()\[\]";]\+"  syn match schemeParentheses "[)\]]" @@ -39,7 +42,7 @@ syn region schemeUnquote matchgroup=schemeParentheses start=/,@(/ end=/)/ contai  syn region schemeQuoteForm matchgroup=schemeData start=/(/ end=/)/ contained contains=ALLBUT,schemeQuasiquote,schemeQuasiquoteForm,schemeUnquote,schemeForm,schemeDatumCommentForm,schemeImport,@schemeImportCluster,@schemeSyntaxCluster  syn region schemeQuasiquoteForm matchgroup=schemeData start=/(/ end=/)/ contained contains=ALLBUT,schemeQuote,schemeForm,schemeDatumCommentForm,schemeImport,@schemeImportCluster,@schemeSyntaxCluster -syn region schemeString start=/\(\\\)\@<!"/ skip=/\\[\\"]/ end=/"/ +syn region schemeString start=/\(\\\)\@<!"/ skip=/\\[\\"]/ end=/"/ contains=@Spell  syn region schemeSymbol start=/\(\\\)\@<!|/ skip=/\\[\\|]/ end=/|/  syn match schemeNumber /\(#[dbeio]\)*[+\-]*\([0-9]\+\|inf.0\|nan.0\)\(\/\|\.\)\?[0-9+\-@\ilns]*\>/ @@ -51,9 +54,9 @@ syn match schemeBoolean /#f\(alse\)\?/  syn match schemeCharacter /#\\.[^ `'\t\n\[\]()]*/  syn match schemeCharacter /#\\x[0-9a-fA-F]\+/ -syn match schemeComment /;.*$/ +syn match schemeComment /;.*$/ contains=@Spell -syn region schemeMultilineComment start=/#|/ end=/|#/ contains=schemeMultilineComment +syn region schemeMultilineComment start=/#|/ end=/|#/ contains=schemeMultilineComment,@Spell  syn region schemeForm matchgroup=schemeParentheses start="(" end=")" contains=ALLBUT,schemeUnquote,schemeDatumCommentForm,@schemeImportCluster  syn region schemeForm matchgroup=schemeParentheses start="\[" end="\]" contains=ALLBUT,schemeUnquote,schemeDatumCommentForm,@schemeImportCluster @@ -67,7 +70,7 @@ else    syn region schemeImport matchgroup=schemeImport start="\(([ \t\n]*\)\@<=\(import\)\>" end=")"me=e-1 contained contains=schemeImportForm,schemeIdentifier,schemeComment,schemeDatumComment  endif -syn match   schemeImportKeyword "\(([ \t\n]*\)\@<=\(except\|only\|prefix\|rename\|srfi\)\>" +syn match   schemeImportKeyword "\(([ \t\n]*\)\@<=\(except\|only\|prefix\|rename\)\>"  syn region  schemeImportForm matchgroup=schemeParentheses start="(" end=")" contained contains=schemeIdentifier,schemeComment,schemeDatumComment,@schemeImportCluster  syn cluster schemeImportCluster contains=schemeImportForm,schemeImportKeyword diff --git a/syntax/tmux.vim b/syntax/tmux.vim index e04ee988..340b00fd 100644 --- a/syntax/tmux.vim +++ b/syntax/tmux.vim @@ -3,7 +3,7 @@ if polyglot#init#is_disabled(expand('<sfile>:p'), 'tmux', 'syntax/tmux.vim')  endif  " Language: tmux(1) configuration file -" Version: to_merge (git-c03b5746) +" Version: 3.2a (git-44ada9cd)  " URL: https://github.com/ericpruitt/tmux.vim/  " Maintainer: Eric Pruitt <eric.pruitt@gmail.com>  " License: 2-Clause BSD (http://opensource.org/licenses/BSD-2-Clause) @@ -84,8 +84,8 @@ syn keyword tmuxOptions  \ main-pane-width mode-keys mode-style monitor-activity monitor-bell  \ monitor-silence mouse other-pane-height other-pane-width  \ pane-active-border-style pane-base-index pane-border-format -\ pane-border-lines pane-border-status pane-border-style prefix prefix2 -\ prompt-history-limit remain-on-exit renumber-windows repeat-time +\ pane-border-lines pane-border-status pane-border-style pane-colours prefix +\ prefix2 prompt-history-limit remain-on-exit renumber-windows repeat-time  \ set-clipboard set-titles set-titles-string silence-action status status-bg  \ status-fg status-format status-interval status-justify status-keys  \ status-left status-left-length status-left-style status-position diff --git a/syntax/toml.vim b/syntax/toml.vim deleted file mode 100644 index 9540d2c5..00000000 --- a/syntax/toml.vim +++ /dev/null @@ -1,80 +0,0 @@ -if polyglot#init#is_disabled(expand('<sfile>:p'), 'toml', 'syntax/toml.vim') -  finish -endif - -" Language:   TOML -" Maintainer: Caleb Spare <cespare@gmail.com> -" URL:        https://github.com/cespare/vim-toml -" LICENSE:    MIT - -if exists('b:current_syntax') -  finish -endif - -syn match tomlEscape /\\[btnfr"/\\]/ display contained -syn match tomlEscape /\\u\x\{4}/ contained -syn match tomlEscape /\\U\x\{8}/ contained -hi def link tomlEscape SpecialChar - -syn match tomlLineEscape /\\$/ contained -hi def link tomlLineEscape SpecialChar - -" Basic strings -syn region tomlString oneline start=/"/ skip=/\\\\\|\\"/ end=/"/ contains=tomlEscape -" Multi-line basic strings -syn region tomlString start=/"""/ end=/"""/ contains=tomlEscape,tomlLineEscape -" Literal strings -syn region tomlString oneline start=/'/ end=/'/ -" Multi-line literal strings -syn region tomlString start=/'''/ end=/'''/ -hi def link tomlString String - -syn match tomlInteger /[+-]\=\<[1-9]\(_\=\d\)*\>/ display -syn match tomlInteger /[+-]\=\<0\>/ display -syn match tomlInteger /[+-]\=\<0x[[:xdigit:]]\(_\=[[:xdigit:]]\)*\>/ display -syn match tomlInteger /[+-]\=\<0o[0-7]\(_\=[0-7]\)*\>/ display -syn match tomlInteger /[+-]\=\<0b[01]\(_\=[01]\)*\>/ display -syn match tomlInteger /[+-]\=\<\(inf\|nan\)\>/ display -hi def link tomlInteger Number - -syn match tomlFloat /[+-]\=\<\d\(_\=\d\)*\.\d\+\>/ display -syn match tomlFloat /[+-]\=\<\d\(_\=\d\)*\(\.\d\(_\=\d\)*\)\=[eE][+-]\=\d\(_\=\d\)*\>/ display -hi def link tomlFloat Float - -syn match tomlBoolean /\<\%(true\|false\)\>/ display -hi def link tomlBoolean Boolean - -" https://tools.ietf.org/html/rfc3339 -syn match tomlDate /\d\{4\}-\d\{2\}-\d\{2\}/ display -syn match tomlDate /\d\{2\}:\d\{2\}:\d\{2\}\%(\.\d\+\)\?/ display -syn match tomlDate /\d\{4\}-\d\{2\}-\d\{2\}[T ]\d\{2\}:\d\{2\}:\d\{2\}\%(\.\d\+\)\?\%(Z\|[+-]\d\{2\}:\d\{2\}\)\?/ display -hi def link tomlDate Constant - -syn match tomlKey /\v(^|[{,])\s*\zs[[:alnum:]._-]+\ze\s*\=/ display -hi def link tomlKey Identifier - -syn region tomlKeyDq oneline start=/\v(^|[{,])\s*\zs"/ end=/"\ze\s*=/ contains=tomlEscape -hi def link tomlKeyDq Identifier - -syn region tomlKeySq oneline start=/\v(^|[{,])\s*\zs'/ end=/'\ze\s*=/ -hi def link tomlKeySq Identifier - -syn region tomlTable oneline start=/^\s*\[[^\[]/ end=/\]/ contains=tomlKey,tomlKeyDq,tomlKeySq -hi def link tomlTable Title - -syn region tomlTableArray oneline start=/^\s*\[\[/ end=/\]\]/ contains=tomlKey,tomlKeyDq,tomlKeySq -hi def link tomlTableArray Title - -syn cluster tomlValue contains=tomlArray,tomlString,tomlInteger,tomlFloat,tomlBoolean,tomlDate,tomlComment -syn region tomlKeyValueArray start=/=\s*\[\zs/ end=/\]/ contains=@tomlValue -syn region tomlArray start=/\[/ end=/\]/ contains=@tomlValue contained - -syn keyword tomlTodo TODO FIXME XXX BUG contained -hi def link tomlTodo Todo - -syn match tomlComment /#.*/ contains=@Spell,tomlTodo -hi def link tomlComment Comment - -syn sync minlines=500 - -let b:current_syntax = 'toml' | 
