From 144279ef30a432ac8416746e3491f3120ae9b4e8 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Fri, 3 Feb 2023 09:18:18 +0100 Subject: vim-patch:be4e01637e71 (#22103) Update runtime files. https://github.com/vim/vim/commit/be4e01637e71c8d5095c33b9861fd70b41476732 Co-authored-by: Bram Moolenaar --- runtime/syntax/2html.vim | 2 +- runtime/syntax/automake.vim | 4 +- runtime/syntax/debchangelog.vim | 4 +- runtime/syntax/debcontrol.vim | 4 +- runtime/syntax/debcopyright.vim | 4 +- runtime/syntax/debsources.vim | 6 +- runtime/syntax/dep3patch.vim | 4 +- runtime/syntax/forth.vim | 30 ++++---- runtime/syntax/gpg.vim | 162 ++++++++++++++++++++------------------- runtime/syntax/lc.vim | 31 ++++++++ runtime/syntax/nginx.vim | 33 +++++++- runtime/syntax/sh.vim | 16 ++-- runtime/syntax/shared/README.txt | 2 +- runtime/syntax/tpp.vim | 4 +- runtime/syntax/xf86conf.vim | 10 ++- 15 files changed, 195 insertions(+), 121 deletions(-) create mode 100644 runtime/syntax/lc.vim (limited to 'runtime/syntax') diff --git a/runtime/syntax/2html.vim b/runtime/syntax/2html.vim index ce6797deaa..9f43e91309 100644 --- a/runtime/syntax/2html.vim +++ b/runtime/syntax/2html.vim @@ -1,6 +1,6 @@ " Vim syntax support file " Maintainer: Ben Fritz -" Last Change: 2022 Dec 26 +" Last Change: 2023 Jan 01 " " Additional contributors: " diff --git a/runtime/syntax/automake.vim b/runtime/syntax/automake.vim index 8a7db7c27b..2f1ad982c6 100644 --- a/runtime/syntax/automake.vim +++ b/runtime/syntax/automake.vim @@ -2,8 +2,8 @@ " Language: automake Makefile.am " Maintainer: Debian Vim Maintainers " Former Maintainer: John Williams -" Last Change: 2018 Dec 27 -" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/automake.vim +" Last Change: 2023 Jan 16 +" URL: https://salsa.debian.org/vim-team/vim-debian/blob/main/syntax/automake.vim " " XXX This file is in need of a new maintainer, Debian VIM Maintainers maintain " it only because patches have been submitted for it by Debian users and the diff --git a/runtime/syntax/debchangelog.vim b/runtime/syntax/debchangelog.vim index 691c3778c1..d3c3d39304 100644 --- a/runtime/syntax/debchangelog.vim +++ b/runtime/syntax/debchangelog.vim @@ -3,8 +3,8 @@ " Maintainer: Debian Vim Maintainers " Former Maintainers: Gerfried Fuchs " Wichert Akkerman -" Last Change: 2022 Oct 29 -" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debchangelog.vim +" Last Change: 2023 Jan 16 +" URL: https://salsa.debian.org/vim-team/vim-debian/blob/main/syntax/debchangelog.vim " Standard syntax initialization if exists('b:current_syntax') diff --git a/runtime/syntax/debcontrol.vim b/runtime/syntax/debcontrol.vim index 4c7fb5dd63..c79b702f92 100644 --- a/runtime/syntax/debcontrol.vim +++ b/runtime/syntax/debcontrol.vim @@ -3,8 +3,8 @@ " Maintainer: Debian Vim Maintainers " Former Maintainers: Gerfried Fuchs " Wichert Akkerman -" Last Change: 2022 May 11 -" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debcontrol.vim +" Last Change: 2023 Jan 16 +" URL: https://salsa.debian.org/vim-team/vim-debian/blob/main/syntax/debcontrol.vim " Standard syntax initialization if exists('b:current_syntax') diff --git a/runtime/syntax/debcopyright.vim b/runtime/syntax/debcopyright.vim index c87b876eea..6f76b5c868 100644 --- a/runtime/syntax/debcopyright.vim +++ b/runtime/syntax/debcopyright.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: Debian copyright file " Maintainer: Debian Vim Maintainers -" Last Change: 2019 Sep 07 -" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debcopyright.vim +" Last Change: 2023 Jan 16 +" URL: https://salsa.debian.org/vim-team/vim-debian/blob/main/syntax/debcopyright.vim " Standard syntax initialization if exists('b:current_syntax') diff --git a/runtime/syntax/debsources.vim b/runtime/syntax/debsources.vim index 9b75797b54..69900c7a51 100644 --- a/runtime/syntax/debsources.vim +++ b/runtime/syntax/debsources.vim @@ -2,8 +2,8 @@ " Language: Debian sources.list " Maintainer: Debian Vim Maintainers " Former Maintainer: Matthijs Mohlmann -" Last Change: 2022 Oct 29 -" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/debsources.vim +" Last Change: 2023 Jan 16 +" URL: https://salsa.debian.org/vim-team/vim-debian/blob/main/syntax/debsources.vim " Standard syntax initialization if exists('b:current_syntax') @@ -14,7 +14,7 @@ endif syn case match " A bunch of useful keywords -syn match debsourcesKeyword /\(deb-src\|deb\|main\|contrib\|non-free\|restricted\|universe\|multiverse\)/ +syn match debsourcesKeyword /\(deb-src\|deb\|main\|contrib\|non-free\|non-free-firmware\|restricted\|universe\|multiverse\)/ " Match comments syn match debsourcesComment /#.*/ contains=@Spell diff --git a/runtime/syntax/dep3patch.vim b/runtime/syntax/dep3patch.vim index cb0eda8931..c00bddfde2 100644 --- a/runtime/syntax/dep3patch.vim +++ b/runtime/syntax/dep3patch.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: Debian DEP3 Patch headers " Maintainer: Gabriel Filion -" Last Change: 2022 Apr 06 -" URL: https://salsa.debian.org/vim-team/vim-debian/blob/master/syntax/dep3patch.vim +" Last Change: 2023 Jan 16 +" URL: https://salsa.debian.org/vim-team/vim-debian/blob/main/syntax/dep3patch.vim " " Specification of the DEP3 patch header format is available at: " https://dep-team.pages.debian.net/deps/dep3/ diff --git a/runtime/syntax/forth.vim b/runtime/syntax/forth.vim index 721bceb367..fe98634079 100644 --- a/runtime/syntax/forth.vim +++ b/runtime/syntax/forth.vim @@ -1,8 +1,8 @@ " Vim syntax file " Language: FORTH " Current Maintainer: Johan Kotlinski -" Previous Maintainer: Christian V. J. Brüssow -" Last Change: 2018-03-29 +" Previous Maintainer: Christian V. J. Br�ssow +" Last Change: 2023-01-12 " Filenames: *.fs,*.ft " URL: https://github.com/jkotlinski/forth.vim @@ -23,7 +23,6 @@ syn case ignore " Some special, non-FORTH keywords syn keyword forthTodo contained TODO FIXME XXX -syn match forthTodo contained 'Copyright\(\s([Cc])\)\=\(\s[0-9]\{2,4}\)\=' " Characters allowed in keywords " I don't know if 128-255 are allowed in ANS-FORTH @@ -98,13 +97,16 @@ syn keyword forthEndOfColonDef ; ;M ;m syn keyword forthEndOfClassDef ;class syn keyword forthEndOfObjectDef ;object syn keyword forthDefine CONSTANT 2CONSTANT FCONSTANT VARIABLE 2VARIABLE -syn keyword forthDefine FVARIABLE CREATE USER VALUE TO DEFER IS DOES> IMMEDIATE +syn keyword forthDefine FVARIABLE CREATE USER VALUE TO DEFER IS IMMEDIATE syn keyword forthDefine COMPILE-ONLY COMPILE RESTRICT INTERPRET POSTPONE EXECUTE syn keyword forthDefine LITERAL CREATE-INTERPRET/COMPILE INTERPRETATION> syn keyword forthDefine INT NAME?INT NAME>COMP syn keyword forthDefine NAME>STRING STATE C; CVARIABLE BUFFER: MARKER syn keyword forthDefine , 2, F, C, COMPILE, +syn match forthDefine "\[DEFINED]" +syn match forthDefine "\[UNDEFINED]" +syn match forthDefine "\[IF]" syn match forthDefine "\[IFDEF]" syn match forthDefine "\[IFUNDEF]" syn match forthDefine "\[THEN]" @@ -180,6 +182,7 @@ syn keyword forthBlocks BLOCK-INCLUDED BLK syn keyword forthMath DECIMAL HEX BASE syn match forthInteger '\<-\=[0-9]\+.\=\>' syn match forthInteger '\<&-\=[0-9]\+.\=\>' +syn match forthInteger '\<#-\=[0-9]\+.\=\>' " recognize hex and binary numbers, the '$' and '%' notation is for gforth syn match forthInteger '\<\$\x*\x\+\>' " *1* --- don't mess syn match forthInteger '\<\x*\d\x*\>' " *2* --- this order! @@ -192,18 +195,18 @@ syn match forthFloat '\<-\=\d*[.]\=\d\+[DdEe][-+]\d\+\>' syn region forthComment start='0 \[if\]' end='\[endif\]' end='\[then\]' contains=forthTodo " Strings -syn region forthString start=+\.*\"+ end=+"+ end=+$+ +syn region forthString start=+\.*\"+ end=+"+ end=+$+ contains=@Spell " XXX -syn region forthString start=+s\"+ end=+"+ end=+$+ -syn region forthString start=+s\\\"+ end=+"+ end=+$+ -syn region forthString start=+c\"+ end=+"+ end=+$+ +syn region forthString start=+s\"+ end=+"+ end=+$+ contains=@Spell +syn region forthString start=+s\\\"+ end=+"+ end=+$+ contains=@Spell +syn region forthString start=+c\"+ end=+"+ end=+$+ contains=@Spell " Comments -syn match forthComment '\\\s.*$' contains=forthTodo,forthSpaceError -syn region forthComment start='\\S\s' end='.*' contains=forthTodo,forthSpaceError -syn match forthComment '\.(\s[^)]*)' contains=forthTodo,forthSpaceError -syn region forthComment start='\(^\|\s\)\zs(\s' skip='\\)' end=')' contains=forthTodo,forthSpaceError -syn region forthComment start='/\*' end='\*/' contains=forthTodo,forthSpaceError +syn match forthComment '\\\%(\s.*\)\=$' contains=@Spell,forthTodo,forthSpaceError +syn region forthComment start='\\S\s' end='.*' contains=@Spell,forthTodo,forthSpaceError +syn match forthComment '\.(\s[^)]*)' contains=@Spell,forthTodo,forthSpaceError +syn region forthComment start='\(^\|\s\)\zs(\s' skip='\\)' end=')' contains=@Spell,forthTodo,forthSpaceError +syn region forthComment start='/\*' end='\*/' contains=@Spell,forthTodo,forthSpaceError " Include files syn match forthInclude '^INCLUDE\s\+\k\+' @@ -260,3 +263,4 @@ let b:current_syntax = "forth" let &cpo = s:cpo_save unlet s:cpo_save " vim:ts=8:sw=4:nocindent:smartindent: + diff --git a/runtime/syntax/gpg.vim b/runtime/syntax/gpg.vim index 46e2099994..57f712b6a3 100644 --- a/runtime/syntax/gpg.vim +++ b/runtime/syntax/gpg.vim @@ -1,7 +1,8 @@ " Vim syntax file -" Language: gpg(1) configuration file -" Previous Maintainer: Nikolai Weibull -" Latest Revision: 2010-10-14 +" Language: gpg(1) configuration file +" Previous Maintainer: Nikolai Weibull +" Latest Revision: 2010-10-14 +" Updated: 2023-01-23 @ObserverOfTime: added a couple of keywords if exists("b:current_syntax") finish @@ -12,91 +13,92 @@ set cpo&vim setlocal iskeyword+=- -syn keyword gpgTodo contained FIXME TODO XXX NOTE +syn keyword gpgTodo contained FIXME TODO XXX NOTE -syn region gpgComment contained display oneline start='#' end='$' - \ contains=gpgTodo,gpgID,@Spell +syn region gpgComment contained display oneline start='#' end='$' + \ contains=gpgTodo,gpgID,@Spell -syn match gpgID contained display '\<\(0x\)\=\x\{8,}\>' +syn match gpgID contained display '\<\(0x\)\=\x\{8,}\>' -syn match gpgBegin display '^' skipwhite nextgroup=gpgComment,gpgOption,gpgCommand +syn match gpgBegin display '^' skipwhite nextgroup=gpgComment,gpgOption,gpgCommand -syn keyword gpgCommand contained skipwhite nextgroup=gpgArg - \ check-sigs decrypt decrypt-files delete-key - \ delete-secret-and-public-key delete-secret-key - \ edit-key encrypt-files export export-all - \ export-ownertrust export-secret-keys - \ export-secret-subkeys fast-import fingerprint - \ gen-prime gen-random import import-ownertrust - \ list-keys list-public-keys list-secret-keys - \ list-sigs lsign-key nrsign-key print-md print-mds - \ recv-keys search-keys send-keys sign-key verify - \ verify-files -syn keyword gpgCommand contained skipwhite nextgroup=gpgArgError - \ check-trustdb clearsign desig-revoke detach-sign - \ encrypt gen-key gen-revoke help list-packets - \ rebuild-keydb-caches sign store symmetric - \ update-trustdb version warranty +syn keyword gpgCommand contained skipwhite nextgroup=gpgArg + \ check-sigs decrypt decrypt-files delete-key + \ delete-secret-and-public-key delete-secret-key + \ edit-key encrypt-files export export-all + \ export-ownertrust export-secret-keys + \ export-secret-subkeys fast-import fingerprint + \ gen-prime gen-random import import-ownertrust + \ list-keys list-public-keys list-secret-keys + \ list-sigs lsign-key nrsign-key print-md print-mds + \ recv-keys search-keys send-keys sign-key verify + \ verify-files +syn keyword gpgCommand contained skipwhite nextgroup=gpgArgError + \ check-trustdb clearsign desig-revoke detach-sign + \ encrypt gen-key gen-revoke help list-packets + \ rebuild-keydb-caches sign store symmetric + \ update-trustdb version warranty -syn keyword gpgOption contained skipwhite nextgroup=gpgArg - \ attribute-fd cert-digest-algo charset cipher-algo - \ command-fd comment completes-needed compress - \ compress-algo debug default-cert-check-level - \ default-key default-preference-list - \ default-recipient digest-algo disable-cipher-algo - \ disable-pubkey-algo encrypt-to exec-path - \ export-options group homedir import-options - \ keyring keyserver keyserver-options load-extension - \ local-user logger-fd marginals-needed max-cert-depth - \ notation-data options output override-session-key - \ passphrase-fd personal-cipher-preferences - \ personal-compress-preferences - \ personal-digest-preferences photo-viewer - \ recipient s2k-cipher-algo s2k-digest-algo s2k-mode - \ secret-keyring set-filename set-policy-url status-fd - \ trusted-key verify-options keyid-format list-options -syn keyword gpgOption contained skipwhite nextgroup=gpgArgError - \ allow-freeform-uid allow-non-selfsigned-uid - \ allow-secret-key-import always-trust - \ armor ask-cert-expire ask-sig-expire - \ auto-check-trustdb batch debug-all default-comment - \ default-recipient-self dry-run emit-version - \ emulate-md-encode-bug enable-special-filenames - \ escape-from-lines expert fast-list-mode - \ fixed-list-mode for-your-eyes-only - \ force-mdc force-v3-sigs force-v4-certs - \ gpg-agent-info ignore-crc-error ignore-mdc-error - \ ignore-time-conflict ignore-valid-from interactive - \ list-only lock-multiple lock-never lock-once - \ merge-only no no-allow-non-selfsigned-uid - \ no-armor no-ask-cert-expire no-ask-sig-expire - \ no-auto-check-trustdb no-batch no-comment - \ no-default-keyring no-default-recipient - \ no-encrypt-to no-expensive-trust-checks - \ no-expert no-for-your-eyes-only no-force-v3-sigs - \ no-force-v4-certs no-greeting no-literal - \ no-mdc-warning no-options no-permission-warning - \ no-pgp2 no-pgp6 no-pgp7 no-random-seed-file - \ no-secmem-warning no-show-notation no-show-photos - \ no-show-policy-url no-sig-cache no-sig-create-check - \ no-sk-comments no-tty no-utf8-strings no-verbose - \ no-version not-dash-escaped openpgp pgp2 - \ pgp6 pgp7 preserve-permissions quiet rfc1991 - \ set-filesize show-keyring show-notation show-photos - \ show-policy-url show-session-key simple-sk-checksum - \ sk-comments skip-verify textmode throw-keyid - \ try-all-secrets use-agent use-embedded-filename - \ utf8-strings verbose with-colons with-fingerprint - \ with-key-data yes +syn keyword gpgOption contained skipwhite nextgroup=gpgArg + \ attribute-fd cert-digest-algo charset cipher-algo + \ command-fd comment completes-needed compress + \ compress-algo debug default-cert-check-level + \ default-key default-preference-list + \ default-recipient digest-algo disable-cipher-algo + \ disable-pubkey-algo encrypt-to exec-path + \ export-options group homedir import-options + \ keyring keyserver keyserver-options load-extension + \ local-user logger-fd marginals-needed max-cert-depth + \ notation-data options output override-session-key + \ passphrase-fd personal-cipher-preferences + \ personal-compress-preferences + \ personal-digest-preferences photo-viewer + \ recipient s2k-cipher-algo s2k-digest-algo s2k-mode + \ secret-keyring set-filename set-policy-url status-fd + \ trusted-key verify-options keyid-format list-options + \ default-new-key-algo weak-digest +syn keyword gpgOption contained skipwhite nextgroup=gpgArgError + \ allow-freeform-uid allow-non-selfsigned-uid + \ allow-secret-key-import always-trust + \ armor ask-cert-expire ask-sig-expire + \ auto-check-trustdb batch debug-all default-comment + \ default-recipient-self dry-run emit-version + \ emulate-md-encode-bug enable-special-filenames + \ escape-from-lines expert fast-list-mode + \ fixed-list-mode for-your-eyes-only + \ force-mdc force-v3-sigs force-v4-certs + \ gpg-agent-info ignore-crc-error ignore-mdc-error + \ ignore-time-conflict ignore-valid-from interactive + \ list-only lock-multiple lock-never lock-once + \ merge-only no no-allow-non-selfsigned-uid + \ no-armor no-ask-cert-expire no-ask-sig-expire + \ no-auto-check-trustdb no-batch no-comment + \ no-default-keyring no-default-recipient + \ no-encrypt-to no-expensive-trust-checks + \ no-expert no-for-your-eyes-only no-force-v3-sigs + \ no-force-v4-certs no-greeting no-literal + \ no-mdc-warning no-options no-permission-warning + \ no-pgp2 no-pgp6 no-pgp7 no-random-seed-file + \ no-secmem-warning no-show-notation no-show-photos + \ no-show-policy-url no-sig-cache no-sig-create-check + \ no-sk-comments no-tty no-utf8-strings no-verbose + \ no-version not-dash-escaped openpgp pgp2 + \ pgp6 pgp7 preserve-permissions quiet rfc1991 + \ set-filesize show-keyring show-notation show-photos + \ show-policy-url show-session-key simple-sk-checksum + \ sk-comments skip-verify textmode throw-keyid + \ try-all-secrets use-agent use-embedded-filename + \ utf8-strings verbose with-colons with-fingerprint + \ with-key-data yes -syn match gpgArg contained display '\S\+\(\s\+\S\+\)*' contains=gpgID +syn match gpgArg contained display '\S\+\(\s\+\S\+\)*' contains=gpgID syn match gpgArgError contained display '\S\+\(\s\+\S\+\)*' -hi def link gpgComment Comment -hi def link gpgTodo Todo -hi def link gpgID Number -hi def link gpgOption Keyword -hi def link gpgCommand Error +hi def link gpgComment Comment +hi def link gpgTodo Todo +hi def link gpgID Number +hi def link gpgOption Keyword +hi def link gpgCommand Error hi def link gpgArgError Error let b:current_syntax = "gpg" diff --git a/runtime/syntax/lc.vim b/runtime/syntax/lc.vim new file mode 100644 index 0000000000..a334529385 --- /dev/null +++ b/runtime/syntax/lc.vim @@ -0,0 +1,31 @@ +" Vim syntax file +" Language: Elsa +" Maintainer: Miles Glapa-Grossklag +" Last Change: 2023-01-29 + +if exists('b:current_syntax') + finish +endif + +" Keywords +syntax keyword elsaKeyword let eval +syntax match elsaKeyword "\v:" +highlight link elsaKeyword Keyword + +" Comments +setlocal commentstring=--%s +syntax match elsaComment "\v--.*$" +highlight link elsaComment Comment + +" Operators +syntax match elsaOperator "\v\=" +syntax match elsaOperator "\v\=[abd*~]\>" +syntax match elsaOperator "\v-\>" +syntax match elsaOperator "\v\\" +highlight link elsaOperator Operator + +" Definitions +syntax match elsaConstant "\v[A-Z]+[A-Z_0-9]*" +highlight link elsaConstant Constant + +let b:current_syntax = 'elsa' diff --git a/runtime/syntax/nginx.vim b/runtime/syntax/nginx.vim index 18dd50cbb2..04760e4a20 100644 --- a/runtime/syntax/nginx.vim +++ b/runtime/syntax/nginx.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: nginx.conf " Maintainer: Chris Aumann -" Last Change: Apr 15, 2017 +" Last Change: Jan 25, 2023 if exists("b:current_syntax") finish @@ -84,6 +84,8 @@ syn keyword ngxListenOptions default_server contained syn keyword ngxListenOptions ssl contained syn keyword ngxListenOptions http2 contained syn keyword ngxListenOptions spdy contained +syn keyword ngxListenOptions http3 contained +syn keyword ngxListenOptions quic contained syn keyword ngxListenOptions proxy_protocol contained syn keyword ngxListenOptions setfib contained syn keyword ngxListenOptions fastopen contained @@ -265,8 +267,16 @@ syn keyword ngxDirective http2_max_concurrent_streams syn keyword ngxDirective http2_max_field_size syn keyword ngxDirective http2_max_header_size syn keyword ngxDirective http2_max_requests +syn keyword ngxDirective http2_push +syn keyword ngxDirective http2_push_preload syn keyword ngxDirective http2_recv_buffer_size syn keyword ngxDirective http2_recv_timeout +syn keyword ngxDirective http3_hq +syn keyword ngxDirective http3_max_concurrent_pushes +syn keyword ngxDirective http3_max_concurrent_streams +syn keyword ngxDirective http3_push +syn keyword ngxDirective http3_push_preload +syn keyword ngxDirective http3_stream_buffer_size syn keyword ngxDirective if_modified_since syn keyword ngxDirective ignore_invalid_headers syn keyword ngxDirective image_filter @@ -444,6 +454,10 @@ syn keyword ngxDirective proxy_temp_path syn keyword ngxDirective proxy_timeout syn keyword ngxDirective proxy_upload_rate syn keyword ngxDirective queue +syn keyword ngxDirective quic_gso +syn keyword ngxDirective quic_host_key +syn keyword ngxDirective quic_mtu +syn keyword ngxDirective quic_retry syn keyword ngxDirective random_index syn keyword ngxDirective read_ahead syn keyword ngxDirective real_ip_header @@ -545,8 +559,10 @@ syn keyword ngxDirective ssl_certificate syn keyword ngxDirective ssl_certificate_key syn keyword ngxDirective ssl_ciphers syn keyword ngxDirective ssl_client_certificate +syn keyword ngxDirective ssl_conf_command syn keyword ngxDirective ssl_crl syn keyword ngxDirective ssl_dhparam +syn keyword ngxDirective ssl_early_data syn keyword ngxDirective ssl_ecdh_curve syn keyword ngxDirective ssl_engine syn keyword ngxDirective ssl_handshake_timeout @@ -556,6 +572,7 @@ syn keyword ngxSSLPreferServerCiphersOn on contained syn keyword ngxSSLPreferServerCiphersOff off contained syn keyword ngxDirective ssl_preread syn keyword ngxDirective ssl_protocols nextgroup=ngxSSLProtocol,ngxSSLProtocolDeprecated skipwhite +syn keyword ngxDirective ssl_reject_handshake syn match ngxSSLProtocol 'TLSv1' contained nextgroup=ngxSSLProtocol,ngxSSLProtocolDeprecated skipwhite syn match ngxSSLProtocol 'TLSv1\.1' contained nextgroup=ngxSSLProtocol,ngxSSLProtocolDeprecated skipwhite syn match ngxSSLProtocol 'TLSv1\.2' contained nextgroup=ngxSSLProtocol,ngxSSLProtocolDeprecated skipwhite @@ -622,6 +639,7 @@ syn keyword ngxDirective uwsgi_buffering syn keyword ngxDirective uwsgi_buffers syn keyword ngxDirective uwsgi_busy_buffers_size syn keyword ngxDirective uwsgi_cache +syn keyword ngxDirective uwsgi_cache_background_update syn keyword ngxDirective uwsgi_cache_bypass syn keyword ngxDirective uwsgi_cache_key syn keyword ngxDirective uwsgi_cache_lock @@ -2225,6 +2243,19 @@ syn keyword ngxDirectiveThirdParty xss_override_status syn keyword ngxDirectiveThirdParty xss_check_status syn keyword ngxDirectiveThirdParty xss_input_types +" CT Module +" Certificate Transparency module for nginx +syn keyword ngxDirectiveThirdParty ssl_ct +syn keyword ngxDirectiveThirdParty ssl_ct_static_scts + +" Dynamic TLS records patch +" TLS Dynamic Record Resizing +syn keyword ngxDirectiveThirdParty ssl_dyn_rec_enable +syn keyword ngxDirectiveThirdParty ssl_dyn_rec_size_hi +syn keyword ngxDirectiveThirdParty ssl_dyn_rec_size_lo +syn keyword ngxDirectiveThirdParty ssl_dyn_rec_threshold +syn keyword ngxDirectiveThirdParty ssl_dyn_rec_timeout + " ZIP Module " ZIP archiver for nginx diff --git a/runtime/syntax/sh.vim b/runtime/syntax/sh.vim index 6722d62c89..13d74dbc17 100644 --- a/runtime/syntax/sh.vim +++ b/runtime/syntax/sh.vim @@ -2,8 +2,8 @@ " Language: shell (sh) Korn shell (ksh) bash (sh) " Maintainer: Charles E. Campbell " Previous Maintainer: Lennart Schultz -" Last Change: Nov 25, 2022 -" Version: 204 +" Last Change: Dec 20, 2022 +" Version: 205 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_SH " For options and settings, please use: :help ft-sh-syntax " This file includes many ideas from Eric Brunet (eric.brunet@ens.fr) and heredoc fixes from Felipe Contreras @@ -190,8 +190,10 @@ syn region shEmbeddedEcho contained matchgroup=shStatement start="\" ski " ===== if exists("b:is_kornshell") || exists("b:is_bash") || exists("b:is_posix") syn match shStatement "\" - syn region shAlias matchgroup=shStatement start="\\s\+\(\h[-._[:alnum:]]\+\)\@=" skip="\\$" end="\>\|`" - syn region shAlias matchgroup=shStatement start="\\s\+\(\h[-._[:alnum:]]\+=\)\@=" skip="\\$" end="=" + syn region shAlias matchgroup=shStatement start="\\s\+\(\h[-._[:alnum:]]*\)\@=" skip="\\$" end="\>\|`" + syn region shAlias matchgroup=shStatement start="\\s\+\(\h[-._[:alnum:]]*=\)\@=" skip="\\$" end="=" +" syn region shAlias matchgroup=shStatement start="\\s\+\(\h[-._[:alnum:]]\+\)\@=" skip="\\$" end="\>\|`" +" syn region shAlias matchgroup=shStatement start="\\s\+\(\h[-._[:alnum:]]\+=\)\@=" skip="\\$" end="=" " Touch: {{{1 " ===== @@ -333,7 +335,7 @@ syn match shEscape contained '\%(^\)\@!\%(\\\\\)*\\.' nextgroup=shComment " systems too, however, so the following syntax will flag $(..) as " an Error under /bin/sh. By consensus of vimdev'ers! if exists("b:is_kornshell") || exists("b:is_bash") || exists("b:is_posix") - syn region shCommandSub matchgroup=shCmdSubRegion start="\$(\ze[^(]" skip='\\\\\|\\.' end=")" contains=@shCommandSubList + syn region shCommandSub matchgroup=shCmdSubRegion start="\$(\ze[^(]\|$" skip='\\\\\|\\.' end=")" contains=@shCommandSubList syn region shArithmetic matchgroup=shArithRegion start="\$((" skip='\\\\\|\\.' end="))" contains=@shArithList syn region shArithmetic matchgroup=shArithRegion start="\$\[" skip='\\\\\|\\.' end="\]" contains=@shArithList syn match shSkipInitWS contained "^\s\+" @@ -483,7 +485,9 @@ endif " Parameter Dereferencing: {{{1 " ======================== -if !exists("g:sh_no_error") && !(exists("b:is_bash") || exists("b:is_kornshell") || exists("b:is_posix")) +" Note: sh04 failure with following line +"if !exists("g:sh_no_error") && !(exists("b:is_bash") || exists("b:is_kornshell") || exists("b:is_posix")) +if !exists("g:sh_no_error") syn match shDerefWordError "[^}$[~]" contained endif syn match shDerefSimple "\$\%(\h\w*\|\d\)" nextgroup=@shNoZSList diff --git a/runtime/syntax/shared/README.txt b/runtime/syntax/shared/README.txt index f519d44faf..fade4b38a1 100644 --- a/runtime/syntax/shared/README.txt +++ b/runtime/syntax/shared/README.txt @@ -1,2 +1,2 @@ This directory "runtime/syntax/shared" contains Vim script files that are -generated or used by more then one syntax file. +generated or used by more than one syntax file. diff --git a/runtime/syntax/tpp.vim b/runtime/syntax/tpp.vim index ca64b5dce1..e2b307b2a2 100644 --- a/runtime/syntax/tpp.vim +++ b/runtime/syntax/tpp.vim @@ -2,8 +2,8 @@ " Language: tpp - Text Presentation Program " Maintainer: Debian Vim Maintainers " Former Maintainer: Gerfried Fuchs -" Last Change: 2018 Dec 27 -" URL: https://salsa.debian.org/vim-team/vim-debian/master/syntax/tpp.vim +" Last Change: 2023 Jan 16 +" URL: https://salsa.debian.org/vim-team/vim-debian/blob/main/syntax/tpp.vim " Filenames: *.tpp " License: BSD " diff --git a/runtime/syntax/xf86conf.vim b/runtime/syntax/xf86conf.vim index 545eda7db0..e8162f3a35 100644 --- a/runtime/syntax/xf86conf.vim +++ b/runtime/syntax/xf86conf.vim @@ -1,13 +1,12 @@ " Vim syntax file -" This is a GENERATED FILE. Please always refer to source file at the URI below. " Language: XF86Config (XFree86 configuration file) " Former Maintainer: David Ne\v{c}as (Yeti) -" Last Change: 2010 Nov 01 -" URL: http://trific.ath.cx/Ftp/vim/syntax/xf86conf.vim +" Last Change By David: 2010 Nov 01 +" Last Change: 2023 Jan 23 " Required Vim Version: 6.0 " " Options: let xf86conf_xfree86_version = 3 or 4 -" to force XFree86 3.x or 4.x XF86Config syntax +" to force XFree86 3.x or 4.x XF86Config syntax " Setup " quit when a syntax file was already loaded @@ -147,6 +146,8 @@ syn keyword xf86confKeyword Hskew HTimings InputDevice IOBase MemBase Mode nextg syn keyword xf86confKeyword Modes Ramdac Screen TextClockFreq UseModes VendorName nextgroup=xf86confComment,xf86confValue syn keyword xf86confKeyword VertRefresh VideoRam ViewPort Virtual VScan VTimings nextgroup=xf86confComment,xf86confValue syn keyword xf86confKeyword Weight White nextgroup=xf86confComment,xf86confValue +syn keyword xf86confMatch MatchDevicePath MatchDriver MatchLayout MatchOS MatchPnPID MatchProduct MatchTag MatchUSBID MatchVendor nextgroup=xf86confComment,xf86confString skipwhite +syn keyword xf86confMatch MatchIsPointer MatchIsKeyboard MatchIsTouchpad MatchIsTouchscreen MatchIsJoystick nextgroup=xf86confComment,xf86confValue skipwhite syn keyword xf86confModeLine ModeLine nextgroup=xf86confComment,xf86confModeLineValue skipwhite skipnl " Constants @@ -185,6 +186,7 @@ hi def link xf86confOctalNumberError xf86confError hi def link xf86confError Error hi def link xf86confOption xf86confKeyword +hi def link xf86confMatch xf86confKeyword hi def link xf86confModeLine xf86confKeyword hi def link xf86confKeyword Type -- cgit From ee26b227e15abc263195d4c746d5dba9f0e6dec4 Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Tue, 21 Feb 2023 23:50:29 +0800 Subject: vim-patch:partial:938ae280c79b (#22356) Update runtime files. https://github.com/vim/vim/commit/938ae280c79b8cdb0fca60336ec4c090ecd8bb5a Partially skip autocmd.txt: needs patch 8.2.5011. Partially skip builtin.txt: needs patch 9.0.0411. Partially skip eval.txt: needs patch 8.2.3783. Cherry-pick :map-meta-keys from patch 9.0.1276. Co-authored-by: Bram Moolenaar --- runtime/syntax/debsources.vim | 10 +- runtime/syntax/dosbatch.vim | 39 ++++---- runtime/syntax/fish.vim | 225 ++++++++++++++++++++++++++++++++++++++++++ runtime/syntax/fstab.vim | 8 +- runtime/syntax/go.vim | 7 +- runtime/syntax/html.vim | 4 +- runtime/syntax/poefilter.vim | 4 +- 7 files changed, 267 insertions(+), 30 deletions(-) create mode 100644 runtime/syntax/fish.vim (limited to 'runtime/syntax') diff --git a/runtime/syntax/debsources.vim b/runtime/syntax/debsources.vim index 69900c7a51..cbb3b36c10 100644 --- a/runtime/syntax/debsources.vim +++ b/runtime/syntax/debsources.vim @@ -2,7 +2,7 @@ " Language: Debian sources.list " Maintainer: Debian Vim Maintainers " Former Maintainer: Matthijs Mohlmann -" Last Change: 2023 Jan 16 +" Last Change: 2023 Feb 06 " URL: https://salsa.debian.org/vim-team/vim-debian/blob/main/syntax/debsources.vim " Standard syntax initialization @@ -14,7 +14,9 @@ endif syn case match " A bunch of useful keywords -syn match debsourcesKeyword /\(deb-src\|deb\|main\|contrib\|non-free\|non-free-firmware\|restricted\|universe\|multiverse\)/ +syn match debsourcesType /\(deb-src\|deb\)/ +syn match debsourcesFreeComponent /\(main\|universe\)/ +syn match debsourcesNonFreeComponent /\(contrib\|non-free-firmware\|non-free\|restricted\|multiverse\)/ " Match comments syn match debsourcesComment /#.*/ contains=@Spell @@ -48,7 +50,9 @@ exe 'syn match debsourcesUnsupportedDistrKeyword +\([[:alnum:]_./]*\)\<\('. join " Associate our matches and regions with pretty colours hi def link debsourcesLine Error -hi def link debsourcesKeyword Statement +hi def link debsourcesType Statement +hi def link debsourcesFreeComponent Statement +hi def link debsourcesNonFreeComponent Statement hi def link debsourcesDistrKeyword Type hi def link debsourcesUnsupportedDistrKeyword WarningMsg hi def link debsourcesComment Comment diff --git a/runtime/syntax/dosbatch.vim b/runtime/syntax/dosbatch.vim index f003a65909..a75771bd2d 100644 --- a/runtime/syntax/dosbatch.vim +++ b/runtime/syntax/dosbatch.vim @@ -1,12 +1,12 @@ " Vim syntax file -" Language: MS-DOS batch file (with NT command extensions) -" Maintainer: Mike Williams +" Language: MS-DOS/Windows batch file (with NT command extensions) +" Maintainer: Mike Williams " Filenames: *.bat -" Last Change: 6th September 2009 -" Web Page: http://www.eandem.co.uk/mrw/vim +" Last Change: 12th February 2023 " " Options Flags: " dosbatch_cmdextversion - 1 = Windows NT, 2 = Windows 2000 [default] +" dosbatch_colons_comment - any value to treat :: as comment line " " quit when a syntax file was already loaded @@ -92,7 +92,11 @@ syn match dosbatchComment "^rem\($\|\s.*$\)"lc=3 contains=dosbatchTodo,dosbatchS syn match dosbatchComment "^@rem\($\|\s.*$\)"lc=4 contains=dosbatchTodo,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell syn match dosbatchComment "\srem\($\|\s.*$\)"lc=4 contains=dosbatchTodo,dosbatchSpecialChar,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell syn match dosbatchComment "\s@rem\($\|\s.*$\)"lc=5 contains=dosbatchTodo,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell -syn match dosbatchComment "\s*:\s*:.*$" contains=dosbatchTodo,dosbatchSpecialChar,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell +if exists("dosbatch_colons_comment") + syn match dosbatchComment "\s*:\s*:.*$" contains=dosbatchTodo,dosbatchSpecialChar,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell +else + syn match dosbatchError "\s*:\s*:.*$" +endif " Comments in ()'s - still to handle spaces before rem syn match dosbatchComment "(rem\([^)]\|\^\@<=)\)*"lc=4 contains=dosbatchTodo,@dosbatchNumber,dosbatchVariable,dosbatchArgument,@Spell @@ -110,34 +114,35 @@ syn keyword dosbatchImplicit vol xcopy " Define the default highlighting. " Only when an item doesn't have highlighting yet -hi def link dosbatchTodo Todo +hi def link dosbatchTodo Todo +hi def link dosbatchError Error hi def link dosbatchStatement Statement hi def link dosbatchCommands dosbatchStatement -hi def link dosbatchLabel Label +hi def link dosbatchLabel Label hi def link dosbatchConditional Conditional -hi def link dosbatchRepeat Repeat +hi def link dosbatchRepeat Repeat -hi def link dosbatchOperator Operator -hi def link dosbatchEchoOperator dosbatchOperator -hi def link dosbatchIfOperator dosbatchOperator +hi def link dosbatchOperator Operator +hi def link dosbatchEchoOperator dosbatchOperator +hi def link dosbatchIfOperator dosbatchOperator hi def link dosbatchArgument Identifier -hi def link dosbatchIdentifier Identifier +hi def link dosbatchIdentifier Identifier hi def link dosbatchVariable dosbatchIdentifier hi def link dosbatchSpecialChar SpecialChar -hi def link dosbatchString String -hi def link dosbatchNumber Number +hi def link dosbatchString String +hi def link dosbatchNumber Number hi def link dosbatchInteger dosbatchNumber hi def link dosbatchHex dosbatchNumber -hi def link dosbatchBinary dosbatchNumber -hi def link dosbatchOctal dosbatchNumber +hi def link dosbatchBinary dosbatchNumber +hi def link dosbatchOctal dosbatchNumber hi def link dosbatchComment Comment hi def link dosbatchImplicit Function -hi def link dosbatchSwitch Special +hi def link dosbatchSwitch Special hi def link dosbatchCmd PreProc diff --git a/runtime/syntax/fish.vim b/runtime/syntax/fish.vim new file mode 100644 index 0000000000..266878bbdc --- /dev/null +++ b/runtime/syntax/fish.vim @@ -0,0 +1,225 @@ +" 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 /\/ 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&]\?>&[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 diff --git a/runtime/syntax/fstab.vim b/runtime/syntax/fstab.vim index 7e18c267f7..91150bc37b 100644 --- a/runtime/syntax/fstab.vim +++ b/runtime/syntax/fstab.vim @@ -2,8 +2,8 @@ " Language: fstab file " Maintainer: Radu Dineiu " URL: https://raw.github.com/rid9/vim-fstab/master/syntax/fstab.vim -" Last Change: 2022 Dec 11 -" Version: 1.6.2 +" Last Change: 2023 Feb 19 +" Version: 1.6.3 " " Credits: " David Necas (Yeti) @@ -389,7 +389,7 @@ syn match fsFreqPassNumber /\d\+\s\+[012]\s*/ contained syn match fsDevice /^\s*\zs.\{-1,}\s/me=e-1 nextgroup=fsMountPoint contains=@fsDeviceCluster,@fsGeneralCluster syn match fsMountPoint /\s\+.\{-}\s/me=e-1 nextgroup=fsType contains=@fsMountPointCluster,@fsGeneralCluster contained syn match fsType /\s\+.\{-}\s/me=e-1 nextgroup=fsOptions contains=@fsTypeCluster,@fsGeneralCluster contained -syn match fsOptions /\s\+.\{-}\s/me=e-1 nextgroup=fsFreqPass contains=@fsOptionsCluster,@fsGeneralCluster contained +syn match fsOptions /\s\+.\{-}\%(\s\|$\)/ nextgroup=fsFreqPass contains=@fsOptionsCluster,@fsGeneralCluster contained syn match fsFreqPass /\s\+.\{-}$/ contains=@fsFreqPassCluster,@fsGeneralCluster contained " Whole line comments @@ -491,4 +491,4 @@ let b:current_syntax = "fstab" let &cpo = s:cpo_save unlet s:cpo_save -" vim: ts=8 ft=vim +" vim: ts=8 noet ft=vim diff --git a/runtime/syntax/go.vim b/runtime/syntax/go.vim index 904c8ad7f2..bf967fdcd9 100644 --- a/runtime/syntax/go.vim +++ b/runtime/syntax/go.vim @@ -5,7 +5,7 @@ " go.vim: Vim syntax file for Go. " Language: Go " Maintainer: Billie Cleek -" Latest Revision: 2022-11-17 +" Latest Revision: 2023-02-19 " License: BSD-style. See LICENSE file in source repository. " Repository: https://github.com/fatih/vim-go @@ -136,8 +136,11 @@ syn keyword goBoolean true false syn keyword goPredefinedIdentifiers nil iota hi def link goBuiltins Identifier +hi def link goPredefinedIdentifiers Constant +" Boolean links to Constant by default by vim: goBoolean and goPredefinedIdentifiers +" will be highlighted the same, but having the separate groups allows users to +" have separate highlighting for them if they desire. hi def link goBoolean Boolean -hi def link goPredefinedIdentifiers goBoolean " Comments; their contents syn keyword goTodo contained TODO FIXME XXX BUG diff --git a/runtime/syntax/html.vim b/runtime/syntax/html.vim index 605db3ae1c..82c829a2e1 100644 --- a/runtime/syntax/html.vim +++ b/runtime/syntax/html.vim @@ -3,7 +3,7 @@ " Maintainer: Doug Kearns " Previous Maintainers: Jorge Maldonado Ventura " Claudio Fleiner -" Last Change: 2022 Nov 18 +" Last Change: 2023 Feb 20 " Please check :help html.vim for some comments and a description of the options @@ -221,7 +221,7 @@ if main_syntax != 'java' || exists("java_javascript") " JAVA SCRIPT syn include @htmlJavaScript syntax/javascript.vim unlet b:current_syntax - syn region javaScript start=+]*>+ keepend end=+]*>+me=s-1 contains=@htmlJavaScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc + syn region javaScript start=+\_[^>]*>+ keepend end=+]*>+me=s-1 contains=@htmlJavaScript,htmlCssStyleComment,htmlScriptTag,@htmlPreproc syn region htmlScriptTag contained start=++ fold contains=htmlTagN,htmlString,htmlArg,htmlValue,htmlTagError,htmlEvent hi def link htmlScriptTag htmlTag diff --git a/runtime/syntax/poefilter.vim b/runtime/syntax/poefilter.vim index f7e92034ee..6561f7a704 100644 --- a/runtime/syntax/poefilter.vim +++ b/runtime/syntax/poefilter.vim @@ -2,7 +2,7 @@ " Language: PoE item filter " Maintainer: ObserverOfTime " Filenames: *.filter -" Last Change: 2022 Oct 07 +" Last Change: 2023 Feb 10 if exists('b:current_syntax') finish @@ -17,7 +17,7 @@ syn match poefilterCommentTag /\[[0-9A-Z\[\]]\+\]/ contained syn match poefilterComment /#.*$/ contains=poefilterTodo,poefilterCommentTag,@Spell " Blocks -syn keyword poefilterBlock Show Hide +syn keyword poefilterBlock Show Hide Minimal " Conditions syn keyword poefilterCondition -- cgit From 66c384d4e806a5e8de53bc57a05f0ddd8c8a9d1c Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Tue, 28 Feb 2023 09:34:27 +0100 Subject: vim-patch:partial:dd60c365cd26 (#22437) vim-patch:partial:dd60c365cd26 Update runtime files https://github.com/vim/vim/commit/dd60c365cd2630794be84d63c4fe287124a30b97 Co-authored-by: Bram Moolenaar Skip: eval.txt, repeat.txt (needs `getscriptinfo()`) --- runtime/syntax/python.vim | 20 ++- runtime/syntax/python2.vim | 345 +++++++++++++++++++++++++++++++++++++++++++++ runtime/syntax/quarto.vim | 17 +++ runtime/syntax/r.vim | 48 +++---- runtime/syntax/rmd.vim | 209 ++++++++++++++++----------- runtime/syntax/sh.vim | 11 +- 6 files changed, 532 insertions(+), 118 deletions(-) create mode 100644 runtime/syntax/python2.vim create mode 100644 runtime/syntax/quarto.vim (limited to 'runtime/syntax') diff --git a/runtime/syntax/python.vim b/runtime/syntax/python.vim index ef4da1b448..831fb92f4c 100644 --- a/runtime/syntax/python.vim +++ b/runtime/syntax/python.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: Python " Maintainer: Zvezdan Petkovic -" Last Change: 2022 Jun 28 +" Last Change: 2023 Feb 26 " Credits: Neil Schemenauer " Dmitry Vasiliev " @@ -35,12 +35,26 @@ " " let python_highlight_all = 1 " +" The use of Python 2 compatible syntax highlighting can be enforced. +" The straddling code (Python 2 and 3 compatible), up to Python 3.5, +" will be also supported. +" +" let python_use_python2_syntax = 1 +" +" This option will exclude all modern Python 3.6 or higher features. +" " quit when a syntax file was already loaded. if exists("b:current_syntax") finish endif +" Use of Python 2 and 3.5 or lower requested. +if exists("python_use_python2_syntax") + runtime! syntax/python2.vim + finish +endif + " We need nocompatible mode in order to continue lines with backslashes. " Original setting will be restored. let s:cpo_save = &cpo @@ -91,8 +105,8 @@ syn keyword pythonInclude from import syn keyword pythonAsync async await " Soft keywords -" These keywords do not mean anything unless used in the right context -" See https://docs.python.org/3/reference/lexical_analysis.html#soft-keywords +" These keywords do not mean anything unless used in the right context. +" See https://docs.python.org/3/reference/lexical_analysis.html#soft-keywords " for more on this. syn match pythonConditional "^\s*\zscase\%(\s\+.*:.*$\)\@=" syn match pythonConditional "^\s*\zsmatch\%(\s\+.*:\s*\%(#.*\)\=$\)\@=" diff --git a/runtime/syntax/python2.vim b/runtime/syntax/python2.vim new file mode 100644 index 0000000000..3b30eabbae --- /dev/null +++ b/runtime/syntax/python2.vim @@ -0,0 +1,345 @@ +" Vim syntax file +" Language: Python 2 +" Maintainer: Zvezdan Petkovic +" Last Change: 2016 Oct 29 +" Credits: Neil Schemenauer +" Dmitry Vasiliev +" +" This version is a major rewrite by Zvezdan Petkovic. +" +" - introduced highlighting of doctests +" - updated keywords, built-ins, and exceptions +" - corrected regular expressions for +" +" * functions +" * decorators +" * strings +" * escapes +" * numbers +" * space error +" +" - corrected synchronization +" - more highlighting is ON by default, except +" - space error highlighting is OFF by default +" +" Optional highlighting can be controlled using these variables. +" +" let python_no_builtin_highlight = 1 +" let python_no_doctest_code_highlight = 1 +" let python_no_doctest_highlight = 1 +" let python_no_exception_highlight = 1 +" let python_no_number_highlight = 1 +" let python_space_error_highlight = 1 +" +" All the options above can be switched on together. +" +" let python_highlight_all = 1 +" +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" +" NOTE: This file is a copy of the last commit of runtime/syntax/python.vim +" that still supported Python 2. There is support for Python 3, up to 3.5, +" and it was kept in the file as is, because it supports the straddling code +" (Python 2 and 3 compatible) better. +"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" + +" quit when a syntax file was already loaded. +if exists("b:current_syntax") + finish +endif + +" We need nocompatible mode in order to continue lines with backslashes. +" Original setting will be restored. +let s:cpo_save = &cpo +set cpo&vim + +if exists("python_no_doctest_highlight") + let python_no_doctest_code_highlight = 1 +endif + +if exists("python_highlight_all") + if exists("python_no_builtin_highlight") + unlet python_no_builtin_highlight + endif + if exists("python_no_doctest_code_highlight") + unlet python_no_doctest_code_highlight + endif + if exists("python_no_doctest_highlight") + unlet python_no_doctest_highlight + endif + if exists("python_no_exception_highlight") + unlet python_no_exception_highlight + endif + if exists("python_no_number_highlight") + unlet python_no_number_highlight + endif + let python_space_error_highlight = 1 +endif + +" Keep Python keywords in alphabetical order inside groups for easy +" comparison with the table in the 'Python Language Reference' +" https://docs.python.org/2/reference/lexical_analysis.html#keywords, +" https://docs.python.org/3/reference/lexical_analysis.html#keywords. +" Groups are in the order presented in NAMING CONVENTIONS in syntax.txt. +" Exceptions come last at the end of each group (class and def below). +" +" Keywords 'with' and 'as' are new in Python 2.6 +" (use 'from __future__ import with_statement' in Python 2.5). +" +" Some compromises had to be made to support both Python 3 and 2. +" We include Python 3 features, but when a definition is duplicated, +" the last definition takes precedence. +" +" - 'False', 'None', and 'True' are keywords in Python 3 but they are +" built-ins in 2 and will be highlighted as built-ins below. +" - 'exec' is a built-in in Python 3 and will be highlighted as +" built-in below. +" - 'nonlocal' is a keyword in Python 3 and will be highlighted. +" - 'print' is a built-in in Python 3 and will be highlighted as +" built-in below (use 'from __future__ import print_function' in 2) +" - async and await were added in Python 3.5 and are soft keywords. +" +syn keyword pythonStatement False None True +syn keyword pythonStatement as assert break continue del exec global +syn keyword pythonStatement lambda nonlocal pass print return with yield +syn keyword pythonStatement class def nextgroup=pythonFunction skipwhite +syn keyword pythonConditional elif else if +syn keyword pythonRepeat for while +syn keyword pythonOperator and in is not or +syn keyword pythonException except finally raise try +syn keyword pythonInclude from import +syn keyword pythonAsync async await + +" Decorators (new in Python 2.4) +" A dot must be allowed because of @MyClass.myfunc decorators. +syn match pythonDecorator "@" display contained +syn match pythonDecoratorName "@\s*\h\%(\w\|\.\)*" display contains=pythonDecorator + +" Python 3.5 introduced the use of the same symbol for matrix multiplication: +" https://www.python.org/dev/peps/pep-0465/. We now have to exclude the +" symbol from highlighting when used in that context. +" Single line multiplication. +syn match pythonMatrixMultiply + \ "\%(\w\|[])]\)\s*@" + \ contains=ALLBUT,pythonDecoratorName,pythonDecorator,pythonFunction,pythonDoctestValue + \ transparent +" Multiplication continued on the next line after backslash. +syn match pythonMatrixMultiply + \ "[^\\]\\\s*\n\%(\s*\.\.\.\s\)\=\s\+@" + \ contains=ALLBUT,pythonDecoratorName,pythonDecorator,pythonFunction,pythonDoctestValue + \ transparent +" Multiplication in a parenthesized expression over multiple lines with @ at +" the start of each continued line; very similar to decorators and complex. +syn match pythonMatrixMultiply + \ "^\s*\%(\%(>>>\|\.\.\.\)\s\+\)\=\zs\%(\h\|\%(\h\|[[(]\).\{-}\%(\w\|[])]\)\)\s*\n\%(\s*\.\.\.\s\)\=\s\+@\%(.\{-}\n\%(\s*\.\.\.\s\)\=\s\+@\)*" + \ contains=ALLBUT,pythonDecoratorName,pythonDecorator,pythonFunction,pythonDoctestValue + \ transparent + +syn match pythonFunction "\h\w*" display contained + +syn match pythonComment "#.*$" contains=pythonTodo,@Spell +syn keyword pythonTodo FIXME NOTE NOTES TODO XXX contained + +" Triple-quoted strings can contain doctests. +syn region pythonString matchgroup=pythonQuotes + \ start=+[uU]\=\z(['"]\)+ end="\z1" skip="\\\\\|\\\z1" + \ contains=pythonEscape,@Spell +syn region pythonString matchgroup=pythonTripleQuotes + \ start=+[uU]\=\z('''\|"""\)+ end="\z1" keepend + \ contains=pythonEscape,pythonSpaceError,pythonDoctest,@Spell +syn region pythonRawString matchgroup=pythonQuotes + \ start=+[uU]\=[rR]\z(['"]\)+ end="\z1" skip="\\\\\|\\\z1" + \ contains=@Spell +syn region pythonRawString matchgroup=pythonTripleQuotes + \ start=+[uU]\=[rR]\z('''\|"""\)+ end="\z1" keepend + \ contains=pythonSpaceError,pythonDoctest,@Spell + +syn match pythonEscape +\\[abfnrtv'"\\]+ contained +syn match pythonEscape "\\\o\{1,3}" contained +syn match pythonEscape "\\x\x\{2}" contained +syn match pythonEscape "\%(\\u\x\{4}\|\\U\x\{8}\)" contained +" Python allows case-insensitive Unicode IDs: http://www.unicode.org/charts/ +syn match pythonEscape "\\N{\a\+\%(\s\a\+\)*}" contained +syn match pythonEscape "\\$" + +" It is very important to understand all details before changing the +" regular expressions below or their order. +" The word boundaries are *not* the floating-point number boundaries +" because of a possible leading or trailing decimal point. +" The expressions below ensure that all valid number literals are +" highlighted, and invalid number literals are not. For example, +" +" - a decimal point in '4.' at the end of a line is highlighted, +" - a second dot in 1.0.0 is not highlighted, +" - 08 is not highlighted, +" - 08e0 or 08j are highlighted, +" +" and so on, as specified in the 'Python Language Reference'. +" https://docs.python.org/2/reference/lexical_analysis.html#numeric-literals +" https://docs.python.org/3/reference/lexical_analysis.html#numeric-literals +if !exists("python_no_number_highlight") + " numbers (including longs and complex) + syn match pythonNumber "\<0[oO]\=\o\+[Ll]\=\>" + syn match pythonNumber "\<0[xX]\x\+[Ll]\=\>" + syn match pythonNumber "\<0[bB][01]\+[Ll]\=\>" + syn match pythonNumber "\<\%([1-9]\d*\|0\)[Ll]\=\>" + syn match pythonNumber "\<\d\+[jJ]\>" + syn match pythonNumber "\<\d\+[eE][+-]\=\d\+[jJ]\=\>" + syn match pythonNumber + \ "\<\d\+\.\%([eE][+-]\=\d\+\)\=[jJ]\=\%(\W\|$\)\@=" + syn match pythonNumber + \ "\%(^\|\W\)\zs\d*\.\d\+\%([eE][+-]\=\d\+\)\=[jJ]\=\>" +endif + +" Group the built-ins in the order in the 'Python Library Reference' for +" easier comparison. +" https://docs.python.org/2/library/constants.html +" https://docs.python.org/3/library/constants.html +" http://docs.python.org/2/library/functions.html +" http://docs.python.org/3/library/functions.html +" http://docs.python.org/2/library/functions.html#non-essential-built-in-functions +" http://docs.python.org/3/library/functions.html#non-essential-built-in-functions +" Python built-in functions are in alphabetical order. +if !exists("python_no_builtin_highlight") + " built-in constants + " 'False', 'True', and 'None' are also reserved words in Python 3 + syn keyword pythonBuiltin False True None + syn keyword pythonBuiltin NotImplemented Ellipsis __debug__ + " built-in functions + syn keyword pythonBuiltin abs all any bin bool bytearray callable chr + syn keyword pythonBuiltin classmethod compile complex delattr dict dir + syn keyword pythonBuiltin divmod enumerate eval filter float format + syn keyword pythonBuiltin frozenset getattr globals hasattr hash + syn keyword pythonBuiltin help hex id input int isinstance + syn keyword pythonBuiltin issubclass iter len list locals map max + syn keyword pythonBuiltin memoryview min next object oct open ord pow + syn keyword pythonBuiltin print property range repr reversed round set + syn keyword pythonBuiltin setattr slice sorted staticmethod str + syn keyword pythonBuiltin sum super tuple type vars zip __import__ + " Python 2 only + syn keyword pythonBuiltin basestring cmp execfile file + syn keyword pythonBuiltin long raw_input reduce reload unichr + syn keyword pythonBuiltin unicode xrange + " Python 3 only + syn keyword pythonBuiltin ascii bytes exec + " non-essential built-in functions; Python 2 only + syn keyword pythonBuiltin apply buffer coerce intern + " avoid highlighting attributes as builtins + syn match pythonAttribute /\.\h\w*/hs=s+1 + \ contains=ALLBUT,pythonBuiltin,pythonFunction,pythonAsync + \ transparent +endif + +" From the 'Python Library Reference' class hierarchy at the bottom. +" http://docs.python.org/2/library/exceptions.html +" http://docs.python.org/3/library/exceptions.html +if !exists("python_no_exception_highlight") + " builtin base exceptions (used mostly as base classes for other exceptions) + syn keyword pythonExceptions BaseException Exception + syn keyword pythonExceptions ArithmeticError BufferError + syn keyword pythonExceptions LookupError + " builtin base exceptions removed in Python 3 + syn keyword pythonExceptions EnvironmentError StandardError + " builtin exceptions (actually raised) + syn keyword pythonExceptions AssertionError AttributeError + syn keyword pythonExceptions EOFError FloatingPointError GeneratorExit + syn keyword pythonExceptions ImportError IndentationError + syn keyword pythonExceptions IndexError KeyError KeyboardInterrupt + syn keyword pythonExceptions MemoryError NameError NotImplementedError + syn keyword pythonExceptions OSError OverflowError ReferenceError + syn keyword pythonExceptions RuntimeError StopIteration SyntaxError + syn keyword pythonExceptions SystemError SystemExit TabError TypeError + syn keyword pythonExceptions UnboundLocalError UnicodeError + syn keyword pythonExceptions UnicodeDecodeError UnicodeEncodeError + syn keyword pythonExceptions UnicodeTranslateError ValueError + syn keyword pythonExceptions ZeroDivisionError + " builtin OS exceptions in Python 3 + syn keyword pythonExceptions BlockingIOError BrokenPipeError + syn keyword pythonExceptions ChildProcessError ConnectionAbortedError + syn keyword pythonExceptions ConnectionError ConnectionRefusedError + syn keyword pythonExceptions ConnectionResetError FileExistsError + syn keyword pythonExceptions FileNotFoundError InterruptedError + syn keyword pythonExceptions IsADirectoryError NotADirectoryError + syn keyword pythonExceptions PermissionError ProcessLookupError + syn keyword pythonExceptions RecursionError StopAsyncIteration + syn keyword pythonExceptions TimeoutError + " builtin exceptions deprecated/removed in Python 3 + syn keyword pythonExceptions IOError VMSError WindowsError + " builtin warnings + syn keyword pythonExceptions BytesWarning DeprecationWarning FutureWarning + syn keyword pythonExceptions ImportWarning PendingDeprecationWarning + syn keyword pythonExceptions RuntimeWarning SyntaxWarning UnicodeWarning + syn keyword pythonExceptions UserWarning Warning + " builtin warnings in Python 3 + syn keyword pythonExceptions ResourceWarning +endif + +if exists("python_space_error_highlight") + " trailing whitespace + syn match pythonSpaceError display excludenl "\s\+$" + " mixed tabs and spaces + syn match pythonSpaceError display " \+\t" + syn match pythonSpaceError display "\t\+ " +endif + +" Do not spell doctests inside strings. +" Notice that the end of a string, either ''', or """, will end the contained +" doctest too. Thus, we do *not* need to have it as an end pattern. +if !exists("python_no_doctest_highlight") + if !exists("python_no_doctest_code_highlight") + syn region pythonDoctest + \ start="^\s*>>>\s" end="^\s*$" + \ contained contains=ALLBUT,pythonDoctest,pythonFunction,@Spell + syn region pythonDoctestValue + \ start=+^\s*\%(>>>\s\|\.\.\.\s\|"""\|'''\)\@!\S\++ end="$" + \ contained + else + syn region pythonDoctest + \ start="^\s*>>>" end="^\s*$" + \ contained contains=@NoSpell + endif +endif + +" Sync at the beginning of class, function, or method definition. +syn sync match pythonSync grouphere NONE "^\%(def\|class\)\s\+\h\w*\s*[(:]" + +" The default highlight links. Can be overridden later. +hi def link pythonStatement Statement +hi def link pythonConditional Conditional +hi def link pythonRepeat Repeat +hi def link pythonOperator Operator +hi def link pythonException Exception +hi def link pythonInclude Include +hi def link pythonAsync Statement +hi def link pythonDecorator Define +hi def link pythonDecoratorName Function +hi def link pythonFunction Function +hi def link pythonComment Comment +hi def link pythonTodo Todo +hi def link pythonString String +hi def link pythonRawString String +hi def link pythonQuotes String +hi def link pythonTripleQuotes pythonQuotes +hi def link pythonEscape Special +if !exists("python_no_number_highlight") + hi def link pythonNumber Number +endif +if !exists("python_no_builtin_highlight") + hi def link pythonBuiltin Function +endif +if !exists("python_no_exception_highlight") + hi def link pythonExceptions Structure +endif +if exists("python_space_error_highlight") + hi def link pythonSpaceError Error +endif +if !exists("python_no_doctest_highlight") + hi def link pythonDoctest Special + hi def link pythonDoctestValue Define +endif + +let b:current_syntax = "python" + +let &cpo = s:cpo_save +unlet s:cpo_save + +" vim:set sw=2 sts=2 ts=8 noet: diff --git a/runtime/syntax/quarto.vim b/runtime/syntax/quarto.vim new file mode 100644 index 0000000000..d5d4ee257d --- /dev/null +++ b/runtime/syntax/quarto.vim @@ -0,0 +1,17 @@ +" Language: Quarto (Markdown with chunks of R, Python and other languages) +" Provisory Maintainer: Jakson Aquino +" Homepage: https://github.com/jalvesaq/R-Vim-runtime +" Last Change: Fri Feb 24, 2023 08:26AM +" +" The developers of tools for Quarto maintain Vim runtime files in their +" Github repository and, if required, I will hand over the maintenance of +" this script for them. + +runtime syntax/rmd.vim + +syn match quartoShortarg /\S\+/ contained +syn keyword quartoShortkey var meta env pagebreak video include contained +syn region quartoShortcode matchgroup=PreProc start='{{< ' end=' >}}' contains=quartoShortkey,quartoShortarg transparent keepend + +hi def link quartoShortkey Include +hi def link quartoShortarg String diff --git a/runtime/syntax/r.vim b/runtime/syntax/r.vim index a8100cfded..9b3754ae23 100644 --- a/runtime/syntax/r.vim +++ b/runtime/syntax/r.vim @@ -5,7 +5,7 @@ " Tom Payne " Contributor: Johannes Ranke " Homepage: https://github.com/jalvesaq/R-Vim-runtime -" Last Change: Sun Mar 28, 2021 01:47PM +" Last Change: Thu Nov 17, 2022 10:13PM " Filenames: *.R *.r *.Rhistory *.Rt " " NOTE: The highlighting of R functions might be defined in @@ -65,41 +65,35 @@ if g:r_syntax_hl_roxygen " roxygen line containing only a roxygen comment marker, optionally followed " by whitespace is called an empty roxygen line. + syn match rOCommentKey "^\s*#\{1,2}'" contained + syn region rOExamples start="^\s*#\{1,2}' @examples.*"rs=e+1,hs=e+1 end="^\(#\{1,2}' @.*\)\@=" end="^\(#\{1,2}'\)\@!" contained contains=rOTag fold + + " R6 classes may contain roxygen lines independent of roxygen blocks + syn region rOR6Class start=/R6Class(/ end=/)/ transparent contains=ALLBUT,rError,rBraceError,rCurlyError fold + syn match rOR6Block "#\{1,2}'.*" contains=rOTag,rOExamples,@Spell containedin=rOR6Class contained + syn match rOR6Block "^\s*#\{1,2}'.*" contains=rOTag,rOExamples,@Spell containedin=rOR6Class contained + " First we match all roxygen blocks as containing only a title. In case an " empty roxygen line ending the title or a tag is found, this will be " overridden later by the definitions of rOBlock. - syn match rOTitleBlock "\%^\(\s*#\{1,2}' .*\n\)\{1,}" contains=rOCommentKey,rOTitleTag - syn match rOTitleBlock "^\s*\n\(\s*#\{1,2}' .*\n\)\{1,}" contains=rOCommentKey,rOTitleTag + syn match rOTitleBlock "\(\%^\|^\s*\n\)\@<=\(\s*#\{1,2}' .*\n\)\{1,}" contains=rOCommentKey,rOTitleTag " A title as part of a block is always at the beginning of the block, i.e. " either at the start of a file or after a completely empty line. - syn match rOTitle "\%^\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*$" contained contains=rOCommentKey,rOTitleTag - syn match rOTitle "^\s*\n\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*$" contained contains=rOCommentKey,rOTitleTag + syn match rOTitle "\(\%^\|^\s*\n\)\@<=\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*$" contained contains=rOCommentKey,rOTitleTag syn match rOTitleTag contained "@title" " When a roxygen block has a title and additional content, the title " consists of one or more roxygen lines (as little as possible are matched), " followed either by an empty roxygen line - syn region rOBlock start="\%^\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*$" end="^\s*\(#\{1,2}'\)\@!" contains=rOTitle,rOTag,rOExamples,@Spell keepend fold - syn region rOBlock start="^\s*\n\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*$" end="^\s*\(#\{1,2}'\)\@!" contains=rOTitle,rOTag,rOExamples,@Spell keepend fold + syn region rOBlock start="\(\%^\|^\s*\n\)\@<=\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*$" end="^\s*\(#\{1,2}'\)\@!" contains=rOTitle,rOTag,rOExamples,@Spell keepend fold " or by a roxygen tag (we match everything starting with @ but not @@ which is used as escape sequence for a literal @). - syn region rOBlock start="\%^\(\s*#\{1,2}' .*\n\)\{-}\s*#\{1,2}' @\(@\)\@!" end="^\s*\(#\{1,2}'\)\@!" contains=rOTitle,rOTag,rOExamples,@Spell keepend fold - syn region rOBlock start="^\s*\n\(\s*#\{1,2}' .*\n\)\{-}\s*#\{1,2}' @\(@\)\@!" end="^\s*\(#\{1,2}'\)\@!" contains=rOTitle,rOTag,rOExamples,@Spell keepend fold + syn region rOBlock start="\(\%^\|^\s*\n\)\@<=\(\s*#\{1,2}' .*\n\)\{-}\s*#\{1,2}' @\(@\)\@!" end="^\s*\(#\{1,2}'\)\@!" contains=rOTitle,rOTag,rOExamples,@Spell keepend fold " If a block contains an @rdname, @describeIn tag, it may have paragraph breaks, but does not have a title - syn region rOBlockNoTitle start="\%^\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*\n\(\s*#\{1,2}'.*\n\)\{-}\s*#\{1,2}' @rdname" end="^\s*\(#\{1,2}'\)\@!" contains=rOTag,rOExamples,@Spell keepend fold - syn region rOBlockNoTitle start="^\s*\n\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*\n\(\s*#\{1,2}'.*\n\)\{-}\s*#\{1,2}' @rdname" end="^\s*\(#\{1,2}'\)\@!" contains=rOTag,rOExamples,@Spell keepend fold - syn region rOBlockNoTitle start="\%^\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*\n\(\s*#\{1,2}'.*\n\)\{-}\s*#\{1,2}' @describeIn" end="^\s*\(#\{1,2}'\)\@!" contains=rOTag,rOExamples,@Spell keepend fold - syn region rOBlockNoTitle start="^\s*\n\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*\n\(\s*#\{1,2}'.*\n\)\{-}\s*#\{1,2}' @describeIn" end="^\s*\(#\{1,2}'\)\@!" contains=rOTag,rOExamples,@Spell keepend fold - - syn match rOCommentKey "^\s*#\{1,2}'" contained - syn region rOExamples start="^\s*#\{1,2}' @examples.*"rs=e+1,hs=e+1 end="^\(#\{1,2}' @.*\)\@=" end="^\(#\{1,2}'\)\@!" contained contains=rOTag fold - - " R6 classes may contain roxygen lines independent of roxygen blocks - syn region rOR6Class start=/R6Class(/ end=/)/ transparent contains=ALLBUT,rError,rBraceError,rCurlyError fold - syn match rOR6Block "#\{1,2}'.*" contains=rOTag,rOExamples,@Spell containedin=rOR6Class contained - syn match rOR6Block "^\s*#\{1,2}'.*" contains=rOTag,rOExamples,@Spell containedin=rOR6Class contained + syn region rOBlockNoTitle start="\(\%^\|^\s*\n\)\@<=\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*\n\(\s*#\{1,2}'.*\n\)\{-}\s*#\{1,2}' @rdname" end="^\s*\(#\{1,2}'\)\@!" contains=rOTag,rOExamples,@Spell keepend fold + syn region rOBlockNoTitle start="\(\%^\|^\s*\n\)\@<=\(\s*#\{1,2}' .*\n\)\{-1,}\s*#\{1,2}'\s*\n\(\s*#\{1,2}'.*\n\)\{-}\s*#\{1,2}' @describeIn" end="^\s*\(#\{1,2}'\)\@!" contains=rOTag,rOExamples,@Spell keepend fold " rOTag list originally generated from the lists that were available in " https://github.com/klutometis/roxygen/R/rd.R and @@ -245,14 +239,15 @@ syn match rOperator "&" syn match rOperator '-' syn match rOperator '\*' syn match rOperator '+' -if &filetype != "rmd" && &filetype != "rrst" - syn match rOperator "[|!<>^~/:]" -else +if &filetype == "quarto" || &filetype == "rmd" || &filetype == "rrst" syn match rOperator "[|!<>^~`/:]" +else + syn match rOperator "[|!<>^~/:]" endif syn match rOperator "%\{2}\|%\S\{-}%" syn match rOperator '\([!><]\)\@<==' syn match rOperator '==' +syn match rOperator '|>' syn match rOpError '\*\{3}' syn match rOpError '//' syn match rOpError '&&&' @@ -318,10 +313,13 @@ if &filetype == "rhelp" endif " Type +syn match rType "\\" syn keyword rType array category character complex double function integer list logical matrix numeric vector data.frame " Name of object with spaces -if &filetype != "rmd" && &filetype != "rrst" +if &filetype == "rmd" || &filetype == "rrst" || &filetype == "quarto" + syn region rNameWSpace start="`" end="`" contains=rSpaceFun containedin=rmdrChunk +else syn region rNameWSpace start="`" end="`" contains=rSpaceFun endif diff --git a/runtime/syntax/rmd.vim b/runtime/syntax/rmd.vim index cccd4110f5..f849af97d2 100644 --- a/runtime/syntax/rmd.vim +++ b/runtime/syntax/rmd.vim @@ -1,7 +1,7 @@ -" markdown Text with R statements -" Language: markdown with R code chunks +" Language: Markdown with chunks of R, Python and other languages +" Maintainer: Jakson Aquino " Homepage: https://github.com/jalvesaq/R-Vim-runtime -" Last Change: Wed Apr 21, 2021 09:55AM +" Last Change: Fri Feb 24, 2023 08:28AM " " For highlighting pandoc extensions to markdown like citations and TeX and " many other advanced features like folding of markdown sections, it is @@ -13,63 +13,120 @@ if exists("b:current_syntax") finish endif +let s:cpo_save = &cpo +set cpo&vim + " Highlight the header of the chunks as R code let g:rmd_syn_hl_chunk = get(g:, 'rmd_syn_hl_chunk', 0) " Pandoc-syntax has more features, but it is slower. " https://github.com/vim-pandoc/vim-pandoc-syntax -let g:pandoc#syntax#codeblocks#embeds#langs = get(g:, 'pandoc#syntax#codeblocks#embeds#langs', ['r']) + +" Don't waste time loading syntax that will be discarded: +let s:save_pandoc_lngs = get(g:, 'pandoc#syntax#codeblocks#embeds#langs', []) +let g:pandoc#syntax#codeblocks#embeds#langs = [] + +" Step_1: Source pandoc.vim if it is installed: runtime syntax/pandoc.vim if exists("b:current_syntax") + if hlexists('pandocDelimitedCodeBlock') + syn clear pandocDelimitedCodeBlock + endif + + if len(s:save_pandoc_lngs) > 0 && !exists('g:rmd_fenced_languages') + let g:rmd_fenced_languages = deepcopy(s:save_pandoc_lngs) + endif + " Recognize inline R code - syn region rmdrInline matchgroup=rmdInlineDelim start="`r " end="`" contains=@R containedin=pandocLaTeXRegion,yamlFlowString keepend - hi def link rmdInlineDelim Delimiter - - " Fix recognition of language chunks (code adapted from pandoc, 2021-03-28) - " Knitr requires braces in the block's header - for s:lng in g:pandoc#syntax#codeblocks#embeds#langs - let s:nm = matchstr(s:lng, '^[^=]*') - exe 'syn clear pandocDelimitedCodeBlock_'.s:nm - exe 'syn clear pandocDelimitedCodeBlockinBlockQuote_'.s:nm - if g:rmd_syn_hl_chunk - exe 'syn region rmd'.s:nm.'ChunkDelim matchgroup=rmdCodeDelim start="^\s*```\s*{\s*'.s:nm.'\>" matchgroup=rmdCodeDelim end="}$" keepend containedin=rmd'.s:nm.'Chunk contains=@R' - exe 'syn region rmd'.s:nm.'Chunk start="^\s*```\s*{\s*'.s:nm.'\>.*$" matchgroup=rmdCodeDelim end="^\s*```\ze\s*$" keepend contains=rmd'.s:nm.'ChunkDelim,@'.toupper(s:nm) + syn region rmdrInline matchgroup=rmdInlineDelim start="`r " end="`" contains=@Rmdr containedin=pandocLaTeXRegion,yamlFlowString keepend +else + " Step_2: Source markdown.vim if pandoc.vim is not installed + + " Configuration if not using pandoc syntax: + " Add syntax highlighting of YAML header + let g:rmd_syn_hl_yaml = get(g:, 'rmd_syn_hl_yaml', 1) + " Add syntax highlighting of citation keys + let g:rmd_syn_hl_citations = get(g:, 'rmd_syn_hl_citations', 1) + + " R chunks will not be highlighted by syntax/markdown because their headers + " follow a non standard pattern: "```{lang" instead of "^```lang". + " Make a copy of g:markdown_fenced_languages to highlight the chunks later: + if exists('g:markdown_fenced_languages') && !exists('g:rmd_fenced_languages') + let g:rmd_fenced_languages = deepcopy(g:markdown_fenced_languages) + endif + + if exists('g:markdown_fenced_languages') && len(g:markdown_fenced_languages) > 0 + let s:save_mfl = deepcopy(g:markdown_fenced_languages) + endif + " Don't waste time loading syntax that will be discarded: + let g:markdown_fenced_languages = [] + runtime syntax/markdown.vim + if exists('s:save_mfl') > 0 + let g:markdown_fenced_languages = deepcopy(s:save_mfl) + unlet s:save_mfl + endif + syn region rmdrInline matchgroup=rmdInlineDelim start="`r " end="`" contains=@Rmdr keepend + + " Step_2a: Add highlighting for both YAML and citations which are pandoc + " specific, but also used in Rmd files + + " You don't need this if either your markdown/syntax.vim already highlights + " the YAML header or you are writing standard markdown + if g:rmd_syn_hl_yaml + " Basic highlighting of YAML header + syn match rmdYamlFieldTtl /^\s*\zs\w\%(-\|\w\)*\ze:/ contained + syn match rmdYamlFieldTtl /^\s*-\s*\zs\w\%(-\|\w\)*\ze:/ contained + syn region yamlFlowString matchgroup=yamlFlowStringDelimiter start='"' skip='\\"' end='"' contains=yamlEscape,rmdrInline contained + syn region yamlFlowString matchgroup=yamlFlowStringDelimiter start="'" skip="''" end="'" contains=yamlSingleEscape,rmdrInline contained + syn match yamlEscape contained '\\\%([\\"abefnrtv\^0_ NLP\n]\|x\x\x\|u\x\{4}\|U\x\{8}\)' + syn match yamlSingleEscape contained "''" + syn match yamlComment /#.*/ contained + " A second colon is a syntax error, unles within a string or following !expr + syn match yamlColonError /:\s*[^'^"^!]*:/ contained + if &filetype == 'quarto' + syn region pandocYAMLHeader matchgroup=rmdYamlBlockDelim start=/\%(\%^\|\_^\s*\n\)\@<=\_^-\{3}\ze\n.\+/ end=/^---$/ keepend contains=rmdYamlFieldTtl,yamlFlowString,yamlComment,yamlColonError else - exe 'syn region rmd'.s:nm.'Chunk matchgroup=rmdCodeDelim start="^\s*```\s*{\s*'.s:nm.'\>.*$" matchgroup=rmdCodeDelim end="^\s*```\ze\s*$" keepend contains=@'.toupper(s:nm) + syn region pandocYAMLHeader matchgroup=rmdYamlBlockDelim start=/\%(\%^\|\_^\s*\n\)\@<=\_^-\{3}\ze\n.\+/ end=/^\([-.]\)\1\{2}$/ keepend contains=rmdYamlFieldTtl,yamlFlowString,yamlComment,yamlColonError endif - endfor - unlet s:lng - unlet s:nm - hi def link rmdInlineDelim Delimiter - hi def link rmdCodeDelim Delimiter - let b:current_syntax = "rmd" - finish -endif - -" Configuration if not using pandoc syntax: -" Add syntax highlighting of YAML header -let g:rmd_syn_hl_yaml = get(g:, 'rmd_syn_hl_yaml', 1) -" Add syntax highlighting of citation keys -let g:rmd_syn_hl_citations = get(g:, 'rmd_syn_hl_citations', 1) - -let s:cpo_save = &cpo -set cpo&vim + hi def link rmdYamlBlockDelim Delimiter + hi def link rmdYamlFieldTtl Identifier + hi def link yamlFlowString String + hi def link yamlComment Comment + hi def link yamlColonError Error + endif -" R chunks will not be highlighted by syntax/markdown because their headers -" follow a non standard pattern: "```{lang" instead of "^```lang". -" Make a copy of g:markdown_fenced_languages to highlight the chunks later: -if exists('g:markdown_fenced_languages') - if !exists('g:rmd_fenced_languages') - let g:rmd_fenced_languages = deepcopy(g:markdown_fenced_languages) - let g:markdown_fenced_languages = [] + " You don't need this if either your markdown/syntax.vim already highlights + " citations or you are writing standard markdown + if g:rmd_syn_hl_citations + " From vim-pandoc-syntax + " parenthetical citations + syn match pandocPCite /\^\@~\/]*.\{-}\]/ contains=pandocEmphasis,pandocStrong,pandocLatex,pandocCiteKey,@Spell,pandocAmpersandEscape display + " in-text citations with location + syn match pandocICite /@[[:alnum:]_][[:alnum:]à-öø-ÿÀ-ÖØ-ß_:.#$%&\-+?<>~\/]*\s\[.\{-1,}\]/ contains=pandocCiteKey,@Spell display + " cite keys + syn match pandocCiteKey /\(-\=@[[:alnum:]_][[:alnum:]à-öø-ÿÀ-ÖØ-ß_:.#$%&\-+?<>~\/]*\)/ containedin=pandocPCite,pandocICite contains=@NoSpell display + syn match pandocCiteAnchor /[-@]/ contained containedin=pandocCiteKey display + syn match pandocCiteLocator /[\[\]]/ contained containedin=pandocPCite,pandocICite + hi def link pandocPCite Operator + hi def link pandocICite Operator + hi def link pandocCiteKey Label + hi def link pandocCiteAnchor Operator + hi def link pandocCiteLocator Operator endif -else - let g:rmd_fenced_languages = ['r'] endif -runtime syntax/markdown.vim +" Step_3: Highlight code blocks. + +syn region rmdCodeBlock matchgroup=rmdCodeDelim start="^\s*```\s*{.*}$" matchgroup=rmdCodeDelim end="^\s*```\ze\s*$" keepend +syn region rmdCodeBlock matchgroup=rmdCodeDelim start="^\s*```.+$" matchgroup=rmdCodeDelim end="^```$" keepend +hi link rmdCodeBlock Special " Now highlight chunks: +syn region knitrBodyOptions start='^#| ' end='$' contained containedin=rComment,pythonComment contains=knitrBodyVar,knitrBodyValue transparent +syn match knitrBodyValue ': \zs.*\ze$' keepend contained containedin=knitrBodyOptions +syn match knitrBodyVar '| \zs\S\{-}\ze:' contained containedin=knitrBodyOptions + +let g:rmd_fenced_languages = get(g:, 'rmd_fenced_languages', ['r']) for s:type in g:rmd_fenced_languages if s:type =~ '=' let s:ft = substitute(s:type, '.*=', '', '') @@ -81,58 +138,40 @@ for s:type in g:rmd_fenced_languages unlet! b:current_syntax exe 'syn include @Rmd'.s:nm.' syntax/'.s:ft.'.vim' if g:rmd_syn_hl_chunk - exe 'syn region rmd'.s:nm.'ChunkDelim matchgroup=rmdCodeDelim start="^\s*```\s*{\s*'.s:nm.'\>" matchgroup=rmdCodeDelim end="}$" keepend containedin=rmd'.s:nm.'Chunk contains=@Rmdr' - exe 'syn region rmd'.s:nm.'Chunk start="^\s*```\s*{\s*'.s:nm.'\>.*$" matchgroup=rmdCodeDelim end="^\s*```\ze\s*$" keepend contains=rmd'.s:nm.'ChunkDelim,@Rmd'.s:nm + exe 'syn match knitrChunkDelim /```\s*{\s*'.s:nm.'/ contained containedin=knitrChunkBrace contains=knitrChunkLabel' + exe 'syn match knitrChunkLabelDelim /```\s*{\s*'.s:nm.',\=\s*[-[:alnum:]]\{-1,}[,}]/ contained containedin=knitrChunkBrace' + syn match knitrChunkDelim /}\s*$/ contained containedin=knitrChunkBrace + exe 'syn match knitrChunkBrace /```\s*{\s*'.s:nm.'.*$/ contained containedin=rmd'.s:nm.'Chunk contains=knitrChunkDelim,knitrChunkLabelDelim,@Rmd'.s:nm + exe 'syn region rmd'.s:nm.'Chunk start="^\s*```\s*{\s*=\?'.s:nm.'\>.*$" matchgroup=rmdCodeDelim end="^\s*```\ze\s*$" keepend contains=knitrChunkBrace,@Rmd'.s:nm + + hi link knitrChunkLabel Identifier + hi link knitrChunkDelim rmdCodeDelim + hi link knitrChunkLabelDelim rmdCodeDelim else - exe 'syn region rmd'.s:nm.'Chunk matchgroup=rmdCodeDelim start="^\s*```\s*{\s*'.s:nm.'\>.*$" matchgroup=rmdCodeDelim end="^\s*```\ze\s*$" keepend contains=@Rmd'.s:nm + exe 'syn region rmd'.s:nm.'Chunk matchgroup=rmdCodeDelim start="^\s*```\s*{\s*=\?'.s:nm.'\>.*$" matchgroup=rmdCodeDelim end="^\s*```\ze\s*$" keepend contains=@Rmd'.s:nm endif endfor unlet! s:type -" Recognize inline R code -syn region rmdrInline matchgroup=rmdInlineDelim start="`r " end="`" contains=@Rmdr keepend +" Step_4: Highlight code recognized by pandoc but not defined in pandoc.vim yet: +syn match pandocDivBegin '^:::\+ {.\{-}}' contains=pandocHeaderAttr +syn match pandocDivEnd '^:::\+$' +hi def link knitrBodyVar PreProc +hi def link knitrBodyValue Constant +hi def link knitrBodyOptions rComment +hi def link pandocDivBegin Delimiter +hi def link pandocDivEnd Delimiter hi def link rmdInlineDelim Delimiter hi def link rmdCodeDelim Delimiter -" You don't need this if either your markdown/syntax.vim already highlights -" the YAML header or you are writing standard markdown -if g:rmd_syn_hl_yaml - " Minimum highlighting of yaml header - syn match rmdYamlFieldTtl /^\s*\zs\w*\ze:/ contained - syn match rmdYamlFieldTtl /^\s*-\s*\zs\w*\ze:/ contained - syn region yamlFlowString matchgroup=yamlFlowStringDelimiter start='"' skip='\\"' end='"' contains=yamlEscape,rmdrInline contained - syn region yamlFlowString matchgroup=yamlFlowStringDelimiter start="'" skip="''" end="'" contains=yamlSingleEscape,rmdrInline contained - syn match yamlEscape contained '\\\%([\\"abefnrtv\^0_ NLP\n]\|x\x\x\|u\x\{4}\|U\x\{8}\)' - syn match yamlSingleEscape contained "''" - syn region pandocYAMLHeader matchgroup=rmdYamlBlockDelim start=/\%(\%^\|\_^\s*\n\)\@<=\_^-\{3}\ze\n.\+/ end=/^\([-.]\)\1\{2}$/ keepend contains=rmdYamlFieldTtl,yamlFlowString - hi def link rmdYamlBlockDelim Delimiter - hi def link rmdYamlFieldTtl Identifier - hi def link yamlFlowString String -endif - -" You don't need this if either your markdown/syntax.vim already highlights -" citations or you are writing standard markdown -if g:rmd_syn_hl_citations - " From vim-pandoc-syntax - " parenthetical citations - syn match pandocPCite /\^\@~\/]*.\{-}\]/ contains=pandocEmphasis,pandocStrong,pandocLatex,pandocCiteKey,@Spell,pandocAmpersandEscape display - " in-text citations with location - syn match pandocICite /@[[:alnum:]_][[:alnum:]à-öø-ÿÀ-ÖØ-ß_:.#$%&\-+?<>~\/]*\s\[.\{-1,}\]/ contains=pandocCiteKey,@Spell display - " cite keys - syn match pandocCiteKey /\(-\=@[[:alnum:]_][[:alnum:]à-öø-ÿÀ-ÖØ-ß_:.#$%&\-+?<>~\/]*\)/ containedin=pandocPCite,pandocICite contains=@NoSpell display - syn match pandocCiteAnchor /[-@]/ contained containedin=pandocCiteKey display - syn match pandocCiteLocator /[\[\]]/ contained containedin=pandocPCite,pandocICite - hi def link pandocPCite Operator - hi def link pandocICite Operator - hi def link pandocCiteKey Label - hi def link pandocCiteAnchor Operator - hi def link pandocCiteLocator Operator +if len(s:save_pandoc_lngs) + let g:pandoc#syntax#codeblocks#embeds#langs = s:save_pandoc_lngs endif - -let b:current_syntax = "rmd" - +unlet s:save_pandoc_lngs let &cpo = s:cpo_save unlet s:cpo_save +let b:current_syntax = "rmd" + " vim: ts=8 sw=2 diff --git a/runtime/syntax/sh.vim b/runtime/syntax/sh.vim index 13d74dbc17..f455f19c93 100644 --- a/runtime/syntax/sh.vim +++ b/runtime/syntax/sh.vim @@ -2,8 +2,8 @@ " Language: shell (sh) Korn shell (ksh) bash (sh) " Maintainer: Charles E. Campbell " Previous Maintainer: Lennart Schultz -" Last Change: Dec 20, 2022 -" Version: 205 +" Last Change: Feb 11, 2023 +" Version: 207 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_SH " For options and settings, please use: :help ft-sh-syntax " This file includes many ideas from Eric Brunet (eric.brunet@ens.fr) and heredoc fixes from Felipe Contreras @@ -166,7 +166,7 @@ if exists("b:is_kornshell") || exists("b:is_bash") syn cluster shLoopoList add=shForPP endif syn cluster shPPSLeftList contains=shAlias,shArithmetic,shCmdParenRegion,shCommandSub,shCtrlSeq,shDeref,shDerefSimple,shDoubleQuote,shEcho,shEscape,shExDoubleQuote,shExpr,shExSingleQuote,shHereDoc,shNumber,shOperator,shOption,shPosnParm,shHereString,shRedir,shSingleQuote,shSpecial,shStatement,shSubSh,shTest,shVariable -syn cluster shPPSRightList contains=shComment,shDeref,shDerefSimple,shEscape,shPosnParm +syn cluster shPPSRightList contains=shDeref,shDerefSimple,shEscape,shPosnParm syn cluster shSubShList contains=@shCommandSubList,shCommandSubBQ,shCaseEsac,shColon,shCommandSub,shComment,shDo,shEcho,shExpr,shFor,shIf,shHereString,shRedir,shSetList,shSource,shStatement,shVariable,shCtrlSeq,shOperator syn cluster shTestList contains=shArithmetic,shCharClass,shCommandSub,shCommandSubBQ,shCtrlSeq,shDeref,shDerefSimple,shDoubleQuote,shSpecialDQ,shExDoubleQuote,shExpr,shExSingleQuote,shNumber,shOperator,shSingleQuote,shTest,shTestOpr syn cluster shNoZSList contains=shSpecialNoZS @@ -335,7 +335,7 @@ syn match shEscape contained '\%(^\)\@!\%(\\\\\)*\\.' nextgroup=shComment " systems too, however, so the following syntax will flag $(..) as " an Error under /bin/sh. By consensus of vimdev'ers! if exists("b:is_kornshell") || exists("b:is_bash") || exists("b:is_posix") - syn region shCommandSub matchgroup=shCmdSubRegion start="\$(\ze[^(]\|$" skip='\\\\\|\\.' end=")" contains=@shCommandSubList + syn region shCommandSub matchgroup=shCmdSubRegion start="\$(\ze[^(]" skip='\\\\\|\\.' end=")" contains=@shCommandSubList syn region shArithmetic matchgroup=shArithRegion start="\$((" skip='\\\\\|\\.' end="))" contains=@shArithList syn region shArithmetic matchgroup=shArithRegion start="\$\[" skip='\\\\\|\\.' end="\]" contains=@shArithList syn match shSkipInitWS contained "^\s\+" @@ -503,7 +503,6 @@ endif " ksh: ${.sh.*} variables: {{{1 " ======================================== if exists("b:is_kornshell") -" syn match shDerefVar contained "[.]*" nextgroup=@shDerefVarList syn match shDerefVar contained "\.\+" nextgroup=@shDerefVarList endif @@ -548,6 +547,7 @@ syn region shDerefVarArray contained matchgroup=shDeref start="\[" end="]" co " bash : ${parameter,pattern} Case modification " bash : ${parameter,,pattern} Case modification " bash : ${@:start:qty} display command line arguments from start to start+qty-1 (inferred) +" bash : ${parameter@operator} transforms parameter (operator∈[uULqEPARa]) syn cluster shDerefPatternList contains=shDerefPattern,shDerefString if !exists("g:sh_no_error") syn match shDerefOpError contained ":[[:punct:]]" @@ -563,6 +563,7 @@ if exists("b:is_bash") || exists("b:is_kornshell") || exists("b:is_posix") endif if exists("b:is_bash") syn match shDerefOp contained "[,^]\{1,2}" nextgroup=@shDerefPatternList + syn match shDerefOp contained "@[uULQEPAKa]" endif syn region shDerefString contained matchgroup=shDerefDelim start=+\%(\\\)\@ Date: Sat, 15 Apr 2023 18:19:47 +0800 Subject: vim-patch:8.2.4934: string interpolation fails when not evaluating Problem: String interpolation fails when not evaluating. Solution: Skip the expression when not evaluating. (closes vim/vim#10398) https://github.com/vim/vim/commit/70c41241c2701f26a99085e433925a206ca265a3 Co-authored-by: Bram Moolenaar --- runtime/syntax/modula3.vim | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/modula3.vim b/runtime/syntax/modula3.vim index 390a1a90ff..67243db600 100644 --- a/runtime/syntax/modula3.vim +++ b/runtime/syntax/modula3.vim @@ -84,9 +84,7 @@ syn case ignore let s:digits = "0123456789ABCDEF" for s:radix in range(2, 16) - " Nvim does not support interpolated strings yet. - " exe $'syn match modula3Integer "\<{s:radix}_[{s:digits[:s:radix - 1]}]\+L\=\>"' - exe 'syn match modula3Integer "\<' .. s:radix .. '_[' .. s:digits[:s:radix - 1] .. ']\+L\=\>"' + exe $'syn match modula3Integer "\<{s:radix}_[{s:digits[:s:radix - 1]}]\+L\=\>"' endfor unlet s:digits s:radix -- cgit From e3f36377c156749bbdafc46d8a8cd017f378b4b5 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Sun, 23 Apr 2023 15:22:55 +0200 Subject: vim-patch:71badf9547e8 (#23285) Update runtime files https://github.com/vim/vim/commit/71badf9547e8f89571b9a095183671cbb333d528 Co-authored-by: Bram Moolenaar --- runtime/syntax/c.vim | 7 +- runtime/syntax/gpg.vim | 197 +++++++++++++++++++++++++++++-------------- runtime/syntax/hollywood.vim | 8 +- runtime/syntax/ld.vim | 3 +- runtime/syntax/livebook.vim | 8 ++ runtime/syntax/netrc.vim | 4 + runtime/syntax/python.vim | 20 ++--- runtime/syntax/sh.vim | 20 ++--- runtime/syntax/vim.vim | 4 +- 9 files changed, 180 insertions(+), 91 deletions(-) create mode 100644 runtime/syntax/livebook.vim (limited to 'runtime/syntax') diff --git a/runtime/syntax/c.vim b/runtime/syntax/c.vim index 50878a78ea..04b132d3ff 100644 --- a/runtime/syntax/c.vim +++ b/runtime/syntax/c.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: C " Maintainer: Bram Moolenaar -" Last Change: 2022 Oct 05 +" Last Change: 2023 Mar 08 " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") @@ -348,7 +348,10 @@ if !exists("c_no_ansi") || exists("c_ansi_constants") || exists("c_gnu") syn keyword cConstant SIGABRT SIGALRM SIGCHLD SIGCONT SIGFPE SIGHUP SIGILL SIGINT SIGKILL SIGPIPE SIGQUIT SIGSEGV syn keyword cConstant SIGSTOP SIGTERM SIGTRAP SIGTSTP SIGTTIN SIGTTOU SIGUSR1 SIGUSR2 syn keyword cConstant _IOFBF _IOLBF _IONBF BUFSIZ EOF WEOF FOPEN_MAX FILENAME_MAX L_tmpnam - syn keyword cConstant SEEK_CUR SEEK_END SEEK_SET TMP_MAX stderr stdin stdout EXIT_FAILURE EXIT_SUCCESS RAND_MAX + syn keyword cConstant SEEK_CUR SEEK_END SEEK_SET TMP_MAX EXIT_FAILURE EXIT_SUCCESS RAND_MAX + syn keyword cConstant stdin stdout stderr + " POSIX 2001, in unistd.h + syn keyword cConstant STDIN_FILENO STDOUT_FILENO STDERR_FILENO " used in assert.h syn keyword cConstant NDEBUG " POSIX 2001 diff --git a/runtime/syntax/gpg.vim b/runtime/syntax/gpg.vim index 57f712b6a3..c7f3584ff0 100644 --- a/runtime/syntax/gpg.vim +++ b/runtime/syntax/gpg.vim @@ -3,6 +3,7 @@ " Previous Maintainer: Nikolai Weibull " Latest Revision: 2010-10-14 " Updated: 2023-01-23 @ObserverOfTime: added a couple of keywords +" 2023-03-21 Todd Zullinger : sync with gnupg-2.4.0 if exists("b:current_syntax") finish @@ -23,73 +24,145 @@ syn match gpgID contained display '\<\(0x\)\=\x\{8,}\>' syn match gpgBegin display '^' skipwhite nextgroup=gpgComment,gpgOption,gpgCommand syn keyword gpgCommand contained skipwhite nextgroup=gpgArg - \ check-sigs decrypt decrypt-files delete-key - \ delete-secret-and-public-key delete-secret-key - \ edit-key encrypt-files export export-all - \ export-ownertrust export-secret-keys - \ export-secret-subkeys fast-import fingerprint - \ gen-prime gen-random import import-ownertrust - \ list-keys list-public-keys list-secret-keys - \ list-sigs lsign-key nrsign-key print-md print-mds - \ recv-keys search-keys send-keys sign-key verify - \ verify-files + \ change-passphrase check-sig check-signatures + \ check-sigs delete-keys delete-secret-and-public-keys + \ delete-secret-keys desig-revoke export + \ export-secret-keys export-secret-ssh-key + \ export-secret-subkeys export-ssh-key list-key + \ list-keys list-packets list-public-keys + \ list-secret-keys list-sig list-signatures list-sigs + \ passwd send-keys fetch-keys + \ generate-designated-revocation generate-revocation + \ gen-prime gen-random gen-revoke locate-external-keys + \ locate-keys lsign-key options print-md quick-add-key + \ quick-addkey quick-add-uid quick-adduid + \ quick-generate-key quick-gen-key quick-lsign-key + \ quick-revoke-sig quick-revoke-uid quick-revuid + \ quick-set-expire quick-set-primary-uid quick-sign-key + \ quick-update-pref receive-keys recv-keys refresh-keys + \ search-keys show-key show-keys sign-key tofu-policy syn keyword gpgCommand contained skipwhite nextgroup=gpgArgError - \ check-trustdb clearsign desig-revoke detach-sign - \ encrypt gen-key gen-revoke help list-packets - \ rebuild-keydb-caches sign store symmetric - \ update-trustdb version warranty + \ card-edit card-status change-pin check-trustdb + \ clear-sign clearsign dearmor dearmour decrypt + \ decrypt-files detach-sign encrypt encrypt-files + \ edit-card edit-key enarmor enarmour export-ownertrust + \ fast-import import import-ownertrust key-edit + \ fingerprint fix-trustdb full-generate-key + \ full-gen-key generate-key gen-key gpgconf-list + \ gpgconf-test list-config list-gcrypt-config + \ list-trustdb no-options print-mds + \ rebuild-keydb-caches server sign store symmetric + \ update-trustdb verify verify-files syn keyword gpgOption contained skipwhite nextgroup=gpgArg - \ attribute-fd cert-digest-algo charset cipher-algo - \ command-fd comment completes-needed compress - \ compress-algo debug default-cert-check-level - \ default-key default-preference-list - \ default-recipient digest-algo disable-cipher-algo - \ disable-pubkey-algo encrypt-to exec-path - \ export-options group homedir import-options - \ keyring keyserver keyserver-options load-extension - \ local-user logger-fd marginals-needed max-cert-depth - \ notation-data options output override-session-key - \ passphrase-fd personal-cipher-preferences - \ personal-compress-preferences - \ personal-digest-preferences photo-viewer - \ recipient s2k-cipher-algo s2k-digest-algo s2k-mode - \ secret-keyring set-filename set-policy-url status-fd - \ trusted-key verify-options keyid-format list-options - \ default-new-key-algo weak-digest + \ aead-algo agent-program attribute-fd attribute-file + \ auto-key-locate bzip2-compress-level cert-digest-algo + \ cert-notation cert-policy-url charset chuid + \ chunk-size cipher-algo command-fd command-file + \ comment compatibility-flags completes-needed + \ compliance compress-algo compression-algo + \ compress-level ctapi-driver debug + \ debug-allow-large-chunks debug-level + \ debug-set-iobuf-size default-cert-check-level + \ default-cert-expire default-cert-level default-key + \ default-keyserver-url default-new-key-algo + \ default-preference-list default-recipient + \ default-sig-expire digest-algo dirmngr-program + \ disable-cipher-algo disable-pubkey-algo display + \ display-charset encrypt-to exec-path export-filter + \ export-options faked-system-time force-ownertrust + \ gpg-agent-info group hidden-encrypt-to + \ hidden-recipient hidden-recipient-file homedir + \ import-filter import-options input-size-hint + \ keyboxd-program keyid-format key-origin keyring + \ keyserver keyserver-options known-notation lc-ctype + \ lc-messages limit-card-insert-tries list-filter + \ list-options local-user log-file logger-fd + \ logger-file marginals-needed max-cert-depth + \ max-output min-cert-level min-rsa-length output + \ override-session-key override-session-key-fd + \ passphrase passphrase-fd passphrase-file + \ passphrase-repeat pcsc-driver + \ personal-aead-preferences personal-cipher-preferences + \ personal-cipher-prefs personal-compress-preferences + \ personal-compress-prefs personal-digest-preferences + \ photo-viewer pinentry-mode primary-keyring + \ reader-port recipient recipient-file remote-user + \ request-origin s2k-cipher-algo s2k-count + \ s2k-digest-algo s2k-mode secret-keyring sender + \ set-filename set-filesize set-notation set-policy-url + \ sig-keyserver-url sig-notation sign-with + \ sig-policy-url status-fd status-file temp-directory + \ tofu-db-format tofu-default-policy trustdb-name + \ trusted-key trust-model try-secret-key ttyname + \ ttytype ungroup user verify-options weak-digest + \ xauthority syn keyword gpgOption contained skipwhite nextgroup=gpgArgError - \ allow-freeform-uid allow-non-selfsigned-uid - \ allow-secret-key-import always-trust - \ armor ask-cert-expire ask-sig-expire - \ auto-check-trustdb batch debug-all default-comment - \ default-recipient-self dry-run emit-version - \ emulate-md-encode-bug enable-special-filenames - \ escape-from-lines expert fast-list-mode - \ fixed-list-mode for-your-eyes-only - \ force-mdc force-v3-sigs force-v4-certs - \ gpg-agent-info ignore-crc-error ignore-mdc-error - \ ignore-time-conflict ignore-valid-from interactive + \ allow-freeform-uid allow-multiple-messages + \ allow-multisig-verification allow-non-selfsigned-uid + \ allow-old-cipher-algos allow-secret-key-import + \ allow-weak-digest-algos allow-weak-key-signatures + \ always-trust armor armour ask-cert-expire + \ ask-cert-level ask-sig-expire auto-check-trustdb + \ auto-key-import auto-key-retrieve batch + \ bzip2-decompress-lowmem compress-keys compress-sigs + \ debug-all debug-iolbf debug-quick-random + \ default-comment default-recipient-self disable-ccid + \ disable-dirmngr disable-dsa2 disable-large-rsa + \ disable-mdc disable-signer-uid dry-run dump-options + \ dump-option-table emit-version enable-dsa2 + \ enable-large-rsa enable-progress-filter + \ enable-special-filenames encrypt-to-default-key + \ escape-from-lines exit-on-status-write-error expert + \ fast-list-mode file-is-digest fixed-list-mode + \ forbid-gen-key force-aead force-mdc force-ocb + \ force-sign-key force-v3-sigs force-v4-certs + \ for-your-eyes-only full-timestrings gnupg help + \ honor-http-proxy ignore-crc-error ignore-mdc-error + \ ignore-time-conflict ignore-valid-from + \ include-key-block interactive legacy-list-mode \ list-only lock-multiple lock-never lock-once - \ merge-only no no-allow-non-selfsigned-uid - \ no-armor no-ask-cert-expire no-ask-sig-expire - \ no-auto-check-trustdb no-batch no-comment + \ mangle-dos-filenames merge-only mimemode multifile no + \ no-allow-freeform-uid no-allow-multiple-messages + \ no-allow-non-selfsigned-uid no-armor no-armour + \ no-ask-cert-expire no-ask-cert-level + \ no-ask-sig-expire no-auto-check-trustdb + \ no-auto-key-import no-auto-key-locate + \ no-auto-key-retrieve no-autostart + \ no-auto-trust-new-key no-batch no-comments \ no-default-keyring no-default-recipient - \ no-encrypt-to no-expensive-trust-checks - \ no-expert no-for-your-eyes-only no-force-v3-sigs - \ no-force-v4-certs no-greeting no-literal - \ no-mdc-warning no-options no-permission-warning - \ no-pgp2 no-pgp6 no-pgp7 no-random-seed-file - \ no-secmem-warning no-show-notation no-show-photos - \ no-show-policy-url no-sig-cache no-sig-create-check - \ no-sk-comments no-tty no-utf8-strings no-verbose - \ no-version not-dash-escaped openpgp pgp2 - \ pgp6 pgp7 preserve-permissions quiet rfc1991 - \ set-filesize show-keyring show-notation show-photos - \ show-policy-url show-session-key simple-sk-checksum - \ sk-comments skip-verify textmode throw-keyid - \ try-all-secrets use-agent use-embedded-filename - \ utf8-strings verbose with-colons with-fingerprint - \ with-key-data yes + \ no-disable-mdc no-emit-version no-encrypt-to + \ no-escape-from-lines no-expensive-trust-checks + \ no-expert no-force-mdc no-force-v3-sigs + \ no-force-v4-certs no-for-your-eyes-only no-greeting + \ no-groups no-include-key-block no-keyring no-literal + \ no-mangle-dos-filenames no-mdc-warning + \ no-permission-warning no-pgp2 no-pgp6 no-pgp7 no-pgp8 + \ no-random-seed-file no-require-backsigs + \ no-require-cross-certification no-require-secmem + \ no-rfc2440-text no-secmem-warning no-show-notation + \ no-show-photos no-show-policy-url no-sig-cache + \ no-sk-comments no-skip-hidden-recipients + \ no-symkey-cache not-dash-escaped no-textmode + \ no-throw-keyids no-tty no-use-agent + \ no-use-embedded-filename no-utf8-strings no-verbose + \ no-version only-sign-text-ids openpgp + \ override-compliance-check pgp6 pgp7 pgp8 + \ preserve-permissions print-dane-records quiet + \ require-backsigs require-compliance + \ require-cross-certification require-secmem rfc2440 + \ rfc2440-text rfc4880 rfc4880bis show-keyring + \ show-notation show-photos show-policy-url + \ show-session-key sk-comments skip-hidden-recipients + \ skip-verify textmode throw-keyids try-all-secrets + \ unwrap use-agent use-embedded-filename use-keyboxd + \ use-only-openpgp-card utf8-strings verbose version + \ warranty with-colons with-fingerprint + \ with-icao-spelling with-key-data with-keygrip + \ with-key-origin with-key-screening with-secret + \ with-sig-check with-sig-list with-subkey-fingerprint + \ with-subkey-fingerprints with-tofu-info with-wkd-hash + \ yes syn match gpgArg contained display '\S\+\(\s\+\S\+\)*' contains=gpgID syn match gpgArgError contained display '\S\+\(\s\+\S\+\)*' @@ -99,7 +172,7 @@ hi def link gpgTodo Todo hi def link gpgID Number hi def link gpgOption Keyword hi def link gpgCommand Error -hi def link gpgArgError Error +hi def link gpgArgError Error let b:current_syntax = "gpg" diff --git a/runtime/syntax/hollywood.vim b/runtime/syntax/hollywood.vim index fcd03a68f0..7846d5230f 100644 --- a/runtime/syntax/hollywood.vim +++ b/runtime/syntax/hollywood.vim @@ -1,8 +1,8 @@ " Vim syntax file -" Language: Hollywood 9.1 +" Language: Hollywood 10.0 " Maintainer: Ola Söder " First Author: Tom Crecelius -" Last Change: 2022 Nov 09 +" Last Change: 2023 Mar 22 " Highlighting Issues: " Depending on your colour schema, Strings or Comments might be highlighted in " a way, you don't like. If so, try one of the following settings after @@ -105,7 +105,7 @@ syn keyword hwIn contained In syn keyword hwStatement Return Break Continue syn keyword hwStatement Goto Gosub Dim DimStr Const Local Global syn match hwLabel "::\I\i*::" -syn match hwOperator "\%(&\|\*\|+\|-\|\.\||\|//\|/\|:\|<\|=\|>\|<>\|<=\|=>\|\^\|\~\|\\\|\\|\\|\\)" +syn match hwOperator "\%(&\|\*\|+\|-\|\.\||\|//\|/\|:\|<\|=\|>\|<>\|<=\|=>\|\^\|\~\|\\\|\\|\\|\\|\\)" syn keyword hwConstant Nil syn keyword hwConstant True False " predefined preprocessing commands @@ -113,7 +113,7 @@ syn match hwPreProcessor "@\<\%(ANIM\|APPAUTHOR\|APPCOPYRIGHT\|APPDESCRIPTION\|A " predefined constants syn match hwConstant "#\<\%(ACTIVEWINDOW\|ADF_ANIM\|ADF_FX\|ADF_MOVEOBJECT\|ALL\|ALPHABETICAL\|ALPHACHANNEL\|ALPHANUMERICAL\|AMIGAICON_DEVICE\|AMIGAICON_DISK\|AMIGAICON_DRAWER\|AMIGAICON_GARBAGE\|AMIGAICON_HIDE\|AMIGAICON_KICKSTART\|AMIGAICON_NONE\|AMIGAICON_PROJECT\|AMIGAICON_SETPOSITION\|AMIGAICON_SETTITLE\|AMIGAICON_SHOW\|AMIGAICON_TOOL\|ANIM\|ANIMSTREAM\|ANIMTYPE_RASTER\|ANIMTYPE_VECTOR\|ANMFMT_GIF\|ANMFMT_IFF\|ANMFMT_MJPEG\|ANTIALIAS\|AQUA\|ARC\|ASYNCDRAW\|ASYNCOBJ\|ATTRACTIVE\|ATTRADAPTER\|ATTRALPHAINTENSITY\|ATTRBGPIC\|ATTRBITRATE\|ATTRBORDERBOTTOM\|ATTRBORDERLEFT\|ATTRBORDERLESS\|ATTRBORDERPEN\|ATTRBORDERRIGHT\|ATTRBORDERTOP\|ATTRBULLETPEN\|ATTRCANSEEK\|ATTRCLIPREGION\|ATTRCOUNT\|ATTRCURFRAME\|ATTRCURSORX\|ATTRCURSORY\|ATTRCURSUBSONG\|ATTRCYCLE\|ATTRDENSITY\|ATTRDEPTH\|ATTRDISPLAY\|ATTRDITHERMODE\|ATTRDOUBLEBUFFER\|ATTRDRIVER\|ATTRDURATION\|ATTRELAPSE\|ATTRENCODING\|ATTRFIXED\|ATTRFONTAA\|ATTRFONTASCENDER\|ATTRFONTCHARMAP\|ATTRFONTDEPTH\|ATTRFONTDESCENDER\|ATTRFONTENGINE\|ATTRFONTNAME\|ATTRFONTPALETTE\|ATTRFONTSCALABLE\|ATTRFONTSIZE\|ATTRFONTTRANSPARENTPEN\|ATTRFONTTYPE\|ATTRFORMAT\|ATTRFRAMEDELAY\|ATTRFUNCTION\|ATTRGROUP\|ATTRHARDWARE\|ATTRHASALPHA\|ATTRHASMASK\|ATTRHEIGHT\|ATTRHOSTDEPTH\|ATTRHOSTHEIGHT\|ATTRHOSTMONITORS\|ATTRHOSTSCALE\|ATTRHOSTSCALEX\|ATTRHOSTSCALEY\|ATTRHOSTTASKBAR\|ATTRHOSTTITLEBARHEIGHT\|ATTRHOSTWIDTH\|ATTRID\|ATTRIMMERSIVEMODE\|ATTRINTERPOLATE\|ATTRKEYBOARD\|ATTRLAYERID\|ATTRLAYERS\|ATTRLAYERSON\|ATTRLOADER\|ATTRMARGINLEFT\|ATTRMARGINRIGHT\|ATTRMASKMODE\|ATTRMAXHEIGHT\|ATTRMAXIMIZED\|ATTRMAXWIDTH\|ATTRMENU\|ATTRMODE\|ATTRMONITOR\|ATTRNOCLOSE\|ATTRNOHIDE\|ATTRNOMODESWITCH\|ATTRNUMENTRIES\|ATTRNUMFRAMES\|ATTRNUMSUBSONGS\|ATTRONSCREEN\|ATTRORIENTATION\|ATTROUTPUTDEVICE\|ATTRPALETTE\|ATTRPALETTEMODE\|ATTRPAUSED\|ATTRPEN\|ATTRPITCH\|ATTRPLAYING\|ATTRPOINTER\|ATTRPOSITION\|ATTRPUBSCREEN\|ATTRRAWHEIGHT\|ATTRRAWWIDTH\|ATTRRAWXPOS\|ATTRRAWYPOS\|ATTRSCALEHEIGHT\|ATTRSCALEMODE\|ATTRSCALESWITCH\|ATTRSCALEWIDTH\|ATTRSHADOWPEN\|ATTRSIZE\|ATTRSIZEABLE\|ATTRSPRITES\|ATTRSTANDARD\|ATTRSTATE\|ATTRSYSTEMBARS\|ATTRTEXT\|ATTRTITLE\|ATTRTRANSPARENTCOLOR\|ATTRTRANSPARENTPEN\|ATTRTYPE\|ATTRUSERDATA\|ATTRVISIBLE\|ATTRWIDTH\|ATTRXDPI\|ATTRXPOS\|ATTRXSERVER\|ATTRYDPI\|ATTRYPOS\|ATTRZPOS\|BARS\|BAUD_115200\|BAUD_1200\|BAUD_19200\|BAUD_2400\|BAUD_300\|BAUD_38400\|BAUD_460800\|BAUD_4800\|BAUD_57600\|BAUD_600\|BAUD_9600\|BEEPERROR\|BEEPINFORMATION\|BEEPQUESTION\|BEEPSYSTEM\|BEEPWARNING\|BGPIC\|BGPICPART\|BIGENDIAN\|BIGSINE\|BITMAP_DEFAULT\|BLACK\|BLEND\|BLUE\|BOLD\|BOOLEAN\|BORDER\|BOTTOM\|BOTTOMOUT\|BOUNCE\|BOX\|BRUSH\|BRUSH_VS_BOX\|BRUSHPART\|BULLET_ARROW\|BULLET_BOX\|BULLET_CHECKMARK\|BULLET_CIRCLE\|BULLET_CROSS\|BULLET_DASH\|BULLET_DIAMOND\|BULLET_LALPHA\|BULLET_LALPHADOUBLE\|BULLET_LALPHASINGLE\|BULLET_LROMAN\|BULLET_LROMANDOUBLE\|BULLET_LROMANSINGLE\|BULLET_NONE\|BULLET_NUMERIC\|BULLET_NUMERICDOUBLE\|BULLET_NUMERICSINGLE\|BULLET_UALPHA\|BULLET_UALPHADOUBLE\|BULLET_UALPHASINGLE\|BULLET_UROMAN\|BULLET_UROMANDOUBLE\|BULLET_UROMANSINGLE\|BYTE\|CAPBUTT\|CAPROUND\|CAPSQUARE\|CARDBOTTOM\|CARDTOP\|CENTER\|CHARMAP_ADOBECUSTOM\|CHARMAP_ADOBEEXPERT\|CHARMAP_ADOBELATIN1\|CHARMAP_ADOBESTANDARD\|CHARMAP_APPLEROMAN\|CHARMAP_BIG5\|CHARMAP_DEFAULT\|CHARMAP_JOHAB\|CHARMAP_MSSYMBOL\|CHARMAP_OLDLATIN2\|CHARMAP_SJIS\|CHARMAP_UNICODE\|CHARMAP_WANSUNG\|CHIPMEMORY\|CIRCLE\|CLIENT\|CLIPBOARD_EMPTY\|CLIPBOARD_IMAGE\|CLIPBOARD_SOUND\|CLIPBOARD_TEXT\|CLIPBOARD_UNKNOWN\|CLIPREGION\|CLOCKWIPE\|CLOSEWINDOW\|CONICAL\|COPYFILE_FAILED\|COPYFILE_OVERWRITE\|COPYFILE_STATUS\|COPYFILE_UNPROTECT\|COUNTBOTH\|COUNTDIRECTORIES\|COUNTFILES\|COUNTRY_AFGHANISTAN\|COUNTRY_ALANDISLANDS\|COUNTRY_ALBANIA\|COUNTRY_ALGERIA\|COUNTRY_AMERICANSAMOA\|COUNTRY_ANDORRA\|COUNTRY_ANGOLA\|COUNTRY_ANGUILLA\|COUNTRY_ANTARCTICA\|COUNTRY_ANTIGUAANDBARBUDA\|COUNTRY_ARGENTINA\|COUNTRY_ARMENIA\|COUNTRY_ARUBA\|COUNTRY_AUSTRALIA\|COUNTRY_AUSTRIA\|COUNTRY_AZERBAIJAN\|COUNTRY_BAHAMAS\|COUNTRY_BAHRAIN\|COUNTRY_BANGLADESH\|COUNTRY_BARBADOS\|COUNTRY_BELARUS\|COUNTRY_BELGIUM\|COUNTRY_BELIZE\|COUNTRY_BENIN\|COUNTRY_BERMUDA\|COUNTRY_BESISLANDS\|COUNTRY_BHUTAN\|COUNTRY_BOLIVIA\|COUNTRY_BOSNIAANDHERZEGOVINA\|COUNTRY_BOTSWANA\|COUNTRY_BOUVETISLAND\|COUNTRY_BRAZIL\|COUNTRY_BRUNEI\|COUNTRY_BULGARIA\|COUNTRY_BURKINAFASO\|COUNTRY_BURUNDI\|COUNTRY_CAMBODIA\|COUNTRY_CAMEROON\|COUNTRY_CANADA\|COUNTRY_CAPEVERDE\|COUNTRY_CAYMANISLANDS\|COUNTRY_CENTRALAFRICANREPUBLIC\|COUNTRY_CHAD\|COUNTRY_CHILE\|COUNTRY_CHINA\|COUNTRY_CHRISTMASISLAND\|COUNTRY_COCOSISLANDS\|COUNTRY_COLOMBIA\|COUNTRY_COMOROS\|COUNTRY_CONGO\|COUNTRY_COOKISLANDS\|COUNTRY_COSTARICA\|COUNTRY_CROATIA\|COUNTRY_CUBA\|COUNTRY_CURACAO\|COUNTRY_CYPRUS\|COUNTRY_CZECHREPUBLIC\|COUNTRY_DENMARK\|COUNTRY_DJIBOUTI\|COUNTRY_DOMINICA\|COUNTRY_DOMINICANREPUBLIC\|COUNTRY_DRCONGO\|COUNTRY_ECUADOR\|COUNTRY_EGYPT\|COUNTRY_ELSALVADOR\|COUNTRY_EQUATORIALGUINEA\|COUNTRY_ERITREA\|COUNTRY_ESTONIA\|COUNTRY_ETHIOPIA\|COUNTRY_FALKLANDISLANDS\|COUNTRY_FAROEISLANDS\|COUNTRY_FIJI\|COUNTRY_FINLAND\|COUNTRY_FRANCE\|COUNTRY_FRENCHGUIANA\|COUNTRY_FRENCHPOLYNESIA\|COUNTRY_GABON\|COUNTRY_GAMBIA\|COUNTRY_GEORGIA\|COUNTRY_GERMANY\|COUNTRY_GHANA\|COUNTRY_GIBRALTAR\|COUNTRY_GREECE\|COUNTRY_GREENLAND\|COUNTRY_GRENADA\|COUNTRY_GUADELOUPE\|COUNTRY_GUAM\|COUNTRY_GUATEMALA\|COUNTRY_GUERNSEY\|COUNTRY_GUINEA\|COUNTRY_GUINEABISSAU\|COUNTRY_GUYANA\|COUNTRY_HAITI\|COUNTRY_HOLYSEE\|COUNTRY_HONDURAS\|COUNTRY_HONGKONG\|COUNTRY_HUNGARY\|COUNTRY_ICELAND\|COUNTRY_INDIA\|COUNTRY_INDONESIA\|COUNTRY_IRAN\|COUNTRY_IRAQ\|COUNTRY_IRELAND\|COUNTRY_ISLEOFMAN\|COUNTRY_ISRAEL\|COUNTRY_ITALY\|COUNTRY_IVORYCOAST\|COUNTRY_JAMAICA\|COUNTRY_JAPAN\|COUNTRY_JERSEY\|COUNTRY_JORDAN\|COUNTRY_KAZAKHSTAN\|COUNTRY_KENYA\|COUNTRY_KIRIBATI\|COUNTRY_KUWAIT\|COUNTRY_KYRGYZSTAN\|COUNTRY_LAOS\|COUNTRY_LATVIA\|COUNTRY_LEBANON\|COUNTRY_LESOTHO\|COUNTRY_LIBERIA\|COUNTRY_LIBYA\|COUNTRY_LIECHTENSTEIN\|COUNTRY_LITHUANIA\|COUNTRY_LUXEMBOURG\|COUNTRY_MACAO\|COUNTRY_MACEDONIA\|COUNTRY_MADAGASCAR\|COUNTRY_MALAWI\|COUNTRY_MALAYSIA\|COUNTRY_MALDIVES\|COUNTRY_MALI\|COUNTRY_MALTA\|COUNTRY_MARSHALLISLANDS\|COUNTRY_MARTINIQUE\|COUNTRY_MAURITANIA\|COUNTRY_MAURITIUS\|COUNTRY_MAYOTTE\|COUNTRY_MEXICO\|COUNTRY_MICRONESIA\|COUNTRY_MOLDOVA\|COUNTRY_MONACO\|COUNTRY_MONGOLIA\|COUNTRY_MONTENEGRO\|COUNTRY_MONTSERRAT\|COUNTRY_MOROCCO\|COUNTRY_MOZAMBIQUE\|COUNTRY_MYANMAR\|COUNTRY_NAMIBIA\|COUNTRY_NAURU\|COUNTRY_NEPAL\|COUNTRY_NETHERLANDS\|COUNTRY_NEWCALEDONIA\|COUNTRY_NEWZEALAND\|COUNTRY_NICARAGUA\|COUNTRY_NIGER\|COUNTRY_NIGERIA\|COUNTRY_NIUE\|COUNTRY_NORFOLKISLAND\|COUNTRY_NORTHKOREA\|COUNTRY_NORWAY\|COUNTRY_OMAN\|COUNTRY_PAKISTAN\|COUNTRY_PALAU\|COUNTRY_PALESTINE\|COUNTRY_PANAMA\|COUNTRY_PAPUANEWGUINEA\|COUNTRY_PARAGUAY\|COUNTRY_PERU\|COUNTRY_PHILIPPINES\|COUNTRY_PITCAIRN\|COUNTRY_POLAND\|COUNTRY_PORTUGAL\|COUNTRY_PUERTORICO\|COUNTRY_QATAR\|COUNTRY_REUNION\|COUNTRY_ROMANIA\|COUNTRY_RUSSIA\|COUNTRY_RWANDA\|COUNTRY_SAINTBARTHELEMY\|COUNTRY_SAINTHELENA\|COUNTRY_SAINTKITTSANDNEVIS\|COUNTRY_SAINTLUCIA\|COUNTRY_SAINTVINCENT\|COUNTRY_SAMOA\|COUNTRY_SANMARINO\|COUNTRY_SAOTOMEANDPRINCIPE\|COUNTRY_SAUDIARABIA\|COUNTRY_SENEGAL\|COUNTRY_SERBIA\|COUNTRY_SEYCHELLES\|COUNTRY_SIERRALEONE\|COUNTRY_SINGAPORE\|COUNTRY_SLOVAKIA\|COUNTRY_SLOVENIA\|COUNTRY_SOLOMONISLANDS\|COUNTRY_SOMALIA\|COUNTRY_SOUTHAFRICA\|COUNTRY_SOUTHKOREA\|COUNTRY_SOUTHSUDAN\|COUNTRY_SPAIN\|COUNTRY_SRILANKA\|COUNTRY_SUDAN\|COUNTRY_SURINAME\|COUNTRY_SWAZILAND\|COUNTRY_SWEDEN\|COUNTRY_SWITZERLAND\|COUNTRY_SYRIA\|COUNTRY_TAIWAN\|COUNTRY_TAJIKISTAN\|COUNTRY_TANZANIA\|COUNTRY_THAILAND\|COUNTRY_TIMOR\|COUNTRY_TOGO\|COUNTRY_TONGA\|COUNTRY_TRINIDADANDTOBAGO\|COUNTRY_TUNISIA\|COUNTRY_TURKEY\|COUNTRY_TURKMENISTAN\|COUNTRY_TUVALU\|COUNTRY_UAE\|COUNTRY_UGANDA\|COUNTRY_UK\|COUNTRY_UKRAINE\|COUNTRY_UNKNOWN\|COUNTRY_URUGUAY\|COUNTRY_USA\|COUNTRY_UZBEKISTAN\|COUNTRY_VANUATU\|COUNTRY_VENEZUELA\|COUNTRY_VIETNAM\|COUNTRY_YEMEN\|COUNTRY_ZAMBIA\|COUNTSEPARATE\|CR_DEAD\|CR_RUNNING\|CR_SUSPENDED\|CROSSFADE\|CRUSHBOTTOM\|CRUSHLEFT\|CRUSHRIGHT\|CRUSHTOP\|DAMPED\|DATA_5\|DATA_6\|DATA_7\|DATA_8\|DATEDAY\|DATELOCAL\|DATELOCALNATIVE\|DATEMONTH\|DATETIME\|DATEUTC\|DATEYEAR\|DEFAULTICON\|DEFAULTSPEED\|DEINTERLACE_DEFAULT\|DEINTERLACE_DOUBLE\|DELETEFILE_FAILED\|DELETEFILE_STATUS\|DELETEFILE_UNPROTECT\|DENSITY_HIGH\|DENSITY_LOW\|DENSITY_MEDIUM\|DENSITY_NONE\|DIAGONAL\|DIRECTORY\|DIRMONITOR_ADD\|DIRMONITOR_CHANGE\|DIRMONITOR_REMOVE\|DISPLAY\|DISPMODE_ASK\|DISPMODE_FAKEFULLSCREEN\|DISPMODE_FULLSCREEN\|DISPMODE_FULLSCREENSCALE\|DISPMODE_MODEREQUESTER\|DISPMODE_MODESWITCH\|DISPMODE_SYSTEMSCALE\|DISPMODE_WINDOWED\|DISPSTATE_CLOSED\|DISPSTATE_MINIMIZED\|DISPSTATE_OPEN\|DISSOLVE\|DITHERMODE_FLOYDSTEINBERG\|DITHERMODE_NONE\|DOSTYPE_DIRECTORY\|DOSTYPE_FILE\|DOUBLE\|DOUBLEBUFFER\|DOWNLOADFILE_STATUS\|DTR_OFF\|DTR_ON\|DURATION_LONG\|DURATION_SHORT\|EDGE\|ELLIPSE\|ENCODING_AMIGA\|ENCODING_ISO8859_1\|ENCODING_RAW\|ENCODING_UTF8\|EOF\|ERR_8OR16BITONLY\|ERR_ACCELERATOR\|ERR_ADDAPPICON\|ERR_ADDAPPWIN\|ERR_ADDSYSEVENT\|ERR_ADDTASK\|ERR_ADFFREEDISP\|ERR_ADFWRONGDISP\|ERR_AFILEPROP\|ERR_AHI\|ERR_ALLOCALPHA\|ERR_ALLOCCHANNEL\|ERR_ALLOCCHUNKY\|ERR_ALLOCMASK\|ERR_ALRDYDECLRD\|ERR_ALREADYASYNC\|ERR_ALSAPCM\|ERR_AMIGAGUIDE\|ERR_ANIMDISK\|ERR_ANIMFRAME\|ERR_ANTIALIAS\|ERR_APPLET\|ERR_APPLETVERSION\|ERR_APPLICATION\|ERR_ARGS\|ERR_ARRAYDECLA\|ERR_ASSERTFAILED\|ERR_ATSUI\|ERR_AUDIOCONVERTER\|ERR_BACKFILL\|ERR_BAD8SVX\|ERR_BADBASE64\|ERR_BADBYTECODE\|ERR_BADCALLBACKRET\|ERR_BADCONSTANT\|ERR_BADDIMENSIONS\|ERR_BADENCODING\|ERR_BADINTEGER\|ERR_BADIP\|ERR_BADLAYERTYPE\|ERR_BADPLATFORM\|ERR_BADSIGNATURE\|ERR_BADUPVALUES\|ERR_BADURL\|ERR_BADWAVE\|ERR_BADYIELD\|ERR_BEGINREFRESH\|ERR_BGPICBUTTON\|ERR_BGPICPALETTE\|ERR_BGPICTYPE\|ERR_BITMAP\|ERR_BLKWOENDBLK\|ERR_BRACECLOSE\|ERR_BRACEOPEN\|ERR_BRACKETCLOSE\|ERR_BRACKETOPEN\|ERR_BRUSHLINK\|ERR_BRUSHSIZE\|ERR_BRUSHTYPE\|ERR_CACHEERROR\|ERR_CASECST\|ERR_CHANGEDIR\|ERR_CHANNELRANGE\|ERR_CHRCSTEMPTY\|ERR_CHRCSTLEN\|ERR_CLIPFORMAT\|ERR_CLIPOPEN\|ERR_CLIPREAD\|ERR_CLIPWRITE\|ERR_CLOSEDDISPLAY\|ERR_CLOSEFILE\|ERR_CMDASVAR\|ERR_CMPUNSUPPORTED\|ERR_COLORSPACE\|ERR_COMMENTSTRUCT\|ERR_COMMODITY\|ERR_COMPLEXEXPR\|ERR_COMPLEXPATTERN\|ERR_COMPLEXWHILE\|ERR_CONCAT\|ERR_CONFIG\|ERR_CONFIG2\|ERR_CONITEMS\|ERR_CONSOLEARG\|ERR_CONTEXTMENU\|ERR_COORDSRANGE\|ERR_COREFOUNDATION\|ERR_CORETEXT\|ERR_CREATEDIR\|ERR_CREATEDOCKY\|ERR_CREATEEVENT\|ERR_CREATEGC\|ERR_CREATEICON\|ERR_CREATEMENU\|ERR_CREATEPORT\|ERR_CREATESHORTCUT\|ERR_CSTDOUBLEDEF\|ERR_CTRLSTRUCT\|ERR_CYIELD\|ERR_DATATYPEALPHA\|ERR_DATATYPESAVE\|ERR_DATATYPESAVE2\|ERR_DBLENCODING\|ERR_DBPALETTE\|ERR_DBTRANSWIN\|ERR_DBVIDEOLAYER\|ERR_DDAUTOSCALE\|ERR_DDMOBILE\|ERR_DDRECVIDEO\|ERR_DEADRESUME\|ERR_DEFFONT\|ERR_DELETEFILE\|ERR_DEMO\|ERR_DEMO2\|ERR_DEMO3\|ERR_DEPTHMISMATCH\|ERR_DEPTHRANGE\|ERR_DESERIALIZE\|ERR_DIFFDEPTH\|ERR_DIFFENCODING\|ERR_DINPUT\|ERR_DIRECTSHOW\|ERR_DIRLOCK\|ERR_DISPLAYADAPTERSUPPORT\|ERR_DISPLAYDESKTOP\|ERR_DISPLAYDESKTOPPAL\|ERR_DISPLAYSIZE\|ERR_DISPMINIMIZED\|ERR_DLOPEN\|ERR_DOUBLEDECLA\|ERR_DOUBLEMENU\|ERR_DRAWPATH\|ERR_DSOUNDNOTIFY\|ERR_DSOUNDNOTIPOS\|ERR_DSOUNDPLAY\|ERR_ELSEIFAFTERELSE\|ERR_ELSETWICE\|ERR_ELSEWOIF\|ERR_EMPTYMENUTREE\|ERR_EMPTYOBJ\|ERR_EMPTYPATH\|ERR_EMPTYSCRIPT\|ERR_EMPTYTABLE\|ERR_ENDBLKWOBLK\|ERR_ENDDOUBLEBUFFER\|ERR_ENDFUNCWOFUNC\|ERR_ENDIFWOIF\|ERR_ENDSWCHWOSWCH\|ERR_ENDWITHWOWITH\|ERR_EQUALEXPECTED\|ERR_ERRORCALLED\|ERR_ESCREPLACE\|ERR_EVNTEXPCTED\|ERR_EXAMINE\|ERR_EXECUTE\|ERR_EXETYPE\|ERR_FGRABVIDSTATE\|ERR_FIELDINIT\|ERR_FILEEXIST\|ERR_FILEFORMAT\|ERR_FILENOTFOUND\|ERR_FILESIZE\|ERR_FINDACTIVITY\|ERR_FINDANIM\|ERR_FINDANIMSTREAM\|ERR_FINDAPPLICATION\|ERR_FINDARRAY\|ERR_FINDASYNCDRAW\|ERR_FINDASYNCOBJ\|ERR_FINDBGPIC\|ERR_FINDBRUSH\|ERR_FINDBUTTON\|ERR_FINDCLIENT\|ERR_FINDCLIPREGION\|ERR_FINDCST\|ERR_FINDDIR\|ERR_FINDDISPLAY\|ERR_FINDFILE\|ERR_FINDFONT\|ERR_FINDFONT2\|ERR_FINDICON\|ERR_FINDINTERVAL\|ERR_FINDLAYER\|ERR_FINDLAYERDATA\|ERR_FINDMEMBLK\|ERR_FINDMENU\|ERR_FINDMENUITEM\|ERR_FINDMONITOR\|ERR_FINDMOVE\|ERR_FINDMUSIC\|ERR_FINDOBJECTDATA\|ERR_FINDPALETTE\|ERR_FINDPATH\|ERR_FINDPLUGIN\|ERR_FINDPOINTER\|ERR_FINDPORT\|ERR_FINDSAMPLE\|ERR_FINDSELECTOR\|ERR_FINDSERIAL\|ERR_FINDSERVER\|ERR_FINDSPRITE\|ERR_FINDTEXTOBJECT\|ERR_FINDTIMEOUT\|ERR_FINDTIMER\|ERR_FINDUDPOBJECT\|ERR_FINDVIDEO\|ERR_FIRSTPREPROC\|ERR_FONTFORMAT\|ERR_FONTPATH\|ERR_FONTPATH2\|ERR_FORBIDMODAL\|ERR_FOREVERWOREPEAT\|ERR_FORWONEXT\|ERR_FRAMEGRABBER\|ERR_FREEABGPIC\|ERR_FREEADISPLAY\|ERR_FREECURPOINTER\|ERR_FT2\|ERR_FTPAUTH\|ERR_FTPERROR\|ERR_FULLSCREEN\|ERR_FUNCARGS\|ERR_FUNCDECLA\|ERR_FUNCEXPECTED\|ERR_FUNCJMP\|ERR_FUNCREMOVED\|ERR_FUNCTABLEARG\|ERR_FUNCWOENDFUNC\|ERR_GETDISKOBJ\|ERR_GETIFADDRS\|ERR_GETMONITORINFO\|ERR_GETSHORTCUT\|ERR_GRABSCREEN\|ERR_GROUPNAMEUSED\|ERR_GTK\|ERR_GUIGFX\|ERR_HEXPOINT\|ERR_HOSTNAME\|ERR_HTTPERROR\|ERR_HTTPTE\|ERR_HWBMCLOSEDISP\|ERR_HWBRUSH\|ERR_HWBRUSHFUNC\|ERR_HWDBFREEDISP\|ERR_ICONDIMS\|ERR_ICONENTRY\|ERR_ICONPARMS\|ERR_ICONSIZE\|ERR_ICONSTANDARD\|ERR_ICONVECTOR\|ERR_IFWOENDIF\|ERR_IMAGEERROR\|ERR_INCOMPATBRUSH\|ERR_INISYNTAX\|ERR_INITSERIAL\|ERR_INTERNAL\|ERR_INTERNAL1\|ERR_INTEXPECTED\|ERR_INVALIDDATE\|ERR_INVALIDUTF8\|ERR_INVALIDUTF8ARG\|ERR_INVCAPIDX\|ERR_INVINSERT\|ERR_INVNEXTKEY\|ERR_INVPATCAP\|ERR_INVREPLACE\|ERR_JAVA\|ERR_JAVAMETHOD\|ERR_JOYSTICK\|ERR_KEYFILE\|ERR_KEYNOTFOUND\|ERR_KEYWORD\|ERR_KICKSTART\|ERR_LABELDECLA\|ERR_LABELDOUBLE\|ERR_LABINFOR\|ERR_LABINFUNC\|ERR_LABINIF\|ERR_LABINWHILE\|ERR_LABMAINBLK\|ERR_LAYERRANGE\|ERR_LAYERSOFF\|ERR_LAYERSON\|ERR_LAYERSUPPORT\|ERR_LAYERSUPPORT2\|ERR_LAYERSWITCH\|ERR_LEGACYPTMOD\|ERR_LFSYNTAX\|ERR_LINKFONT\|ERR_LINKPLUGIN\|ERR_LOADFRAME\|ERR_LOADICON\|ERR_LOADPICTURE\|ERR_LOADPICTURE2\|ERR_LOADPLUGIN\|ERR_LOADSOUND\|ERR_LOADVIDEO\|ERR_LOCK\|ERR_LOCK2\|ERR_LOCKBMAP\|ERR_LOCKEDOBJ\|ERR_LOOPRANGE\|ERR_LOWFREQ\|ERR_MAGICKEY\|ERR_MALFORMPAT1\|ERR_MALFORMPAT2\|ERR_MASKNALPHA\|ERR_MAXLINES\|ERR_MAXLOCALS\|ERR_MAXPARAMS\|ERR_MAXUPVALS\|ERR_MEDIAFOUNDATION\|ERR_MEM\|ERR_MEMCODE\|ERR_MEMCST\|ERR_MEMRANGE\|ERR_MENUATTACHED\|ERR_MENUCOMPLEXITY\|ERR_MISSINGBRACKET\|ERR_MISSINGFIELD\|ERR_MISSINGOPBRACK\|ERR_MISSINGPARAMTR\|ERR_MISSINGSEPARTR\|ERR_MIXMUSMOD\|ERR_MOBILE\|ERR_MODIFYAANIM\|ERR_MODIFYABG\|ERR_MODIFYABGPIC\|ERR_MODIFYABR\|ERR_MODIFYPSMP\|ERR_MODIFYSPRITE\|ERR_MODIFYSPRITE2\|ERR_MONITORDIR\|ERR_MONITORFULLSCREEN\|ERR_MONITORRANGE\|ERR_MOVEFILE\|ERR_MSGPORT\|ERR_MULDISMOBILE\|ERR_MULTIBGPIC\|ERR_MULTIDISPLAYS\|ERR_MUSFMTSUPPORT\|ERR_MUSNOTPAUSED\|ERR_MUSNOTPLYNG\|ERR_MUSNOTPLYNG2\|ERR_MUSPAUSED\|ERR_MUSPLAYING\|ERR_NAMETOOLONG\|ERR_NAMEUSED\|ERR_NEEDAPPLICATION\|ERR_NEEDCOMPOSITE\|ERR_NEEDMORPHOS2\|ERR_NEEDOS41\|ERR_NEEDPALETTEIMAGE\|ERR_NEGCOORDS\|ERR_NEWHWPLUGIN\|ERR_NEXTWOFOR\|ERR_NOABSPATH\|ERR_NOACCESS\|ERR_NOALPHA\|ERR_NOANMLAYER\|ERR_NOAPPLET\|ERR_NOARGBVISUAL\|ERR_NOBLOCKBREAK\|ERR_NOCALLBACK\|ERR_NOCHANNEL\|ERR_NOCHAR\|ERR_NOCLIPREG\|ERR_NOCOLON\|ERR_NOCOMMA\|ERR_NOCOMPRESS\|ERR_NOCONSTANTS\|ERR_NOCONTEXTMENU\|ERR_NOCOORDCST\|ERR_NODIRPATTERN\|ERR_NODISLAYERS\|ERR_NODISPMODES\|ERR_NODOUBLEBUFFER\|ERR_NOFALLTHROUGH\|ERR_NOFILTERNAME\|ERR_NOFMBHANDLER\|ERR_NOFUNCTION\|ERR_NOHWFUNC\|ERR_NOJOYATPORT\|ERR_NOKEYWORDS\|ERR_NOLAYERS\|ERR_NOLOOP\|ERR_NOLOOPCONT\|ERR_NOMASKBRUSH\|ERR_NOMENU\|ERR_NOMIMEVIEWER\|ERR_NOMUSICCB\|ERR_NONE\|ERR_NONSUSPENDEDRESUME\|ERR_NOPALETTE\|ERR_NOPALETTEIMAGE\|ERR_NOPALETTEMODE\|ERR_NORETVAL\|ERR_NOREXX\|ERR_NOSPRITES\|ERR_NOTADIR\|ERR_NOTENOUGHPIXELS\|ERR_NOTIGER\|ERR_NOTPROTRACKER\|ERR_NOTRANSPARENCY\|ERR_NOTXTLAYER\|ERR_NUMBEREXPECTED\|ERR_NUMCALLBACK\|ERR_NUMCONCAT\|ERR_NUMEXPECTED\|ERR_NUMSTRCMP\|ERR_NUMTABLEARG\|ERR_OLDAPPLET\|ERR_OPENANIM\|ERR_OPENANIM2\|ERR_OPENAUDIO\|ERR_OPENFONT\|ERR_OPENLIB\|ERR_OPENSERIAL\|ERR_OPENSOCKET\|ERR_OPENSOUND\|ERR_OPENSOUND2\|ERR_OUTOFRANGE\|ERR_PAKFORMAT\|ERR_PALETTEFILL\|ERR_PALETTEMODE\|ERR_PALSCREEN\|ERR_PEERNAME\|ERR_PENRANGE\|ERR_PERCENTFORMAT\|ERR_PERCENTFORMATSTR\|ERR_PIPE\|ERR_PIXELFORMAT\|ERR_PIXELRANGE\|ERR_PLAYERCOMP\|ERR_PLAYVIDEO\|ERR_PLUGINARCH\|ERR_PLUGINDOUBLET\|ERR_PLUGINSUPPORT\|ERR_PLUGINSYMBOL\|ERR_PLUGINTYPE\|ERR_PLUGINVER\|ERR_POINTERFORMAT\|ERR_POINTERIMG\|ERR_PORTNOTAVAIL\|ERR_PREPROCSYM\|ERR_PROTMETATABLE\|ERR_PUBSCREEN\|ERR_QUICKTIME\|ERR_RADIOTOGGLEMENU\|ERR_RANDOMIZE\|ERR_READ\|ERR_READFILE\|ERR_READFUNC\|ERR_READONLY\|ERR_READRANGE\|ERR_READTABLE\|ERR_READVIDEOPIXELS\|ERR_RECVCLOSED\|ERR_RECVTIMEOUT\|ERR_RECVUNKNOWN\|ERR_REGCLASS\|ERR_REGISTRYREAD\|ERR_REGISTRYWRITE\|ERR_REMADLAYER\|ERR_RENAME\|ERR_RENDER\|ERR_RENDERADLAYER\|ERR_RENDERCALLBACK\|ERR_RENDERER\|ERR_REPEATWOUNTIL\|ERR_REQAUTH\|ERR_REQUIREFIELD\|ERR_REQUIREPLUGIN\|ERR_REQUIRETAGFMT\|ERR_RETWOGOSUB\|ERR_REVDWORD\|ERR_REWINDDIR\|ERR_REXXERR\|ERR_SATELLITE\|ERR_SATFREEDISP\|ERR_SAVEANIM\|ERR_SAVEICON\|ERR_SAVEIMAGE\|ERR_SAVEPNG\|ERR_SAVERALPHA\|ERR_SAVESAMPLE\|ERR_SCALEBGPIC\|ERR_SCREEN\|ERR_SCREENMODE\|ERR_SCREENSIZE\|ERR_SCRPIXFMT\|ERR_SEEK\|ERR_SEEKFILE\|ERR_SEEKFORMAT\|ERR_SEEKRANGE\|ERR_SELECTALPHACHANNEL\|ERR_SELECTANIM\|ERR_SELECTBG\|ERR_SELECTBGPIC\|ERR_SELECTBGPIC2\|ERR_SELECTBRUSH\|ERR_SELECTMASK\|ERR_SEMAPHORE\|ERR_SENDDATA\|ERR_SENDMESSAGE\|ERR_SENDTIMEOUT\|ERR_SENDUNKNOWN\|ERR_SERIALIO\|ERR_SERIALIZE\|ERR_SERIALIZETYPE\|ERR_SETADAPTER\|ERR_SETENV\|ERR_SETFILEATTR\|ERR_SETFILECOMMENT\|ERR_SETFILEDATE\|ERR_SETMENU\|ERR_SHORTIF\|ERR_SIGNAL\|ERR_SMODEALPHA\|ERR_SMPRANGE\|ERR_SOCKET\|ERR_SOCKNAME\|ERR_SOCKOPT\|ERR_SORTFUNC\|ERR_SPRITELINK\|ERR_SPRITEONSCREEN\|ERR_SPRITEONSCREEN2\|ERR_SQBRACKETCLOSE\|ERR_SQBRACKETOPEN\|ERR_STACK\|ERR_STAT\|ERR_STRCALLBACK\|ERR_STREAMASSAMPLE\|ERR_STREXPECTED\|ERR_STRINGCST\|ERR_STRINGEXPECTED\|ERR_STRORNUM\|ERR_STRTABLEARG\|ERR_STRTOOSHORT\|ERR_SURFACE\|ERR_SWCHWOENDSWCH\|ERR_SYNTAXERROR\|ERR_SYNTAXLEVELS\|ERR_SYSBUTTON\|ERR_SYSIMAGE\|ERR_SYSTOOOLD\|ERR_TABCALLBACK\|ERR_TABEXPECTED\|ERR_TABEXPECTED2\|ERR_TABEXPECTED3\|ERR_TABLEDECLA\|ERR_TABLEINDEX\|ERR_TABLEORNIL\|ERR_TABLEOVERFLOW\|ERR_TAGEXPECTED\|ERR_TASKSETUP\|ERR_TEXTARG\|ERR_TEXTCONVERT\|ERR_TEXTCONVERT2\|ERR_TEXTSYNTAX\|ERR_TEXTURE\|ERR_TFIMAGE\|ERR_TFVANIM\|ERR_TFVBGPICBRUSH\|ERR_TFVBRUSH\|ERR_TFVBRUSHBGPIC\|ERR_THREAD\|ERR_THREADEXPECTED\|ERR_TIMER\|ERR_TOKENEXPECTED\|ERR_TOOMANYARGS\|ERR_TOOMANYCAPTURES\|ERR_TOOSMALL2\|ERR_TRANSBGMOBILE\|ERR_TRANSBRUSH\|ERR_TRAYICON\|ERR_TRIALCOMPILE\|ERR_TRIALINCLUDE\|ERR_TRIALLIMIT\|ERR_TRIALSAVEVID\|ERR_UDEXPECTED\|ERR_UNBALANCEDPAT\|ERR_UNEXPECTEDEOF\|ERR_UNEXPECTEDSYM\|ERR_UNFINISHEDCAPTURE\|ERR_UNIMPLCMD\|ERR_UNKNOWN\|ERR_UNKNOWNANMOUT\|ERR_UNKNOWNATTR\|ERR_UNKNOWNCMD\|ERR_UNKNOWNCOND\|ERR_UNKNOWNFILTER\|ERR_UNKNOWNICNOUT\|ERR_UNKNOWNIMGOUT\|ERR_UNKNOWNMIMETYPE\|ERR_UNKNOWNMUSFMT\|ERR_UNKNOWNPALETTE\|ERR_UNKNOWNSEC\|ERR_UNKNOWNSEQ\|ERR_UNKNOWNSMPOUT\|ERR_UNKNOWNTAG\|ERR_UNKNUMFMT\|ERR_UNKPROTOCOL\|ERR_UNKTEXTFMT\|ERR_UNMPARENTHESES\|ERR_UNSETENV\|ERR_UNSUPPORTEDFEAT\|ERR_UNTERMINTDSTR\|ERR_UNTILWOREPEAT\|ERR_UPDATEICON\|ERR_UPLOADFORBIDDEN\|ERR_USERABORT\|ERR_VALUEEXPECTED\|ERR_VAREXPECTED\|ERR_VARLENGTH\|ERR_VARSYNTAX\|ERR_VECGFXPLUGIN\|ERR_VECTORANIM\|ERR_VECTORBRUSH\|ERR_VERSION\|ERR_VFONT\|ERR_VFONTTYPE\|ERR_VIDATTACHED\|ERR_VIDEOFRAME\|ERR_VIDEOINIT\|ERR_VIDEOLAYER\|ERR_VIDEOLAYERDRV\|ERR_VIDEOSTRATEGY\|ERR_VIDEOTRANS\|ERR_VIDLAYERFUNC\|ERR_VIDNOTPAUSED\|ERR_VIDNOTPLAYING\|ERR_VIDPAUSED\|ERR_VIDPLAYING\|ERR_VIDRECMULTI\|ERR_VIDRECTRANS\|ERR_VIDSTOPPED\|ERR_VISUALINFO\|ERR_VMMISMATCH\|ERR_WARPOS\|ERR_WENDWOWHILE\|ERR_WHILEWOWEND\|ERR_WINDOW\|ERR_WITHWOENDWITH\|ERR_WRITE\|ERR_WRITEFILE\|ERR_WRITEJPEG\|ERR_WRITEONLY\|ERR_WRONGCLIPREG\|ERR_WRONGCMDRECVIDEO\|ERR_WRONGDTYPE\|ERR_WRONGFLOAT\|ERR_WRONGHEX\|ERR_WRONGID\|ERR_WRONGOP\|ERR_WRONGOPCST\|ERR_WRONGSPRITESIZE\|ERR_WRONGUSAGE\|ERR_WRONGVSTRATEGY\|ERR_XCURSOR\|ERR_XDISPLAY\|ERR_XF86VIDMODEEXT\|ERR_XFIXES\|ERR_YIELD\|ERR_ZERODIVISION\|ERR_ZLIBDATA\|ERR_ZLIBIO\|ERR_ZLIBSTREAM\|ERR_ZLIBVERSION\|EVENTHANDLER\|FADE\|FASTMEMORY\|FASTSPEED\|FILE\|FILEATTR_ARCHIVE\|FILEATTR_DELETE_USR\|FILEATTR_EXECUTE_GRP\|FILEATTR_EXECUTE_OTH\|FILEATTR_EXECUTE_USR\|FILEATTR_HIDDEN\|FILEATTR_NORMAL\|FILEATTR_PURE\|FILEATTR_READ_GRP\|FILEATTR_READ_OTH\|FILEATTR_READ_USR\|FILEATTR_READONLY\|FILEATTR_SCRIPT\|FILEATTR_SYSTEM\|FILEATTR_WRITE_GRP\|FILEATTR_WRITE_OTH\|FILEATTR_WRITE_USR\|FILETYPE_ANIM\|FILETYPE_ICON\|FILETYPE_IMAGE\|FILETYPE_SOUND\|FILETYPE_VIDEO\|FILETYPEFLAGS_ALPHA\|FILETYPEFLAGS_FPS\|FILETYPEFLAGS_QUALITY\|FILETYPEFLAGS_SAVE\|FILLCOLOR\|FILLGRADIENT\|FILLNONE\|FILLRULEEVENODD\|FILLRULEWINDING\|FILLTEXTURE\|FLOAT\|FLOW_HARDWARE\|FLOW_OFF\|FLOW_XON_XOFF\|FONT\|FONTENGINE_INBUILT\|FONTENGINE_NATIVE\|FONTSLANT_ITALIC\|FONTSLANT_OBLIQUE\|FONTSLANT_ROMAN\|FONTTYPE_BITMAP\|FONTTYPE_COLOR\|FONTTYPE_VECTOR\|FONTWEIGHT_BLACK\|FONTWEIGHT_BOLD\|FONTWEIGHT_BOOK\|FONTWEIGHT_DEMIBOLD\|FONTWEIGHT_EXTRABLACK\|FONTWEIGHT_EXTRABOLD\|FONTWEIGHT_EXTRALIGHT\|FONTWEIGHT_HEAVY\|FONTWEIGHT_LIGHT\|FONTWEIGHT_MEDIUM\|FONTWEIGHT_NORMAL\|FONTWEIGHT_REGULAR\|FONTWEIGHT_SEMIBOLD\|FONTWEIGHT_THIN\|FONTWEIGHT_ULTRABLACK\|FONTWEIGHT_ULTRABOLD\|FONTWEIGHT_ULTRALIGHT\|FRAMEMODE_FULL\|FRAMEMODE_SINGLE\|FREESPACE\|FTPASCII\|FTPBINARY\|FUCHSIA\|FUNCTION\|GRAY\|GREEN\|HBLINDS128\|HBLINDS16\|HBLINDS32\|HBLINDS64\|HBLINDS8\|HCLOSECURTAIN\|HCLOSEGATE\|HEXNUMERICAL\|HFLIPCOIN\|HFLOWBOTTOM\|HFLOWTOP\|HIDEBRUSH\|HIDELAYER\|HKEY_CLASSES_ROOT\|HKEY_CURRENT_CONFIG\|HKEY_CURRENT_USER\|HKEY_LOCAL_MACHINE\|HKEY_USERS\|HLINES\|HLINES2\|HLOWFLIPCOIN\|HOLLYWOOD\|HOPENCURTAIN\|HOPENGATE\|HSPLIT\|HSTRANGEPUSH\|HSTRETCHCENTER\|HSTRIPES\|HSTRIPES16\|HSTRIPES2\|HSTRIPES32\|HSTRIPES4\|HSTRIPES64\|HSTRIPES8\|HW_64BIT\|HW_AMIGA\|HW_AMIGAOS3\|HW_AMIGAOS4\|HW_ANDROID\|HW_AROS\|HW_IOS\|HW_LINUX\|HW_LITTLE_ENDIAN\|HW_MACOS\|HW_MORPHOS\|HW_REVISION\|HW_VERSION\|HW_WARPOS\|HW_WINDOWS\|ICNFMT_HOLLYWOOD\|ICON\|IMAGETYPE_RASTER\|IMAGETYPE_VECTOR\|IMGFMT_BMP\|IMGFMT_GIF\|IMGFMT_ILBM\|IMGFMT_JPEG\|IMGFMT_NATIVE\|IMGFMT_PLUGIN\|IMGFMT_PNG\|IMGFMT_TIFF\|IMGFMT_UNKNOWN\|IMMERSIVE_LEANBACK\|IMMERSIVE_NONE\|IMMERSIVE_NORMAL\|IMMERSIVE_STICKY\|INACTIVEWINDOW\|INF\|INSERTBRUSH\|INTEGER\|INTERVAL\|IO_BUFFERED\|IO_FAKE64\|IO_LITTLEENDIAN\|IO_SIGNED\|IO_UNBUFFERED\|IO_UNSIGNED\|IPAUTO\|IPUNKNOWN\|IPV4\|IPV6\|ITALIC\|JOINBEVEL\|JOINMITER\|JOINROUND\|JOYDOWN\|JOYDOWNLEFT\|JOYDOWNRIGHT\|JOYLEFT\|JOYNODIR\|JOYRIGHT\|JOYUP\|JOYUPLEFT\|JOYUPRIGHT\|JUSTIFIED\|KEEPASPRAT\|KEEPPOSITION\|LANGUAGE_ABKHAZIAN\|LANGUAGE_AFAR\|LANGUAGE_AFRIKAANS\|LANGUAGE_AKAN\|LANGUAGE_ALBANIAN\|LANGUAGE_AMHARIC\|LANGUAGE_ARABIC\|LANGUAGE_ARAGONESE\|LANGUAGE_ARMENIAN\|LANGUAGE_ASSAMESE\|LANGUAGE_AVARIC\|LANGUAGE_AVESTAN\|LANGUAGE_AYMARA\|LANGUAGE_AZERBAIJANI\|LANGUAGE_BAMBARA\|LANGUAGE_BASHKIR\|LANGUAGE_BASQUE\|LANGUAGE_BELARUSIAN\|LANGUAGE_BENGALI\|LANGUAGE_BIHARI\|LANGUAGE_BISLAMA\|LANGUAGE_BOSNIAN\|LANGUAGE_BRETON\|LANGUAGE_BULGARIAN\|LANGUAGE_BURMESE\|LANGUAGE_CATALAN\|LANGUAGE_CENTRALKHMER\|LANGUAGE_CHAMORRO\|LANGUAGE_CHECHEN\|LANGUAGE_CHICHEWA\|LANGUAGE_CHINESE\|LANGUAGE_CHURCHSLAVIC\|LANGUAGE_CHUVASH\|LANGUAGE_CORNISH\|LANGUAGE_CORSICAN\|LANGUAGE_CREE\|LANGUAGE_CROATIAN\|LANGUAGE_CZECH\|LANGUAGE_DANISH\|LANGUAGE_DIVEHI\|LANGUAGE_DUTCH\|LANGUAGE_DZONGKHA\|LANGUAGE_ENGLISH\|LANGUAGE_ESPERANTO\|LANGUAGE_ESTONIAN\|LANGUAGE_EWE\|LANGUAGE_FAROESE\|LANGUAGE_FIJIAN\|LANGUAGE_FINNISH\|LANGUAGE_FRENCH\|LANGUAGE_FULAH\|LANGUAGE_GAELIC\|LANGUAGE_GALICIAN\|LANGUAGE_GANDA\|LANGUAGE_GEORGIAN\|LANGUAGE_GERMAN\|LANGUAGE_GREEK\|LANGUAGE_GREENLANDIC\|LANGUAGE_GUARANI\|LANGUAGE_GUJARATI\|LANGUAGE_HAITIAN\|LANGUAGE_HAUSA\|LANGUAGE_HEBREW\|LANGUAGE_HERERO\|LANGUAGE_HINDI\|LANGUAGE_HIRIMOTU\|LANGUAGE_HUNGARIAN\|LANGUAGE_ICELANDIC\|LANGUAGE_IDO\|LANGUAGE_IGBO\|LANGUAGE_INDONESIAN\|LANGUAGE_INTERLINGUA\|LANGUAGE_INTERLINGUE\|LANGUAGE_INUKTITUT\|LANGUAGE_INUPIAQ\|LANGUAGE_IRISH\|LANGUAGE_ITALIAN\|LANGUAGE_JAPANESE\|LANGUAGE_JAVANESE\|LANGUAGE_KANNADA\|LANGUAGE_KANURI\|LANGUAGE_KASHMIRI\|LANGUAGE_KAZAKH\|LANGUAGE_KIKUYU\|LANGUAGE_KINYARWANDA\|LANGUAGE_KIRGHIZ\|LANGUAGE_KOMI\|LANGUAGE_KONGO\|LANGUAGE_KOREAN\|LANGUAGE_KUANYAMA\|LANGUAGE_KURDISH\|LANGUAGE_LAO\|LANGUAGE_LATIN\|LANGUAGE_LATVIAN\|LANGUAGE_LIMBURGAN\|LANGUAGE_LINGALA\|LANGUAGE_LITHUANIAN\|LANGUAGE_LUBAKATANGA\|LANGUAGE_LUXEMBOURGISH\|LANGUAGE_MACEDONIAN\|LANGUAGE_MALAGASY\|LANGUAGE_MALAY\|LANGUAGE_MALAYALAM\|LANGUAGE_MALTESE\|LANGUAGE_MANX\|LANGUAGE_MAORI\|LANGUAGE_MARATHI\|LANGUAGE_MARSHALLESE\|LANGUAGE_MONGOLIAN\|LANGUAGE_NAURU\|LANGUAGE_NAVAJO\|LANGUAGE_NDONGA\|LANGUAGE_NEPALI\|LANGUAGE_NORTHERNSAMI\|LANGUAGE_NORTHNDEBELE\|LANGUAGE_NORWEGIAN\|LANGUAGE_NORWEGIANBOKMAL\|LANGUAGE_NORWEGIANNYNORSK\|LANGUAGE_OCCITAN\|LANGUAGE_OJIBWA\|LANGUAGE_ORIYA\|LANGUAGE_OROMO\|LANGUAGE_OSSETIAN\|LANGUAGE_PALI\|LANGUAGE_PANJABI\|LANGUAGE_PASHTO\|LANGUAGE_PERSIAN\|LANGUAGE_POLISH\|LANGUAGE_PORTUGUESE\|LANGUAGE_QUECHUA\|LANGUAGE_ROMANIAN\|LANGUAGE_ROMANSH\|LANGUAGE_RUNDI\|LANGUAGE_RUSSIAN\|LANGUAGE_SAMOAN\|LANGUAGE_SANGO\|LANGUAGE_SANSKRIT\|LANGUAGE_SARDINIAN\|LANGUAGE_SERBIAN\|LANGUAGE_SHONA\|LANGUAGE_SICHUANYI\|LANGUAGE_SINDHI\|LANGUAGE_SINHALA\|LANGUAGE_SLOVAK\|LANGUAGE_SLOVENIAN\|LANGUAGE_SOMALI\|LANGUAGE_SOUTHERNSOTHO\|LANGUAGE_SOUTHNDEBELE\|LANGUAGE_SPANISH\|LANGUAGE_SUNDANESE\|LANGUAGE_SWAHILI\|LANGUAGE_SWATI\|LANGUAGE_SWEDISH\|LANGUAGE_TAGALOG\|LANGUAGE_TAHITIAN\|LANGUAGE_TAJIK\|LANGUAGE_TAMIL\|LANGUAGE_TATAR\|LANGUAGE_TELUGU\|LANGUAGE_THAI\|LANGUAGE_TIBETAN\|LANGUAGE_TIGRINYA\|LANGUAGE_TONGA\|LANGUAGE_TSONGA\|LANGUAGE_TSWANA\|LANGUAGE_TURKISH\|LANGUAGE_TURKMEN\|LANGUAGE_TWI\|LANGUAGE_UIGHUR\|LANGUAGE_UKRAINIAN\|LANGUAGE_UNKNOWN\|LANGUAGE_URDU\|LANGUAGE_UZBEK\|LANGUAGE_VENDA\|LANGUAGE_VIETNAMESE\|LANGUAGE_WALLOON\|LANGUAGE_WELSH\|LANGUAGE_WESTERNFRISIAN\|LANGUAGE_WOLOF\|LANGUAGE_XHOSA\|LANGUAGE_YIDDISH\|LANGUAGE_YORUBA\|LANGUAGE_ZHUANG\|LANGUAGE_ZULU\|LAYER\|LAYER_VS_BOX\|LAYERBUTTON\|LEFT\|LEFTOUT\|LIGHTUSERDATA\|LIME\|LINE\|LINEAR\|LITTLEENDIAN\|LONG\|LOWERCURVE\|MAROON\|MASK\|MASKAND\|MASKINVISIBLE\|MASKOR\|MASKVANILLACOPY\|MASKVISIBLE\|MASKXOR\|MEMORY\|MENU\|MENUITEM_DISABLED\|MENUITEM_RADIO\|MENUITEM_SELECTED\|MENUITEM_TOGGLE\|MILLISECONDS\|MODE_READ\|MODE_READWRITE\|MODE_WRITE\|MODLALT\|MODLCOMMAND\|MODLCONTROL\|MODLSHIFT\|MODRALT\|MODRCOMMAND\|MODRCONTROL\|MODRSHIFT\|MONO16\|MONO8\|MONOSPACE\|MOVEFILE_COPY\|MOVEFILE_COPYFAILED\|MOVEFILE_DELETE\|MOVEFILE_DELETEFAILED\|MOVEFILE_UNPROTECT\|MOVELIST\|MOVEWINDOW\|MUSIC\|NAN\|NATIVE\|NATIVEENDIAN\|NAVY\|NETWORKCONNECTION\|NETWORKSERVER\|NETWORKUDP\|NEXTFRAME\|NEXTFRAME2\|NIL\|NOCOLOR\|NONE\|NOPEN\|NORMAL\|NORMALSPEED\|NOTRANSPARENCY\|NUMBER\|NUMERICAL\|OLIVE\|ONBUTTONCLICK\|ONBUTTONCLICKALL\|ONBUTTONOVER\|ONBUTTONOVERALL\|ONBUTTONRIGHTCLICK\|ONBUTTONRIGHTCLICKALL\|ONKEYDOWN\|ONKEYDOWNALL\|ORIENTATION_LANDSCAPE\|ORIENTATION_LANDSCAPEREV\|ORIENTATION_NONE\|ORIENTATION_PORTRAIT\|ORIENTATION_PORTRAITREV\|PALETTE\|PALETTE_AGA\|PALETTE_CGA\|PALETTE_DEFAULT\|PALETTE_EGA\|PALETTE_GRAY128\|PALETTE_GRAY16\|PALETTE_GRAY256\|PALETTE_GRAY32\|PALETTE_GRAY4\|PALETTE_GRAY64\|PALETTE_GRAY8\|PALETTE_MACINTOSH\|PALETTE_MONOCHROME\|PALETTE_OCS\|PALETTE_WINDOWS\|PALETTE_WORKBENCH\|PALETTEMODE_PEN\|PALETTEMODE_REMAP\|PARITY_EVEN\|PARITY_NONE\|PARITY_ODD\|PERMREQ_READEXTERNAL\|PERMREQ_WRITEEXTERNAL\|PI\|PIXELZOOM1\|PIXELZOOM2\|PLOT\|PLUGINCAPS_ANIM\|PLUGINCAPS_AUDIOADAPTER\|PLUGINCAPS_CONVERT\|PLUGINCAPS_DIRADAPTER\|PLUGINCAPS_DISPLAYADAPTER\|PLUGINCAPS_EXTENSION\|PLUGINCAPS_FILEADAPTER\|PLUGINCAPS_ICON\|PLUGINCAPS_IMAGE\|PLUGINCAPS_IPCADAPTER\|PLUGINCAPS_LIBRARY\|PLUGINCAPS_NETWORKADAPTER\|PLUGINCAPS_REQUESTERADAPTER\|PLUGINCAPS_REQUIRE\|PLUGINCAPS_SAVEANIM\|PLUGINCAPS_SAVEICON\|PLUGINCAPS_SAVEIMAGE\|PLUGINCAPS_SAVESAMPLE\|PLUGINCAPS_SERIALIZE\|PLUGINCAPS_SOUND\|PLUGINCAPS_TIMERADAPTER\|PLUGINCAPS_VECTOR\|PLUGINCAPS_VIDEO\|POINTER\|POLYGON\|PRGTYPE_APPLET\|PRGTYPE_PROGRAM\|PRGTYPE_SCRIPT\|PRINT\|PURPLE\|PUSHBOTTOM\|PUSHLEFT\|PUSHRIGHT\|PUSHTOP\|PUZZLE\|QUADRECT\|QUARTERS\|RADIAL\|RANDOMEFFECT\|RANDOMPARAMETER\|RECEIVEALL\|RECEIVEBYTES\|RECEIVEDATA_PACKET\|RECEIVELINE\|RECTBACKCENTER\|RECTBACKEAST\|RECTBACKNORTH\|RECTBACKNORTHEAST\|RECTBACKNORTHWEST\|RECTBACKSOUTH\|RECTBACKSOUTHEAST\|RECTBACKSOUTHWEST\|RECTBACKWEST\|RECTCENTER\|RECTEAST\|RECTNORTH\|RECTNORTHEAST\|RECTNORTHWEST\|RECTSOUTH\|RECTSOUTHEAST\|RECTSOUTHWEST\|RECTWEST\|RED\|REMOVELAYER\|REQ_CAMERA\|REQ_GALLERY\|REQ_HIDEICONS\|REQ_MULTISELECT\|REQ_NORMAL\|REQ_SAVEMODE\|REQICON_ERROR\|REQICON_INFORMATION\|REQICON_NONE\|REQICON_QUESTION\|REQICON_WARNING\|REVEALBOTTOM\|REVEALLEFT\|REVEALRIGHT\|REVEALTOP\|RIGHT\|RIGHTOUT\|ROLLLEFT\|ROLLTOP\|RTS_OFF\|RTS_ON\|SAMPLE\|SANS\|SCALEMODE_AUTO\|SCALEMODE_LAYER\|SCALEMODE_NONE\|SCROLLBOTTOM\|SCROLLEAST\|SCROLLLEFT\|SCROLLNORTH\|SCROLLNORTHEAST\|SCROLLNORTHWEST\|SCROLLRIGHT\|SCROLLSOUTH\|SCROLLSOUTHEAST\|SCROLLSOUTHWEST\|SCROLLTOP\|SCROLLWEST\|SECONDS\|SEEK_BEGINNING\|SEEK_CURRENT\|SEEK_END\|SELMODE_COMBO\|SELMODE_LAYERS\|SELMODE_NORMAL\|SERIAL\|SERIF\|SERVER\|SHADOW\|SHAPE\|SHDWEAST\|SHDWNORTH\|SHDWNORTHEAST\|SHDWNORTHWEST\|SHDWSOUTH\|SHDWSOUTHEAST\|SHDWSOUTHWEST\|SHDWWEST\|SHORT\|SILVER\|SIMPLEBUTTON\|SINE\|SIZEWINDOW\|SLIDEBOTTOM\|SLIDELEFT\|SLIDERIGHT\|SLIDETOP\|SLOWSPEED\|SMOOTHOUT\|SMPFMT_WAVE\|SNAPDESKTOP\|SNAPDISPLAY\|SNAPWINDOW\|SPIRAL\|SPRITE\|SPRITE_VS_BOX\|SPRITE_VS_BRUSH\|STAR\|STDERR\|STDIN\|STDOUT\|STDPTR_BUSY\|STDPTR_CUSTOM\|STDPTR_SYSTEM\|STEREO16\|STEREO8\|STOP_1\|STOP_2\|STRETCHBOTTOM\|STRETCHLEFT\|STRETCHRIGHT\|STRETCHTOP\|STRING\|STRUDEL\|SUN\|SWISS\|TABLE\|TEAL\|TEXTOBJECT\|TEXTOUT\|THREAD\|TICKS\|TIMEOUT\|TIMER\|TOP\|TOPOUT\|TRUETYPE_DEFAULT\|TURNDOWNBOTTOM\|TURNDOWNLEFT\|TURNDOWNRIGHT\|TURNDOWNTOP\|UDPCLIENT\|UDPNONE\|UDPOBJECT\|UDPSERVER\|UNDERLINED\|UNDO\|UPLOADFILE_RESPONSE\|UPLOADFILE_STATUS\|UPNDOWN\|UPPERCURVE\|USEDSPACE\|USELAYERPOSITION\|USERDATA\|VANILLACOPY\|VBLINDS128\|VBLINDS16\|VBLINDS32\|VBLINDS64\|VBLINDS8\|VCLOSECURTAIN\|VCLOSEGATE\|VECTORPATH\|VFLIPCOIN\|VFLOWLEFT\|VFLOWRIGHT\|VIDDRV_HOLLYWOOD\|VIDDRV_OS\|VIDEO\|VIEWMODE_DATE\|VIEWMODE_ICONS\|VIEWMODE_NAME\|VIEWMODE_NONE\|VIEWMODE_SIZE\|VIEWMODE_TYPE\|VLINES\|VLINES2\|VLOWFLIPCOIN\|VOID\|VOPENCURTAIN\|VOPENGATE\|VSPLIT\|VSTRANGEPUSH\|VSTRETCHCENTER\|VSTRIPES\|VSTRIPES16\|VSTRIPES2\|VSTRIPES32\|VSTRIPES4\|VSTRIPES64\|VSTRIPES8\|WALLPAPERLEFT\|WALLPAPERTOP\|WATER1\|WATER2\|WATER3\|WATER4\|WHITE\|WORD\|YELLOW\|ZOOMCENTER\|ZOOMEAST\|ZOOMIN\|ZOOMNORTH\|ZOOMNORTHEAST\|ZOOMNORTHWEST\|ZOOMOUT\|ZOOMSOUTH\|ZOOMSOUTHEAST\|ZOOMSOUTHWEST\|ZOOMWEST\)\>" " Hollywood Functions -syn keyword hwFunction Abs ACos ARGB ActivateDisplay Add AddArcToPath AddBoxToPath AddCircleToPath AddEllipseToPath AddFontPath AddIconImage AddMove AddStr AddTab AddTextToPath AllocMem AllocMemFromPointer AllocMemFromVirtualFile AppendPath ApplyPatch Arc ArcDistortBrush ArrayToStr Asc ASin Assert AsyncDrawFrame ATan ATan2 BarrelDistortBrush Base64Str Beep BeginAnimStream BeginDoubleBuffer BeginRefresh BGPicToBrush BinStr BitClear BitComplement BitSet BitTest BitXor Blue BlurBrush Box BreakEventHandler BreakWhileMouseOn BrushToBGPic BrushToGray BrushToMonochrome BrushToPenArray BrushToRGBArray ByteAsc ByteChr ByteLen ByteOffset ByteStrStr ByteVal CRC32 CRC32Str CallJavaMethod CancelAsyncDraw CancelAsyncOperation CanonizePath Cast Ceil ChangeApplicationIcon ChangeBrushTransparency ChangeDirectory ChangeDisplayMode ChangeDisplaySize ChangeInterval CharcoalBrush CharOffset CharWidth CheckEvent CheckEvents Chr Circle ClearClipboard ClearEvents ClearInterval ClearMove ClearObjectData ClearPath ClearScreen ClearSerialQueue ClearTimeout CloseAmigaGuide CloseAnim CloseAudio CloseCatalog CloseConnection CloseDirectory CloseDisplay CloseFile CloseFont CloseMusic ClosePath CloseResourceMonitor CloseSerialPort CloseServer CloseUDPObject CloseVideo Cls CollectGarbage Collision ColorRequest CompareDates CompareStr CompressFile Concat ConsolePrint ConsolePrintNR ConsolePrompt ContinueAsyncOperation ContrastBrush ContrastPalette ConvertStr ConvertToBrush CopyAnim CopyBGPic CopyBrush CopyFile CopyLayer CopyMem CopyObjectData CopyPalette CopyPath CopyPens CopySample CopySprite CopyTable CopyTextObject Cos CountDirectoryEntries CountJoysticks CountStr CreateAnim CreateBGPic CreateBorderBrush CreateBrush CreateButton CreateClipRegion CreateCoroutine CreateDisplay CreateGradientBGPic CreateGradientBrush CreateIcon CreateKeyDown CreateLayer CreateList CreateMenu CreateMusic CreatePalette CreatePointer CreatePort CreateRainbowBGPic CreateRexxPort CreateSample CreateServer CreateShadowBrush CreateShortcut CreateSprite CreateTextObject CreateTexturedBGPic CreateTexturedBrush CreateUDPObject CropBrush CtrlCQuit CurveTo CyclePalette DateToTimestamp DateToUTC DebugOutput DebugPrint DebugPrintNR DebugPrompt DebugStr DebugVal DecompressFile DecreasePointer DefineVirtualFile DefineVirtualFileFromString Deg DeleteAlphaChannel DeleteButton DeleteFile DeleteMask DeletePrefs DeselectMenuItem DeserializeTable DirectoryItems DisableButton DisableEvent DisableEventHandler DisableLayers DisableLineHook DisableMenuItem DisablePlugin DisablePrecalculation DisableVWait DisplayAnimFrame DisplayBGPic DisplayBGPicPart DisplayBGPicPartFX DisplayBrush DisplayBrushFX DisplayBrushPart DisplaySprite DisplayTextObject DisplayTextObjectFX DisplayTransitionFX DisplayVideoFrame Div DoMove DownloadFile DrawPath DumpButtons DumpLayers DumpMem DumpVideo DumpVideoTime EdgeBrush Ellipse EmbossBrush EmptyStr EnableButton EnableEventHandler EnableEvent EnableLayers EnableLineHook EnableMenuItem EnablePlugin EnablePrecalculation EnableVWait End EndDoubleBuffer EndianSwap EndRefresh EndSelect EndsWith Eof Error EscapeQuit Eval Execute Exists ExitOnError Exp ExtractPalette FileAttributes FileLength FileLines FilePart FilePos FileRequest FileSize FileToString FillMem FillMusicBuffer FindStr FinishAnimStream FinishAsyncDraw Flip FlipBrush FlipSprite FloodFill Floor FlushFile FlushMusicBuffer FlushSerialPort FontRequest ForcePathUse ForceSound ForceVideoDriver ForceVideoMode ForEach ForEachI FormatStr Frac FreeAnim FreeBGPic FreeBrush FreeClipRegion FreeDisplay FreeEventCache FreeGlyphCache FreeIcon FreeLayers FreeMem FreeMenu FreeModule FreePalette FreePath FreePointer FreeSample FreeSprite FreeTextObject FrExp FullPath GammaBrush GammaPalette GCInfo GetAnimFrame GetApplicationInfo GetApplicationList GetAsset GetAttribute GetAvailableFonts GetBaudRate GetBestPen GetBrushLink GetBrushPen GetBulletColor GetCatalogString GetChannels GetCharMaps GetClipboard GetCommandLine GetConnectionIP GetConnectionPort GetConnectionProtocol GetConstant GetCoroutineStatus GetCountryInfo GetCurrentDirectory GetCurrentPoint GetDash GetDataBits GetDate GetDateNum GetDefaultEncoding GetDirectoryEntry GetDisplayModes GetDTR GetEnv GetErrorName GetEventCode GetFileArgument GetFileAttributes GetFillRule GetFillStyle GetFlowControl GetFontColor GetFontStyle GetFormStyle GetFPSLimit GetFrontScreen GetHostName GetIconProperties GetItem GetKerningPair GetLanguageInfo GetLastError GetLayerAtPos GetLayerPen GetLayerStyle GetLineCap GetLineJoin GetLineWidth GetLocalInterfaces GetLocalIP GetLocalPort GetLocalProtocol GetMACAddress GetMemoryInfo GetMemPointer GetMemString GetMetaTable GetMiterLimit GetMonitors GetObjectData GetObjects GetObjectType GetPalettePen GetParity GetPathExtents GetPatternPosition GetPen GetPlugins GetProgramDirectory GetProgramInfo GetPubScreens GetRandomColor GetRandomFX GetRealColor GetRTS GetSampleData GetShortcutPath GetSongPosition GetStartDirectory GetStopBits GetSystemCountry GetSystemInfo GetSystemLanguage GetTempFileName GetTime GetTimer GetTimestamp GetTimeZone GetType GetVersion GetVideoFrame GetVolumeInfo GetVolumeName GetWeekday Gosub Goto GrabDesktop Green HaveFreeChannel HaveItem HaveObject HaveObjectData HavePlugin HaveVolume HexStr HideDisplay HideKeyboard HideLayer HideLayerFX HidePointer HideScreen Hypot IgnoreCase IIf ImageRequest IncreasePointer InKeyStr InsertItem InsertLayer InsertSample InsertStr InstallEventHandler Intersection Int InvertAlphaChannel InvertBrush InvertMask InvertPalette IPairs IsAbsolutePath IsAlNum IsAlpha IsAnim IsAnimPlaying IsBrushEmpty IsChannelPlaying IsCntrl IsDigit IsDirectory IsFinite IsGraph IsInf IsKeyDown IsLeftMouse IsLower IsMenuItemDisabled IsMenuItemSelected IsMidMouse IsModule IsMusicPlaying IsMusic IsNan IsNil IsOnline IsPathEmpty IsPicture IsPrint IsPunct IsRightMouse IsSamplePlaying IsSample IsSound IsSpace IsTableEmpty IsUnicode IsUpper IsVideo IsVideoPlaying IsXDigit JoyDir JoyFire Label LayerExists LayerToBack LayerToFront Ld LdExp LeftMouseQuit LeftStr LegacyControl Limit Line LineTo ListItems ListRequest Ln LoadAnim LoadAnimFrame LoadBGPic LoadBrush LoadIcon LoadModule LoadPalette LoadPlugin LoadPrefs LoadSample LoadSprite Locate Log LowerStr MakeButton MakeDate MakeDirectory MakeHostPath MatchPattern Max MD5 MD5Str MemToTable MidStr Min MixBrush MixRGB MixSample ModifyAnimFrames ModifyButton ModifyKeyDown ModifyLayerFrames ModulateBrush Mod ModulatePalette MonitorDirectory MouseX MouseY MoveAnim MoveBrush MoveDisplay MoveFile MoveLayer MovePointer MoveSprite MoveTextObject MoveTo Mul NextDirectoryEntry NextFrame NextItem NormalizePath NPrint OilPaintBrush OpenAmigaGuide OpenAnim OpenAudio OpenCatalog OpenConnection OpenDirectory OpenDisplay OpenFile OpenFont OpenMusic OpenResourceMonitor OpenSerialPort OpenURL OpenVideo Pack PadNum Pairs PaletteToGray ParseDate PathItems PathPart PathRequest PathToBrush PatternFindStr PatternFindStrDirect PatternFindStrShort PatternReplaceStr PauseLayer PauseModule PauseMusic PauseTimer PauseVideo PeekClipboard Peek PenArrayToBrush PerformSelector PermissionRequest PerspectiveDistortBrush Pi PixelateBrush PlayAnim PlayAnimDisk PlayLayer PlayModule PlayMusic PlaySample PlaySubsong PlayVideo Plot Poke PolarDistortBrush PollSerialQueue Polygon Pow Print QuantizeBrush Rad RaiseOnError RasterizeBrush RawDiv RawEqual RawGet RawSet ReadBrushPixel ReadByte ReadBytes ReadChr ReadDirectory ReadFloat ReadFunction ReadInt ReadLine ReadMem ReadPen ReadPixel ReadRegistryKey ReadSerialData ReadShort ReadString ReadTable ReceiveData ReceiveUDPData Red ReduceAlphaChannel RefreshDisplay RelCurveTo RelLineTo RelMoveTo RemapBrush RemoveBrushPalette RemoveButton RemoveIconImage RemoveItem RemoveKeyDown RemoveLayer RemoveLayerFX RemoveLayers RemoveSprite RemoveSprites Rename RepeatStr ReplaceColors ReplaceStr ResetKeyStates ResetTabs ResetTimer ResolveHostName ResumeCoroutine ResumeLayer ResumeModule ResumeMusic ResumeTimer ResumeVideo ReverseFindStr ReverseStr RewindDirectory RGB RGBArrayToBrush RightStr Rnd RndF RndStrong Rol Ror RotateBrush RotateLayer RotateTextObject Round Rt Run RunCallback RunRexxScript Sar SaveAnim SaveBrush SaveIcon SavePalette SavePrefs SaveSample SaveSnapshot ScaleAnim ScaleBGPic ScaleBrush ScaleLayer ScaleSprite ScaleTextObject Seek SeekLayer SeekMusic SeekVideo SelectAlphaChannel SelectAnim SelectBGPic SelectBrush SelectDisplay SelectLayer SelectMask SelectMenuItem SelectPalette SendApplicationMessage SendData SendMessage SendRexxCommand SendUDPData SepiaToneBrush SerializeTable SetAlphaIntensity SetAnimFrameDelay SetBaudRate SetBorderPen SetBrushDepth SetBrushPalette SetBrushPen SetBrushTransparency SetBrushTransparentPen SetBulletColor SetBulletPen SetChannelVolume SetClipboard SetClipRegion SetCycleTable SetDash SetDataBits SetDefaultEncoding SetDepth SetDisplayAttributes SetDitherMode SetDrawPen SetDrawTagsDefault SetDTR SetEnv SetEventTimeout SetFileAttributes SetFileEncoding SetFillRule SetFillStyle SetFlowControl SetFont SetFontColor SetFontStyle SetFormStyle SetFPSLimit SetGradientPalette SetIconProperties SetInterval SetIOMode SetLayerAnchor SetLayerBorder SetLayerDepth SetLayerFilter SetLayerLight SetLayerName SetLayerPalette SetLayerPen SetLayerShadow SetLayerStyle SetLayerTint SetLayerTransparency SetLayerTransparentPen SetLayerVolume SetLayerZPos SetLineCap SetLineJoin SetLineWidth SetListItems SetMargins SetMaskMode SetMasterVolume SetMetaTable SetMiterLimit SetMusicVolume SetNetworkProtocol SetNetworkTimeout SetObjectData SetPalette SetPaletteDepth SetPaletteMode SetPalettePen SetPaletteTransparentPen SetPanning SetParity SetPen SetPitch SetPointer SetRTS SetScreenTitle SetShadowPen SetSpriteZPos SetStandardIconImage SetStandardPalette SetStopBits SetSubtitle SetTimeout SetTimerElapse SetTitle SetTransparentPen SetTransparentThreshold SetTrayIcon SetVarType SetVectorEngine SetVideoPosition SetVideoSize SetVideoVolume SetVolume SetWBIcon Sgn SharpenBrush Shl ShowDisplay ShowKeyboard ShowLayer ShowLayerFX ShowNotification ShowPointer ShowRinghioMessage ShowScreen ShowToast Shr Sin SolarizeBrush SolarizePalette Sort SplitStr Sqrt StartPath StartSubPath StartTimer StartsWith StopAnim StopChannel StopLayer StopModule StopMusic StopSample StopTimer StopVideo StringRequest StringToFile StripStr StrLen StrStr StrToArray Sub SwapLayers SwirlBrush SystemRequest TableItems TableToMem Tan TextExtent TextHeight TextOut TextWidth TimerElapsed TimestampToDate TintBrush TintPalette ToHostName ToIP ToNumber ToString ToUserData TransformBrush TransformLayer TranslateLayer TranslatePath TrimBrush TrimStr UndefineVirtualStringFile Undo UndoFX UnleftStr UnmidStr Unpack UnrightStr UnsetEnv UploadFile UpperStr Usage UseCarriageReturn UseFont UTCToDate Val ValidateDate ValidateStr Vibrate VWait Wait WaitAnimEnd WaitEvent WaitKeyDown WaitLeftMouse WaitMidMouse WaitPatternPosition WaitRightMouse WaitSampleEnd WaitSongPosition WaitTimer WaterRippleBrush WhileKeyDown WhileMouseDown WhileMouseOn WhileRightMouseDown Wrap WriteAnimFrame WriteBrushPixel WriteByte WriteBytes WriteChr WriteFloat WriteFunction WriteInt WriteLine WriteMem WritePen WriteRegistryKey WriteSerialData WriteShort WriteString WriteTable YieldCoroutine +syn keyword hwFunction Abs ACos ActivateDisplay Add AddArcToPath AddBoxToPath AddCircleToPath AddEllipseToPath AddFontPath AddIconImage AddMove AddStr AddTab AddTextToPath AllocConsoleColor AllocMem AllocMemFromPointer AllocMemFromVirtualFile AppendPath ApplyPatch Arc ArcDistortBrush ARGB ArrayToStr Asc ASin Assert AsyncDrawFrame ATan ATan2 BarrelDistortBrush Base64Str Beep BeepConsole BeginAnimStream BeginDoubleBuffer BeginRefresh BGPicToBrush BinStr BitClear BitComplement BitSet BitTest BitXor Blue BlurBrush Box BreakEventHandler BreakWhileMouseOn BrushToBGPic BrushToGray BrushToMonochrome BrushToPenArray BrushToRGBArray ByteAsc ByteChr ByteLen ByteOffset ByteStrStr ByteVal CallJavaMethod CancelAsyncDraw CancelAsyncOperation CanonizePath Cast Ceil ChangeApplicationIcon ChangeBrushTransparency ChangeDirectory ChangeDisplayMode ChangeDisplaySize ChangeInterval CharcoalBrush CharOffset CharWidth CheckEvent CheckEvents Chr Circle ClearClipboard ClearConsole ClearConsoleStyle ClearEvents ClearInterval ClearMove ClearObjectData ClearPath ClearScreen ClearSerialQueue ClearTimeout CloseAmigaGuide CloseAnim CloseAudio CloseCatalog CloseConnection CloseConsole CloseDirectory CloseDisplay CloseFile CloseFont CloseMusic ClosePath CloseResourceMonitor CloseSerialPort CloseServer CloseUDPObject CloseVideo Cls CollectGarbage Collision ColorRequest CompareDates CompareStr CompressFile Concat ConfigureJoystick ConsolePrint ConsolePrintChr ConsolePrintNR ConsolePrompt ContinueAsyncOperation ContrastBrush ContrastPalette ConvertStr ConvertToBrush CopyAnim CopyBGPic CopyBrush CopyConsoleWindow CopyFile CopyLayer CopyMem CopyObjectData CopyPalette CopyPath CopyPens CopySample CopySprite CopyTable CopyTextObject Cos CountDirectoryEntries CountJoysticks CountStr CRC32 CRC32Str CreateAnim CreateBGPic CreateBorderBrush CreateBrush CreateButton CreateClipRegion CreateConsoleWindow CreateCoroutine CreateDisplay CreateFont CreateGradientBGPic CreateGradientBrush CreateIcon CreateKeyDown CreateLayer CreateList CreateMenu CreateMusic CreatePalette CreatePointer CreatePort CreateRainbowBGPic CreateRexxPort CreateSample CreateServer CreateShadowBrush CreateShortcut CreateSprite CreateTextObject CreateTexturedBGPic CreateTexturedBrush CreateUDPObject CropBrush CtrlCQuit CurveTo CyclePalette DateToTimestamp DateToUTC DebugOutput DebugPrint DebugPrintNR DebugPrompt DebugStr DebugVal DecomposeConsoleChr DecompressFile DecreasePointer DefineVirtualFile DefineVirtualFileFromString Deg DeleteAlphaChannel DeleteButton DeleteConsoleChr DeleteConsoleLine DeleteFile DeleteMask DeletePrefs DeselectMenuItem DeserializeTable DirectoryItems DisableAdvancedConsole DisableButton DisableEvent DisableEventHandler DisableLayers DisableLineHook DisableMenuItem DisablePlugin DisablePrecalculation DisableVWait DisplayAnimFrame DisplayBGPic DisplayBGPicPart DisplayBGPicPartFX DisplayBrush DisplayBrushFX DisplayBrushPart DisplaySprite DisplayTextObject DisplayTextObjectFX DisplayTransitionFX DisplayVideoFrame Div DoMove DownloadFile DrawConsoleBorder DrawConsoleBox DrawConsoleHLine DrawConsoleVLine DrawPath DumpButtons DumpLayers DumpMem DumpVideo DumpVideoTime EdgeBrush Ellipse EmbossBrush EmptyStr EnableAdvancedConsole EnableButton EnableEvent EnableEventHandler EnableLayers EnableLineHook EnableMenuItem EnablePlugin EnablePrecalculation EnableVWait End EndDoubleBuffer EndianSwap EndRefresh EndSelect EndsWith Eof EraseConsole Error EscapeQuit Eval Execute Exists ExitOnError Exp ExtendBrush ExtractPalette FileAttributes FileLength FileLines FilePart FilePos FileRequest FileSize FileToString FillMem FillMusicBuffer FindStr FinishAnimStream FinishAsyncDraw FlashConsole Flip FlipBrush FlipSprite FloodFill Floor FlushFile FlushMusicBuffer FlushSerialPort FontRequest ForcePathUse ForceSound ForceVideoDriver ForceVideoMode ForEach ForEachI FormatConsoleLine FormatDate FormatNumber FormatStr Frac FreeAnim FreeBGPic FreeBrush FreeClipRegion FreeConsoleColor FreeConsoleWindow FreeDisplay FreeEventCache FreeGlyphCache FreeIcon FreeLayers FreeMem FreeMenu FreeModule FreePalette FreePath FreePointer FreeSample FreeSprite FreeTextObject FrExp FullPath GammaBrush GammaPalette GCInfo GetAllocConsoleColor GetAnimFrame GetApplicationInfo GetApplicationList GetAsset GetAttribute GetAvailableFonts GetBaudRate GetBestPen GetBrushLink GetBrushPen GetBulletColor GetCatalogString GetChannels GetCharMaps GetClipboard GetCommandLine GetConnectionIP GetConnectionPort GetConnectionProtocol GetConsoleBackground GetConsoleChr GetConsoleColor GetConsoleControlChr GetConsoleCursor GetConsoleOrigin GetConsoleSize GetConsoleStr GetConsoleStyle GetConsoleWindow GetConstant GetCoroutineStatus GetCountryInfo GetCurrentDirectory GetCurrentPoint GetDash GetDataBits GetDate GetDateNum GetDefaultAdapter GetDefaultEncoding GetDefaultLoader GetDirectoryEntry GetDisplayModes GetDTR GetEnv GetErrorName GetEventCode GetFileArgument GetFileAttributes GetFillRule GetFillStyle GetFlowControl GetFontColor GetFontStyle GetFormStyle GetFPSLimit GetFreePen GetFrontScreen GetHostName GetIconProperties GetItem GetKerningPair GetLanguageInfo GetLastError GetLayerAtPos GetLayerGroupMembers GetLayerGroups GetLayerPen GetLayerStyle GetLineCap GetLineJoin GetLineWidth GetLocaleInfo GetLocalInterfaces GetLocalIP GetLocalPort GetLocalProtocol GetMACAddress GetMemoryInfo GetMemPointer GetMemString GetMetaTable GetMiterLimit GetMonitors GetObjectData GetObjects GetObjectType GetPalettePen GetParity GetPathExtents GetPatternPosition GetPen GetPlugins GetProgramDirectory GetProgramInfo GetPubScreens GetRandomColor GetRandomFX GetRawArguments GetRealColor GetRTS GetSampleData GetSerializeMode GetShortcutPath GetSongPosition GetStartDirectory GetStopBits GetSystemCountry GetSystemInfo GetSystemLanguage GetTempFileName GetTime GetTimer GetTimestamp GetTimeZone GetType GetVersion GetVideoFrame GetVolumeInfo GetVolumeName GetWeekday Gosub Goto GrabDesktop Green GroupLayer HasItem HaveConsole HaveFreeChannel HaveItem HaveObject HaveObjectData HavePlugin HaveVolume HexStr HideConsoleCursor HideDisplay HideKeyboard HideLayer HideLayerFX HidePointer HideScreen Hypot IgnoreCase IIf ImageRequest IncreasePointer InitConsoleColor InKeyStr InsertConsoleChr InsertConsoleLine InsertConsoleStr InsertItem InsertLayer InsertSample InsertStr InstallEventHandler Int Intersection InvertAlphaChannel InvertBrush InvertMask InvertPalette IPairs IsAbsolutePath IsAlNum IsAlpha IsAnim IsAnimPlaying IsBrushEmpty IsChannelPlaying IsCntrl IsDigit IsDirectory IsFinite IsGraph IsInf IsKeyDown IsLeftMouse IsLower IsMenuItemDisabled IsMenuItemSelected IsMidMouse IsModule IsMusic IsMusicPlaying IsNan IsNil IsOnline IsPathEmpty IsPicture IsPrint IsPunct IsRightMouse IsSample IsSamplePlaying IsSound IsSpace IsTableEmpty IsUnicode IsUpper IsVideo IsVideoPlaying IsXDigit JoyAxisX JoyAxisY JoyAxisZ JoyButton JoyDir JoyFire Label JoyHat LayerExists LayerGroupExists LayerToBack LayerToFront Ld LdExp LeftMouseQuit LeftStr LegacyControl Limit Line LineTo ListItems ListRequest Ln LoadAnim LoadAnimFrame LoadBGPic LoadBrush LoadIcon LoadModule LoadPalette LoadPlugin LoadPrefs LoadSample LoadSprite Locate Log LowerStr MakeButton MakeConsoleChr MakeDate MakeDirectory MakeHostPath MatchPattern Matrix2D Max MD5 MD5Str MemToTable MergeLayers MidStr Min MixBrush MixRGB MixSample Mod ModifyAnimFrames ModifyButton ModifyKeyDown ModifyLayerFrames ModulateBrush ModulatePalette MonitorDirectory MouseX MouseY MoveAnim MoveBrush MoveConsoleWindow MoveDisplay MoveFile MoveLayer MovePointer MoveSprite MoveTextObject MoveTo Mul NearlyEqual NextDirectoryEntry NextFrame NextItem NormalizePath NPrint OilPaintBrush OpenAmigaGuide OpenAnim OpenAudio OpenCatalog OpenConnection OpenConsole OpenDirectory OpenDisplay OpenFile OpenFont OpenMusic OpenResourceMonitor OpenSerialPort OpenURL OpenVideo Pack PadNum Pairs PaletteToGray ParseDate PathItems PathPart PathRequest PathToBrush PatternFindStr PatternFindStrDirect PatternFindStrShort PatternReplaceStr PauseLayer PauseModule PauseMusic PauseTimer PauseVideo Peek PeekClipboard PenArrayToBrush PerformSelector PermissionRequest PerspectiveDistortBrush Pi PixelateBrush PlayAnim PlayAnimDisk PlayLayer PlayModule PlayMusic PlaySample PlaySubsong PlayVideo Plot Poke PolarDistortBrush PollSerialQueue Polygon PopupMenu Pow Print QuantizeBrush Rad RaiseOnError RasterizeBrush RawDiv RawEqual RawGet RawSet ReadBrushPixel ReadByte ReadBytes ReadChr ReadConsoleKey ReadConsoleStr ReadDirectory ReadFloat ReadFunction ReadInt ReadLine ReadMem ReadPen ReadPixel ReadRegistryKey ReadSerialData ReadShort ReadString ReadTable ReceiveData ReceiveUDPData Red ReduceAlphaChannel RefreshConsole RefreshDisplay RefreshLayer RelCurveTo RelLineTo RelMoveTo RemapBrush RemoveBrushPalette RemoveButton RemoveIconImage RemoveItem RemoveKeyDown RemoveLayer RemoveLayerFX RemoveLayers RemoveSprite RemoveSprites Rename RenderLayer RepeatStr ReplaceColors ReplaceStr ResetKeyStates ResetTabs ResetTimer ResolveHostName ResumeCoroutine ResumeLayer ResumeModule ResumeMusic ResumeTimer ResumeVideo ReverseFindStr ReverseStr RewindDirectory RGB RGBArrayToBrush RightStr Rnd RndF RndStrong Rol Ror RotateBrush RotateLayer RotateTextObject Round Rt Run RunCallback RunRexxScript Sar SaveAnim SaveBrush SaveIcon SavePalette SavePrefs SaveSample SaveSnapshot ScaleAnim ScaleBGPic ScaleBrush ScaleLayer ScaleSprite ScaleTextObject ScrollConsole Seek SeekLayer SeekMusic SeekVideo SelectAlphaChannel SelectAnim SelectBGPic SelectBrush SelectConsoleWindow SelectDisplay SelectLayer SelectMask SelectMenuItem SelectPalette SendApplicationMessage SendData SendMessage SendRexxCommand SendUDPData SepiaToneBrush SerializeTable SetAllocConsoleColor SetAlphaIntensity SetAnimFrameDelay SetAttribute SetBaudRate SetBorderPen SetBrushDepth SetBrushPalette SetBrushPen SetBrushTransparency SetBrushTransparentPen SetBulletColor SetBulletPen SetChannelVolume SetClipboard SetClipRegion SetConsoleBackground SetConsoleColor SetConsoleCursor SetConsoleOptions SetConsoleStyle SetConsoleTitle SetCycleTable SetDash SetDataBits SetDefaultAdapter SetDefaultEncoding SetDefaultLoader SetDepth SetDisplayAttributes SetDitherMode SetDrawPen SetDrawTagsDefault SetDTR SetEnv SetEventTimeout SetFileAttributes SetFileEncoding SetFillRule SetFillStyle SetFlowControl SetFont SetFontColor SetFontStyle SetFormStyle SetFPSLimit SetGradientPalette SetIconProperties SetInterval SetIOMode SetLayerAnchor SetLayerBorder SetLayerDepth SetLayerFilter SetLayerLight SetLayerName SetLayerPalette SetLayerPen SetLayerShadow SetLayerStyle SetLayerTint SetLayerTransparency SetLayerTransparentPen SetLayerVolume SetLayerZPos SetLineCap SetLineJoin SetLineWidth SetListItems SetMargins SetMaskMode SetMasterVolume SetMetaTable SetMiterLimit SetMusicVolume SetNetworkProtocol SetNetworkTimeout SetObjectData SetPalette SetPaletteDepth SetPaletteMode SetPalettePen SetPaletteTransparentPen SetPanning SetParity SetPen SetPitch SetPointer SetRTS SetScreenTitle SetSerializeMode SetSerializeOptions SetShadowPen SetSpriteZPos SetStandardIconImage SetStandardPalette SetStopBits SetSubtitle SetTimeout SetTimerElapse SetTitle SetTransparentPen SetTransparentThreshold SetTrayIcon SetVarType SetVectorEngine SetVideoPosition SetVideoSize SetVideoVolume SetVolume SetWBIcon Sgn SharpenBrush Shl ShowConsoleCursor ShowDisplay ShowKeyboard ShowLayer ShowLayerFX ShowNotification ShowPointer ShowRinghioMessage ShowScreen ShowToast Shr Sin Sleep SolarizeBrush SolarizePalette Sort SplitStr Sqrt StartConsoleColorMode StartPath StartSubPath StartsWith StartTimer StopAnim StopChannel StopLayer StopModule StopMusic StopSample StopTimer StopVideo StringRequest StringToFile StripStr StrLen StrStr StrToArray Sub SwapLayers SwirlBrush SystemRequest TableItems TableToMem Tan TextExtent TextHeight TextOut TextWidth TimerElapsed TimestampToDate TintBrush TintPalette ToHostName ToIP ToNumber ToString TouchConsoleWindow ToUserData TransformBox TransformBrush TransformLayer TransformPoint TransformTextObject TranslateLayer TranslatePath TrimBrush TrimStr UndefineVirtualStringFile Undo UndoFX UngroupLayer UnleftStr UnmidStr Unpack UnrightStr UnsetEnv UploadFile UpperStr Usage UseCarriageReturn UseFont UTCToDate Val ValidateDate ValidateStr Vibrate VWait Wait WaitAnimEnd WaitEvent WaitKeyDown WaitLeftMouse WaitMidMouse WaitMusicEnd WaitPatternPosition WaitRightMouse WaitSampleEnd WaitSongPosition WaitTimer WaterRippleBrush WhileKeyDown WhileMouseDown WhileMouseOn WhileRightMouseDown Wrap WriteAnimFrame WriteBrushPixel WriteByte WriteBytes WriteChr WriteFloat WriteFunction WriteInt WriteLine WriteMem WritePen WriteRegistryKey WriteSerialData WriteShort WriteString WriteTable YieldCoroutine " user-defined constants syn match hwUserConstant "#\<\u\+\>" diff --git a/runtime/syntax/ld.vim b/runtime/syntax/ld.vim index 6a117ee87b..7ac050131b 100644 --- a/runtime/syntax/ld.vim +++ b/runtime/syntax/ld.vim @@ -2,6 +2,7 @@ " Language: ld(1) script " Previous Maintainer: Nikolai Weibull " Latest Revision: 2006-04-19 +" Last Change: 2023 Apr 19 if exists("b:current_syntax") finish @@ -43,7 +44,7 @@ syn match ldSpecial '/DISCARD/' syn keyword ldIdentifier ORIGIN LENGTH syn match ldSpecSections '\.' -syn match ldSections '\.\S\+' +syn match ldSections '\.[^ \t)]\+' syn match ldSpecSections '\.\%(text\|data\|bss\|symver\)\>' syn match ldNumber display '\<0[xX]\x\+\>' diff --git a/runtime/syntax/livebook.vim b/runtime/syntax/livebook.vim new file mode 100644 index 0000000000..133cab01e3 --- /dev/null +++ b/runtime/syntax/livebook.vim @@ -0,0 +1,8 @@ +" Placeholder Livebook syntax file. +" This simply uses the markdown syntax. + +if exists("b:current_syntax") + finish +endif + +runtime! syntax/markdown.vim diff --git a/runtime/syntax/netrc.vim b/runtime/syntax/netrc.vim index 4d068a1b76..567aaa96de 100644 --- a/runtime/syntax/netrc.vim +++ b/runtime/syntax/netrc.vim @@ -2,6 +2,7 @@ " Language: netrc(5) configuration file " Previous Maintainer: Nikolai Weibull " Latest Revision: 2010-01-03 +" Last Change: 2023 Feb 27 by Keith Smiley if exists("b:current_syntax") finish @@ -35,6 +36,8 @@ syn keyword netrcSpecial contained anonymous syn match netrcInit contained '\ -" Last Change: 2023 Feb 26 +" Last Change: 2023 Feb 28 " Credits: Neil Schemenauer " Dmitry Vasiliev " @@ -178,17 +178,17 @@ syn match pythonEscape "\\$" " and so on, as specified in the 'Python Language Reference'. " https://docs.python.org/reference/lexical_analysis.html#numeric-literals if !exists("python_no_number_highlight") - " numbers (including longs and complex) - syn match pythonNumber "\<0[oO]\=\o\+[Ll]\=\>" - syn match pythonNumber "\<0[xX]\x\+[Ll]\=\>" - syn match pythonNumber "\<0[bB][01]\+[Ll]\=\>" - syn match pythonNumber "\<\%([1-9]\d*\|0\)[Ll]\=\>" - syn match pythonNumber "\<\d\+[jJ]\>" - syn match pythonNumber "\<\d\+[eE][+-]\=\d\+[jJ]\=\>" + " numbers (including complex) + syn match pythonNumber "\<0[oO]\%(_\=\o\)\+\>" + syn match pythonNumber "\<0[xX]\%(_\=\x\)\+\>" + syn match pythonNumber "\<0[bB]\%(_\=[01]\)\+\>" + syn match pythonNumber "\<\%([1-9]\%(_\=\d\)*\|0\+\%(_\=0\)*\)\>" + syn match pythonNumber "\<\d\%(_\=\d\)*[jJ]\>" + syn match pythonNumber "\<\d\%(_\=\d\)*[eE][+-]\=\d\%(_\=\d\)*[jJ]\=\>" syn match pythonNumber - \ "\<\d\+\.\%([eE][+-]\=\d\+\)\=[jJ]\=\%(\W\|$\)\@=" + \ "\<\d\%(_\=\d\)*\.\%([eE][+-]\=\d\%(_\=\d\)*\)\=[jJ]\=\%(\W\|$\)\@=" syn match pythonNumber - \ "\%(^\|\W\)\zs\d*\.\d\+\%([eE][+-]\=\d\+\)\=[jJ]\=\>" + \ "\%(^\|\W\)\zs\%(\d\%(_\=\d\)*\)\=\.\d\%(_\=\d\)*\%([eE][+-]\=\d\%(_\=\d\)*\)\=[jJ]\=\>" endif " Group the built-ins in the order in the 'Python Library Reference' for diff --git a/runtime/syntax/sh.vim b/runtime/syntax/sh.vim index f455f19c93..8674ded9e4 100644 --- a/runtime/syntax/sh.vim +++ b/runtime/syntax/sh.vim @@ -2,8 +2,8 @@ " Language: shell (sh) Korn shell (ksh) bash (sh) " Maintainer: Charles E. Campbell " Previous Maintainer: Lennart Schultz -" Last Change: Feb 11, 2023 -" Version: 207 +" Last Change: Feb 28, 2023 +" Version: 208 " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_SH " For options and settings, please use: :help ft-sh-syntax " This file includes many ideas from Eric Brunet (eric.brunet@ens.fr) and heredoc fixes from Felipe Contreras @@ -415,21 +415,21 @@ syn match shBQComment contained "#.\{-}\ze`" contains=@shCommentGroup " (modified by Felipe Contreras) " ========================================= ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc01 start="<<\s*\z([^ \t|>]\+\)" matchgroup=shHereDoc01 end="^\z1$" contains=@shDblQuoteList -ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc02 start="<<-\s*\z([^ \t|>]\+\)" matchgroup=shHereDoc02 end="^\s*\z1$" contains=@shDblQuoteList +ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc02 start="<<-\s*\z([^ \t|>]\+\)" matchgroup=shHereDoc02 end="^\t*\z1$" contains=@shDblQuoteList ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc03 start="<<\s*\\\z([^ \t|>]\+\)" matchgroup=shHereDoc03 end="^\z1$" -ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc04 start="<<-\s*\\\z([^ \t|>]\+\)" matchgroup=shHereDoc04 end="^\s*\z1$" +ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc04 start="<<-\s*\\\z([^ \t|>]\+\)" matchgroup=shHereDoc04 end="^\t*\z1$" ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc05 start="<<\s*'\z([^']\+\)'" matchgroup=shHereDoc05 end="^\z1$" -ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc06 start="<<-\s*'\z([^']\+\)'" matchgroup=shHereDoc06 end="^\s*\z1$" +ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc06 start="<<-\s*'\z([^']\+\)'" matchgroup=shHereDoc06 end="^\t*\z1$" ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc07 start="<<\s*\"\z([^"]\+\)\"" matchgroup=shHereDoc07 end="^\z1$" -ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc08 start="<<-\s*\"\z([^"]\+\)\"" matchgroup=shHereDoc08 end="^\s*\z1$" +ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc08 start="<<-\s*\"\z([^"]\+\)\"" matchgroup=shHereDoc08 end="^\t*\z1$" ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc09 start="<<\s*\\\_$\_s*\z([^ \t|>]\+\)" matchgroup=shHereDoc09 end="^\z1$" contains=@shDblQuoteList -ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc10 start="<<-\s*\\\_$\_s*\z([^ \t|>]\+\)" matchgroup=shHereDoc10 end="^\s*\z1$" contains=@shDblQuoteList +ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc10 start="<<-\s*\\\_$\_s*\z([^ \t|>]\+\)" matchgroup=shHereDoc10 end="^\t*\z1$" contains=@shDblQuoteList ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc11 start="<<\s*\\\_$\_s*\\\z([^ \t|>]\+\)" matchgroup=shHereDoc11 end="^\z1$" -ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc12 start="<<-\s*\\\_$\_s*\\\z([^ \t|>]\+\)" matchgroup=shHereDoc12 end="^\s*\z1$" +ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc12 start="<<-\s*\\\_$\_s*\\\z([^ \t|>]\+\)" matchgroup=shHereDoc12 end="^\t*\z1$" ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc13 start="<<\s*\\\_$\_s*'\z([^']\+\)'" matchgroup=shHereDoc13 end="^\z1$" -ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc14 start="<<-\s*\\\_$\_s*'\z([^']\+\)'" matchgroup=shHereDoc14 end="^\s*\z1$" +ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc14 start="<<-\s*\\\_$\_s*'\z([^']\+\)'" matchgroup=shHereDoc14 end="^\t*\z1$" ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc15 start="<<\s*\\\_$\_s*\"\z([^"]\+\)\"" matchgroup=shHereDoc15 end="^\z1$" -ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc16 start="<<-\s*\\\_$\_s*\"\z([^"]\+\)\"" matchgroup=shHereDoc16 end="^\s*\z1$" +ShFoldHereDoc syn region shHereDoc matchgroup=shHereDoc16 start="<<-\s*\\\_$\_s*\"\z([^"]\+\)\"" matchgroup=shHereDoc16 end="^\t*\z1$" " Here Strings: {{{1 diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim index a1c39e4dcf..c44a32119b 100644 --- a/runtime/syntax/vim.vim +++ b/runtime/syntax/vim.vim @@ -53,7 +53,7 @@ syn case ignore syn keyword vimGroup contained Comment Constant String Character Number Boolean Float Identifier Function Statement Conditional Repeat Label Operator Keyword Exception PreProc Include Define Macro PreCondit Type StorageClass Structure Typedef Special SpecialChar Tag Delimiter SpecialComment Debug Underlined Ignore Error Todo " Default highlighting groups {{{2 -syn keyword vimHLGroup contained ColorColumn Cursor CursorColumn CursorIM CursorLine CursorLineFold CursorLineNr CursorLineSign DiffAdd DiffChange DiffDelete DiffText Directory EndOfBuffer ErrorMsg FoldColumn Folded IncSearch LineNr MatchParen Menu MessageWindow ModeMsg MoreMsg NonText Normal Pmenu PmenuSbar PmenuSel PmenuThumb Question QuickFixLine Scrollbar Search SignColumn SpecialKey SpellBad SpellCap SpellLocal SpellRare StatusLine StatusLineNC TabLine TabLineFill TabLineSel Title Tooltip VertSplit Visual WarningMsg WildMenu +syn keyword vimHLGroup contained ColorColumn Cursor CursorColumn CursorIM CursorLine CursorLineFold CursorLineNr CursorLineSign DiffAdd DiffChange DiffDelete DiffText Directory EndOfBuffer ErrorMsg FoldColumn Folded IncSearch LineNr MatchParen Menu MessageWindow ModeMsg MoreMsg NonText Normal Pmenu PmenuExtra PmenuExtraSel PmenuKind PmenuKindSel PmenuSbar PmenuSel PmenuThumb Question QuickFixLine Scrollbar Search SignColumn SpecialKey SpellBad SpellCap SpellLocal SpellRare StatusLine StatusLineNC TabLine TabLineFill TabLineSel Title Tooltip VertSplit Visual WarningMsg WildMenu syn match vimHLGroup contained "Conceal" syn keyword vimOnlyHLGroup contained LineNrAbove LineNrBelow StatusLineTerm Terminal VisualNOS syn keyword nvimHLGroup contained Substitute TermCursor TermCursorNC @@ -61,7 +61,7 @@ syn keyword nvimHLGroup contained Substitute TermCursor TermCursorNC syn case match " Special Vim Highlighting (not automatic) {{{1 -" Set up folding commands {{{2 +" Set up folding commands for this syntax highlighting file {{{2 if exists("g:vimsyn_folding") && g:vimsyn_folding =~# '[afhlmpPrt]' if g:vimsyn_folding =~# 'a' com! -nargs=* VimFolda fold -- cgit From c8ebb04e92c9646d83110f4b45f1d1dfd5316561 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Fri, 5 May 2023 18:15:44 +0200 Subject: fix(health): replace healthFoo with DiagnosticFoo (#23475) This replaces the custom `health{Error,Warning,Success}` highlight groups with `Diagnostic{Error,Warning,Ok}`, which are defined by default. Removes the link for `healthHelp`, which was no longer actually used after #20879. --- runtime/syntax/checkhealth.vim | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/checkhealth.vim b/runtime/syntax/checkhealth.vim index 4b0ce75a54..ea6555f005 100644 --- a/runtime/syntax/checkhealth.vim +++ b/runtime/syntax/checkhealth.vim @@ -11,15 +11,10 @@ unlet! b:current_syntax syn case match -syn keyword healthError ERROR[:] -syn keyword healthWarning WARNING[:] -syn keyword healthSuccess OK[:] +syn keyword DiagnosticError ERROR[:] +syn keyword DiagnosticWarning WARNING[:] +syn keyword DiagnosticOk OK[:] syn match helpSectionDelim "^======*\n.*$" syn match healthHeadingChar "=" conceal cchar=─ contained containedin=helpSectionDelim -hi def link healthError Error -hi def link healthWarning WarningMsg -hi def healthSuccess guibg=#5fff00 guifg=#080808 ctermbg=82 ctermfg=232 -hi def link healthHelp Identifier - let b:current_syntax = "checkhealth" -- cgit From 9753cda591e2fceaaeea26bdf2d5b5d874d7e9f5 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Mon, 8 May 2023 17:02:53 +0200 Subject: fix(syntax): use correct diagnostic group for checkhealth (#23538) --- runtime/syntax/checkhealth.vim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/checkhealth.vim b/runtime/syntax/checkhealth.vim index ea6555f005..2fd0aed601 100644 --- a/runtime/syntax/checkhealth.vim +++ b/runtime/syntax/checkhealth.vim @@ -12,7 +12,7 @@ unlet! b:current_syntax syn case match syn keyword DiagnosticError ERROR[:] -syn keyword DiagnosticWarning WARNING[:] +syn keyword DiagnosticWarn WARNING[:] syn keyword DiagnosticOk OK[:] syn match helpSectionDelim "^======*\n.*$" syn match healthHeadingChar "=" conceal cchar=─ contained containedin=helpSectionDelim -- cgit From c11986ed1a816d7ebcb5a5f707e3ef884f278293 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Mon, 15 May 2023 09:38:32 +0200 Subject: vim-patch:b7398fe41c9e (#23627) Update runtime files https://github.com/vim/vim/commit/b7398fe41c9e1e731d058105a34158871ee83e3f Co-authored-by: Bram Moolenaar --- runtime/syntax/dts.vim | 5 +- runtime/syntax/luau.vim | 15 ++++ runtime/syntax/nasm.vim | 72 +++++++++++++++++-- runtime/syntax/xpm.vim | 181 ++++++++++++++++++++++++++---------------------- 4 files changed, 182 insertions(+), 91 deletions(-) create mode 100644 runtime/syntax/luau.vim (limited to 'runtime/syntax') diff --git a/runtime/syntax/dts.vim b/runtime/syntax/dts.vim index be51ab5b10..bb7eff7be1 100644 --- a/runtime/syntax/dts.vim +++ b/runtime/syntax/dts.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: dts/dtsi (device tree files) " Maintainer: Daniel Mack -" Last Change: 2022 Jun 14 +" Last Change: 2023 Apr 28 if exists("b:current_syntax") finish @@ -10,9 +10,10 @@ let b:current_syntax = 'dts' syntax region dtsComment start="/\*" end="\*/" syntax match dtsReference "&[[:alpha:][:digit:]_]\+" +syntax match dtsReference "&{[[:alpha:][:digit:]@_/-]\+}" syntax region dtsBinaryProperty start="\[" end="\]" syntax match dtsStringProperty "\".*\"" -syntax match dtsKeyword "/.\{-1,\}/" +syntax match dtsKeyword "/[[:alpha:][:digit:]-]\+/\([[:space:]]\|;\)"he=e-1 syntax match dtsLabel "^[[:space:]]*[[:alpha:][:digit:]_]\+:" syntax match dtsNode /[[:alpha:][:digit:]-_]\+\(@[0-9a-fA-F]\+\|\)[[:space:]]*{/he=e-1 syntax region dtsCellProperty start="<" end=">" contains=dtsReference,dtsBinaryProperty,dtsStringProperty,dtsComment diff --git a/runtime/syntax/luau.vim b/runtime/syntax/luau.vim new file mode 100644 index 0000000000..59eccac100 --- /dev/null +++ b/runtime/syntax/luau.vim @@ -0,0 +1,15 @@ +" Vim syntax file +" Language: Luau +" Maintainer: None yet +" Last Change: 2023 Apr 30 + +if exists("b:current_syntax") + finish +endif + +" Luau is a superset of lua +runtime! syntax/lua.vim + +let b:current_syntax = "luau" + +" vim: nowrap sw=2 sts=2 ts=8 noet: diff --git a/runtime/syntax/nasm.vim b/runtime/syntax/nasm.vim index d763033225..0eb82fad10 100644 --- a/runtime/syntax/nasm.vim +++ b/runtime/syntax/nasm.vim @@ -3,8 +3,12 @@ " Maintainer: Andrii Sokolov " Original Author: Manuel M.H. Stol " Former Maintainer: Manuel M.H. Stol -" Contributors: Leonard König (C string highlighting), Peter Stanhope (Add missing 64-bit mode registers) -" Last Change: 2017 Jan 23 +" Contributors: +" Leonard König (C string highlighting), +" Peter Stanhope (Add missing 64-bit mode registers) +" Frédéric Hamel (F16c support, partial AVX +" support, other) +" Last Change: 2022 May 3 " NASM Home: http://www.nasm.us/ @@ -277,7 +281,7 @@ syn match nasmInstrModifier "\"lc=5,ms= " NAsm directives syn keyword nasmRepeat TIMES syn keyword nasmDirective ALIGN[B] INCBIN EQU NOSPLIT SPLIT -syn keyword nasmDirective ABSOLUTE BITS SECTION SEGMENT +syn keyword nasmDirective ABSOLUTE BITS SECTION SEGMENT DEFAULT syn keyword nasmDirective ENDSECTION ENDSEGMENT syn keyword nasmDirective __SECT__ " Macro created standard directives: (requires %include) @@ -309,7 +313,7 @@ syn match nasmStdInstruction "\<\(CMOV\|J\|SET\)\(N\=\([ABGL]E\=\|[CEOSZ]\)\|P syn match nasmStdInstruction "\" syn keyword nasmStdInstruction AAA AAD AAM AAS ADC ADD AND syn keyword nasmStdInstruction BOUND BSF BSR BSWAP BT[C] BTR BTS -syn keyword nasmStdInstruction CALL CBW CDQ CLC CLD CMC CMP CMPSB CMPSD CMPSW CMPSQ +syn keyword nasmStdInstruction CALL CBW CDQ CDQE CLC CLD CMC CMP CMPSB CMPSD CMPSW CMPSQ syn keyword nasmStdInstruction CMPXCHG CMPXCHG8B CPUID CWD[E] CQO syn keyword nasmStdInstruction DAA DAS DEC DIV ENTER syn keyword nasmStdInstruction IDIV IMUL INC INT[O] IRET[D] IRETW IRETQ @@ -319,6 +323,7 @@ syn keyword nasmStdInstruction LODSW LOOP[E] LOOPNE LOOPNZ LOOPZ LSS syn keyword nasmStdInstruction MOVSB MOVSD MOVSW MOVSX MOVSQ MOVZX MUL NEG NOP NOT syn keyword nasmStdInstruction OR POPA[D] POPAW POPF[D] POPFW POPFQ syn keyword nasmStdInstruction PUSH[AD] PUSHAW PUSHF[D] PUSHFW PUSHFQ +syn keyword nasmStdInstruction PAUSE syn keyword nasmStdInstruction RCL RCR RETF RET[N] ROL ROR syn keyword nasmStdInstruction SAHF SAL SAR SBB SCASB SCASD SCASW syn keyword nasmStdInstruction SHL[D] SHR[D] STC STD STOSB STOSD STOSW STOSQ SUB @@ -405,6 +410,62 @@ syn keyword nasmSseInstruction ORPS RCPPS RCPSS RSQRTPS RSQRTSS syn keyword nasmSseInstruction SHUFPS SQRTPS SQRTSS STMXCSR SUBPS SUBSS syn keyword nasmSseInstruction UCOMISS UNPCKHPS UNPCKLPS XORPS +" F16c Instructions +syn keyword nasmF16CInstruction VCVTPH2PS VCVTPS2PH + +" AVX Instructions +syn keyword nasmAVXInstruction VCVTDQ2PD VCVTDQ2PS VCVTPD2DQ VCVTPD2P VCVTPD2PS +syn keyword nasmAVXInstruction VCVTPS2DQ VCVTPS2PD +syn keyword nasmAVXInstruction VCVTSD2SI VCVTSD2SS VCVTSI2SD VCVTSI2SS VCVTSS2SD VCVTSS2SI +syn keyword nasmAVXInstruction VMAXPS VMAXSS VMINPS VMINSS VMOVAPS VMOVHLPS VMOVHPS +syn keyword nasmAVXInstruction VMAXPD VMAXSD VMINPD VMINSD VMOVAPD VMOVHLPD VMOVHPD +syn keyword nasmAVXInstruction VMOVLHPS VMOVLPS VMOVMSKPS VMOVNTPS VMOVSS VMOVUPS +syn keyword nasmAVXInstruction VMULPS VMULSS VPXOR + +syn match nasmInstructnError "\" +syn match nasmAVXInstruction "\" + +syn keyword nasmAVXInstruction VORPS VPABSB VPABSD VPABSW +syn keyword nasmAVXInstruction PACKSSDW VPACKSSWB VPACKUSDW VPACKUSWB VPADDD +syn keyword nasmAVXInstruction PADDQ VPADDSB VPADDSW VPADDUSB VPADDUSW +syn keyword nasmAVXInstruction PADDW VPALIGNR VPAND VPANDN VPAVGB +syn keyword nasmAVXInstruction PAVGW VPBLENDD VPBLENDVB VPBLENDW VPBROADCASTB +syn keyword nasmAVXInstruction PBROADCASTD VPBROADCASTQ VPBROADCASTW VPCLMULQDQ VPCMOV +syn keyword nasmAVXInstruction PCMPEQB VPCMPEQD VPCMPEQQ VPCMPEQW VPCMPESTRI +syn keyword nasmAVXInstruction PCMPESTRM VPCMPGTB VPCMPGTD VPCMPGTQ VPCMPGTW +syn keyword nasmAVXInstruction PCMPISTRI VPCMPISTRM VPCOMB VPCOMD VPCOMQ +syn keyword nasmAVXInstruction PCOMUB VPCOMUD VPCOMUQ VPCOMUW VPCOMW +syn keyword nasmAVXInstruction PERM2FVPERM2IVPERMD VPERMIL2PD VPERMIL2PS VPERMILPD VPERMILPS +syn keyword nasmAVXInstruction PERMPD VPERMPS VPERMQ VPEXTRB VPEXTRD +syn keyword nasmAVXInstruction PEXTRQ VPEXTRW VPGATHERDD VPGATHERDQ VPGATHERQD +syn keyword nasmAVXInstruction PGATHERQQ VPHADDBD VPHADDBQ VPHADDBW VPHADDD +syn keyword nasmAVXInstruction PHADDDQ VPHADDSW VPHADDUBQ VPHADDUBW VPHADDUDQ +syn keyword nasmAVXInstruction PHADDUWD VPHADDUWQ VPHADDW VPHADDWD VPHADDWQ +syn keyword nasmAVXInstruction PHMINPOSUW VPHSUBBW VPHSUBD VPHSUBDQ VPHSUBSW +syn keyword nasmAVXInstruction PHSUBW VPHSUBWD VPINSRB VPINSRD VPINSRQ +syn keyword nasmAVXInstruction PINSRW VPMACSDD VPMACSDQH +syn keyword nasmAVXInstruction VPMACSDQL VPMACSSDD VPMACSSDQL VPMACSSQH VPMACSSWD +syn keyword nasmAVXInstruction VPMACSSWW VPMACSWD VPMACSWW VPMADCSSWD VPMADCSWD +syn keyword nasmAVXInstruction VPMADDUBSW VPMADDWD VPMASKMOVD VPMASKMOVQ VPMAXSB +syn keyword nasmAVXInstruction VPMAXSD VPMAXSW VPMAXUB VPMAXUD VPMAXUW +syn keyword nasmAVXInstruction VPMINSB VPMINSD VPMINSW VPMINUB VPMINUD +syn keyword nasmAVXInstruction VPMINUW VPMOVMSKB VPMOVSXBD VPMOVSXBQ VPMOVSXBW +syn keyword nasmAVXInstruction VPMOVSXDQ VPMOVSXWD VPMOVSXWQ VPMOVZXBD VPMOVZXBQ +syn keyword nasmAVXInstruction VPMOVZXBW VPMOVZXDQ VPMOVZXWD VPMOVZXWQ VPMULDQ +syn keyword nasmAVXInstruction VPMULHRSW VPMULHUW VPMULHW VPMULLD VPMULLW +syn keyword nasmAVXInstruction VPMULUDQ VPOR VPPERM VPROTB VPROTD +syn keyword nasmAVXInstruction VPROTQ VPROTW VPSADBW VPSHAB VPSHAD +syn keyword nasmAVXInstruction VPSHAQ VPSHAW VPSHLB VPSHLD VPSHLQ +syn keyword nasmAVXInstruction VPSHLW VPSHUFB VPSHUFD VPSHUFHW VPSHUFLW +syn keyword nasmAVXInstruction VPSIGNB VPSIGND VPSIGNW VPSLLD VPSLLDQ +syn keyword nasmAVXInstruction VPSLLQ VPSLLVD VPSLLVQ VPSLLW VPSRAD +syn keyword nasmAVXInstruction VPSRAVD VPSRAW VPSRLD VPSRLDQ VPSRLQ +syn keyword nasmAVXInstruction VPSRLVD VPSRLVQ VPSRLW VPSUBB VPSUBD +syn keyword nasmAVXInstruction VPSUBQ VPSUBSB VPSUBSW VPSUBUSB VPSUBUSW +syn keyword nasmAVXInstruction VPSUBW VPTEST VPUNPCKHBW VPUNPCKHDQ VPUNPCKHQDQ +syn keyword nasmAVXInstruction VPUNPCKHWD VPUNPCKLBW VPUNPCKLDQ VPUNPCKLQDQ VPUNPCKLWD +syn keyword nasmAVXInstruction VPXOR VRCPPS + " Three Dimensional Now Packed Instructions: (requires 3DNow! unit) syn keyword nasmNowInstruction FEMMS PAVGUSB PF2ID PFACC PFADD PFCMPEQ PFCMPGE @@ -515,13 +576,14 @@ hi def link nasmDbgInstruction Debug hi def link nasmFpuInstruction Statement hi def link nasmMmxInstruction Statement hi def link nasmSseInstruction Statement +hi def link nasmF16cInstruction Statement +hi def link nasmAVXInstruction Statement hi def link nasmNowInstruction Statement hi def link nasmAmdInstruction Special hi def link nasmCrxInstruction Special hi def link nasmUndInstruction Todo hi def link nasmInstructnError Error - let b:current_syntax = "nasm" " vim:ts=8 sw=4 diff --git a/runtime/syntax/xpm.vim b/runtime/syntax/xpm.vim index be9f38723e..77d82403e9 100644 --- a/runtime/syntax/xpm.vim +++ b/runtime/syntax/xpm.vim @@ -1,10 +1,12 @@ " Vim syntax file " Language: X Pixmap " Maintainer: Ronald Schild -" Last Change: 2021 Oct 04 -" Version: 5.4n.1 +" Last Change: 2023 May 11 +" Version: 5.4n.2 " Jemma Nelson added termguicolors support " Dominique Pellé fixed spelling support +" Christian J. Robinson fixed use of global variables, moved +" loop into a function " quit when a syntax file was already loaded if exists("b:current_syntax") @@ -21,108 +23,119 @@ syn region xpmPixelString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@xpmCo if has("gui_running") || has("termguicolors") && &termguicolors -let color = "" -let chars = "" -let colors = 0 -let cpp = 0 -let n = 0 -let i = 1 +function s:CreateSyntax() abort + let color = "" + let chars = "" + let colors = 0 + let cpp = 0 + let n = 0 + let lines = getline(1, '$') -while i <= line("$") " scanning all lines + for line in lines " scanning all lines - let s = matchstr(getline(i), '".\{-1,}"') - if s != "" " does line contain a string? + let s = matchstr(line, '".\{-1,}"') - if n == 0 " first string is the Values string + if s != "" " does line contain a string? - " get the 3rd value: colors = number of colors - let colors = substitute(s, '"\s*\d\+\s\+\d\+\s\+\(\d\+\).*"', '\1', '') - " get the 4th value: cpp = number of character per pixel - let cpp = substitute(s, '"\s*\d\+\s\+\d\+\s\+\d\+\s\+\(\d\+\).*"', '\1', '') - if cpp =~ '[^0-9]' - break " if cpp is not made of digits there must be something wrong - endif + if n == 0 " first string is the Values string - " Highlight the Values string as normal string (no pixel string). - " Only when there is no slash, it would terminate the pattern. - if s !~ '/' - exe 'syn match xpmValues /' . s . '/' - endif - hi link xpmValues String + let values = split(s[1 : -2]) + + " Values string invalid, bail out + if len(values) != 4 + return + endif - let n = 1 " n = color index + " get the 3rd value: colors = number of colors + let colors = str2nr(values[2]) + " get the 4th value: cpp = number of character per pixel + let cpp = str2nr(values[3]) - elseif n <= colors " string is a color specification + " these values must be positive, nonzero + if colors < 1 || cpp < 1 + return + endif + + " Highlight the Values string as normal string (no pixel string). + " Only when there is no slash, it would terminate the pattern. + if s !~ '/' + exe 'syn match xpmValues /' .. s .. '/' + endif + hi link xpmValues String - " get chars = length string representing the pixels - " (first incl. the following whitespace) - let chars = substitute(s, '"\(.\{'.cpp.'}\s\).*"', '\1', '') + let n = 1 " n = color index - " now get color, first try 'c' key if any (color visual) - let color = substitute(s, '".*\sc\s\+\(.\{-}\)\s*\(\(g4\=\|[ms]\)\s.*\)*\s*"', '\1', '') - if color == s - " no 'c' key, try 'g' key (grayscale with more than 4 levels) - let color = substitute(s, '".*\sg\s\+\(.\{-}\)\s*\(\(g4\|[ms]\)\s.*\)*\s*"', '\1', '') + elseif n <= colors " string is a color specification + + " get chars = length string representing the pixels + " (first incl. the following whitespace) + let chars = substitute(s, '"\(.\{' .. cpp .. '}\s\).*"', '\1', '') + + " now get color, first try 'c' key if any (color visual) + let color = substitute(s, '".*\sc\s\+\(.\{-}\)\s*\(\(g4\=\|[ms]\)\s.*\)*\s*"', '\1', '') if color == s - " next try: 'g4' key (4-level grayscale) - let color = substitute(s, '".*\sg4\s\+\(.\{-}\)\s*\([ms]\s.*\)*\s*"', '\1', '') + " no 'c' key, try 'g' key (grayscale with more than 4 levels) + let color = substitute(s, '".*\sg\s\+\(.\{-}\)\s*\(\(g4\|[ms]\)\s.*\)*\s*"', '\1', '') if color == s - " finally try 'm' key (mono visual) - let color = substitute(s, '".*\sm\s\+\(.\{-}\)\s*\(s\s.*\)*\s*"', '\1', '') + " next try: 'g4' key (4-level grayscale) + let color = substitute(s, '".*\sg4\s\+\(.\{-}\)\s*\([ms]\s.*\)*\s*"', '\1', '') if color == s - let color = "" + " finally try 'm' key (mono visual) + let color = substitute(s, '".*\sm\s\+\(.\{-}\)\s*\(s\s.*\)*\s*"', '\1', '') + if color == s + let color = "" + endif endif endif endif - endif - " Vim cannot handle RGB codes with more than 6 hex digits - if color =~ '#\x\{10,}$' - let color = substitute(color, '\(\x\x\)\x\x', '\1', 'g') - elseif color =~ '#\x\{7,}$' - let color = substitute(color, '\(\x\x\)\x', '\1', 'g') - " nor with 3 digits - elseif color =~ '#\x\{3}$' - let color = substitute(color, '\(\x\)\(\x\)\(\x\)', '0\10\20\3', '') - endif + " Vim cannot handle RGB codes with more than 6 hex digits + if color =~ '#\x\{10,}$' + let color = substitute(color, '\(\x\x\)\x\x', '\1', 'g') + elseif color =~ '#\x\{7,}$' + let color = substitute(color, '\(\x\x\)\x', '\1', 'g') + " nor with 3 digits + elseif color =~ '#\x\{3}$' + let color = substitute(color, '\(\x\)\(\x\)\(\x\)', '0\10\20\3', '') + endif - " escape meta characters in patterns - let s = escape(s, '/\*^$.~[]') - let chars = escape(chars, '/\*^$.~[]') - - " now create syntax items - " highlight the color string as normal string (no pixel string) - exe 'syn match xpmCol'.n.'Def /'.s.'/ contains=xpmCol'.n.'inDef' - exe 'hi link xpmCol'.n.'Def String' - - " but highlight the first whitespace after chars in its color - exe 'syn match xpmCol'.n.'inDef /"'.chars.'/hs=s+'.(cpp+1).' contained' - exe 'hi link xpmCol'.n.'inDef xpmColor'.n - - " remove the following whitespace from chars - let chars = substitute(chars, '.$', '', '') - - " and create the syntax item contained in the pixel strings - exe 'syn match xpmColor'.n.' /'.chars.'/ contained' - exe 'syn cluster xpmColors add=xpmColor'.n - - " if no color or color = "None" show background - if color == "" || substitute(color, '.*', '\L&', '') == 'none' - exe 'hi xpmColor'.n.' guifg=bg' - exe 'hi xpmColor'.n.' guibg=NONE' - elseif color !~ "'" - exe 'hi xpmColor'.n." guifg='".color."'" - exe 'hi xpmColor'.n." guibg='".color."'" + " escape meta characters in patterns + let s = escape(s, '/\*^$.~[] ') + let chars = escape(chars, '/\*^$.~[] ') + + " now create syntax items + " highlight the color string as normal string (no pixel string) + exe 'syn match xpmCol' .. n .. 'Def /' .. s .. '/ contains=xpmCol' .. n .. 'inDef' + exe 'hi link xpmCol' .. n .. 'Def String' + + " but highlight the first whitespace after chars in its color + exe 'syn match xpmCol' .. n .. 'inDef /"' .. chars .. '/hs=s+' .. (cpp + 1) .. ' contained' + exe 'hi link xpmCol' .. n .. 'inDef xpmColor' .. n + + " remove the following whitespace from chars + let chars = substitute(chars, '.$', '', '') + + " and create the syntax item contained in the pixel strings + exe 'syn match xpmColor' .. n .. ' /' .. chars .. '/ contained' + exe 'syn cluster xpmColors add=xpmColor' .. n + + " if no color or color = "None" show background + if color == "" || substitute(color, '.*', '\L&', '') == 'none' + exe 'hi xpmColor' .. n .. ' guifg=bg' + exe 'hi xpmColor' .. n .. ' guibg=NONE' + elseif color !~ "'" + exe 'hi xpmColor' .. n .. " guifg='" .. color .. "'" + exe 'hi xpmColor' .. n .. " guibg='" .. color .. "'" + endif + let n += 1 + else + break " no more color string endif - let n = n + 1 - else - break " no more color string endif - endif - let i = i + 1 -endwhile + endfor +endfunction -unlet color chars colors cpp n i s +call s:CreateSyntax() endif " has("gui_running") || has("termguicolors") && &termguicolors -- cgit From 473a216a21fdc086ef71e0ca7d40c2fdf5346245 Mon Sep 17 00:00:00 2001 From: Sean Dewar Date: Sun, 11 Jun 2023 12:40:22 +0100 Subject: vim-patch:10e8ff9b2607 (#23977) Update runtime files https://github.com/vim/vim/commit/10e8ff9b26078994cae57c2422b145d37aaf714e Also: - fix a missing `<` in builtin.txt. - edit `:function` `{name}` wording to match the change made for the docs above by Justin in #10619. - link to `*vimrc*` rather than `*init.vim*` in repeat.txt change (as `init.lua` may also be used). Co-authored-by: Bram Moolenaar --- runtime/syntax/meson.vim | 8 ++++++-- runtime/syntax/structurizr.vim | 5 ++++- runtime/syntax/swayconfig.vim | 18 ++++++++++++++---- runtime/syntax/urlshortcut.vim | 14 ++++++++++++++ runtime/syntax/xpm.vim | 8 ++++---- 5 files changed, 42 insertions(+), 11 deletions(-) create mode 100644 runtime/syntax/urlshortcut.vim (limited to 'runtime/syntax') diff --git a/runtime/syntax/meson.vim b/runtime/syntax/meson.vim index 0af0d776f8..4eaf696322 100644 --- a/runtime/syntax/meson.vim +++ b/runtime/syntax/meson.vim @@ -3,7 +3,7 @@ " License: VIM License " Maintainer: Nirbheek Chauhan " Liam Beguin -" Last Change: 2021 Aug 16 +" Last Change: 2023 May 27 " Credits: Zvezdan Petkovic " Neil Schemenauer " Dmitry Vasiliev @@ -68,6 +68,7 @@ syn keyword mesonBuiltin \ add_global_link_arguments \ add_languages \ add_project_arguments + \ add_project_dependencies \ add_project_link_arguments \ add_test_setup \ alias_target @@ -99,6 +100,7 @@ syn keyword mesonBuiltin \ install_headers \ install_man \ install_subdir + \ install_symlink \ install_emptydir \ is_disabler \ is_variable @@ -115,6 +117,7 @@ syn keyword mesonBuiltin \ shared_library \ shared_module \ static_library + \ structured_sources \ subdir \ subdir_done \ subproject @@ -125,6 +128,7 @@ syn keyword mesonBuiltin \ vcs_tag \ warning \ range + \ debug if exists("meson_space_error_highlight") " trailing whitespace @@ -146,7 +150,7 @@ hi def link mesonEscape Special hi def link mesonNumber Number hi def link mesonBuiltin Function hi def link mesonBoolean Boolean -if exists("meson_space_error_higlight") +if exists("meson_space_error_highlight") hi def link mesonSpaceError Error endif diff --git a/runtime/syntax/structurizr.vim b/runtime/syntax/structurizr.vim index ab9e4ee609..363ee70438 100644 --- a/runtime/syntax/structurizr.vim +++ b/runtime/syntax/structurizr.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: Structurizr DSL " Maintainer: Bastian Venthur -" Last Change: 2022-02-15 +" Last Change: 2022-05-22 " Remark: For a language reference, see " https://github.com/structurizr/dsl @@ -26,6 +26,7 @@ syn keyword skeyword configuration syn keyword skeyword container syn keyword skeyword containerinstance syn keyword skeyword custom +syn keyword skeyword default syn keyword skeyword deployment syn keyword skeyword deploymentenvironment syn keyword skeyword deploymentgroup @@ -40,6 +41,7 @@ syn keyword skeyword group syn keyword skeyword healthcheck syn keyword skeyword include syn keyword skeyword infrastructurenode +syn keyword skeyword instances syn keyword skeyword model syn keyword skeyword person syn keyword skeyword perspectives @@ -54,6 +56,7 @@ syn keyword skeyword tags syn keyword skeyword technology syn keyword skeyword terminology syn keyword skeyword theme +syn keyword skeyword themes syn keyword skeyword title syn keyword skeyword url syn keyword skeyword users diff --git a/runtime/syntax/swayconfig.vim b/runtime/syntax/swayconfig.vim index 996b8f596c..6b36210252 100644 --- a/runtime/syntax/swayconfig.vim +++ b/runtime/syntax/swayconfig.vim @@ -2,9 +2,9 @@ " Language: sway window manager config " Original Author: James Eapen " Maintainer: James Eapen -" Version: 0.1.6 -" Reference version (jamespeapen/swayconfig.vim): 0.11.6 -" Last Change: 2022 Aug 08 +" Version: 0.2.1 +" Reference version (jamespeapen/swayconfig.vim): 0.12.1 +" Last Change: 2023 Mar 20 " References: " http://i3wm.org/docs/userguide.html#configuring @@ -58,6 +58,10 @@ syn match swayConfigClientColor /^\s*client.\w\+\s\+.*$/ contains=i3ConfigClient syn keyword swayConfigInputKeyword input contained syn match swayConfigInput /^\s*input\s\+.*$/ contains=swayConfigInputKeyword +" Seat config +syn keyword swayConfigSeatKeyword seat contained +syn match swayConfigSeat /^\s*seat\s\+.*$/ contains=swayConfigSeatKeyword + " set display outputs syn match swayConfigOutput /^\s*output\s\+.*$/ contains=i3ConfigOutput @@ -66,6 +70,10 @@ syn keyword swayConfigFocusKeyword focus contained syn keyword swayConfigFocusType output contained syn match swayConfigFocus /^\s*focus\soutput\s.*$/ contains=swayConfigFocusKeyword,swayConfigFocusType +" mouse warping +syn keyword swayConfigMouseWarpingType container contained +syn match swayConfigMouseWarping /^\s*mouse_warping\s\+\(output\|container\|none\)\s\?$/ contains=i3ConfigMouseWarpingKeyword,i3ConfigMouseWarpingType,swayConfigMouseWarpingType + " focus follows mouse syn clear i3ConfigFocusFollowsMouseType syn clear i3ConfigFocusFollowsMouse @@ -80,7 +88,7 @@ syn match swayConfigXwaylandModifier /^\s*xwayland\s\+\(enable\|disable\|force\) " Group mode/bar syn clear i3ConfigBlock -syn region swayConfigBlock start=+.*s\?{$+ end=+^}$+ contains=i3ConfigBlockKeyword,i3ConfigString,i3ConfigBind,i3ConfigInitializeKeyword,i3ConfigComment,i3ConfigFont,i3ConfigFocusWrappingType,i3ConfigColor,i3ConfigVariable,swayConfigInputKeyword,i3ConfigOutput transparent keepend extend +syn region swayConfigBlock start=+.*s\?{$+ end=+^}$+ contains=i3ConfigBlockKeyword,i3ConfigString,i3ConfigBind,i3ConfigInitializeKeyword,i3ConfigComment,i3ConfigFont,i3ConfigFocusWrappingType,i3ConfigColor,i3ConfigVariable,swayConfigInputKeyword,swayConfigSeatKeyword,i3ConfigOutput transparent keepend extend "hi def link swayConfigError Error hi def link i3ConfigFloating Error @@ -89,6 +97,8 @@ hi def link swayConfigFloatingMouseAction Type hi def link swayConfigFocusKeyword Type hi def link swayConfigSmartBorderKeyword Type hi def link swayConfigInputKeyword Type +hi def link swayConfigSeatKeyword Type +hi def link swayConfigMouseWarpingType Type hi def link swayConfigFocusFollowsMouseType Type hi def link swayConfigBindGestureCommand Identifier hi def link swayConfigBindGestureDirection Constant diff --git a/runtime/syntax/urlshortcut.vim b/runtime/syntax/urlshortcut.vim new file mode 100644 index 0000000000..f6cc3835a2 --- /dev/null +++ b/runtime/syntax/urlshortcut.vim @@ -0,0 +1,14 @@ +" Vim syntax file +" Language: MS Windows URL shortcut file +" Maintainer: ObserverOfTime +" LastChange: 2023-06-04 + +" Quit when a syntax file was already loaded. +if exists("b:current_syntax") + finish +endif + +" Just use the dosini syntax for now +runtime! syntax/dosini.vim + +let b:current_syntax = "urlshortcut" diff --git a/runtime/syntax/xpm.vim b/runtime/syntax/xpm.vim index 77d82403e9..b094092b73 100644 --- a/runtime/syntax/xpm.vim +++ b/runtime/syntax/xpm.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: X Pixmap " Maintainer: Ronald Schild -" Last Change: 2023 May 11 +" Last Change: 2023 May 24 " Version: 5.4n.2 " Jemma Nelson added termguicolors support " Dominique Pellé fixed spelling support @@ -42,7 +42,7 @@ function s:CreateSyntax() abort let values = split(s[1 : -2]) " Values string invalid, bail out - if len(values) != 4 + if len(values) != 4 && len(values) != 6 && len(values) != 7 return endif @@ -100,8 +100,8 @@ function s:CreateSyntax() abort endif " escape meta characters in patterns - let s = escape(s, '/\*^$.~[] ') - let chars = escape(chars, '/\*^$.~[] ') + let s = escape(s, '/\*^$.~[]') + let chars = escape(chars, '/\*^$.~[]') " now create syntax items " highlight the color string as normal string (no pixel string) -- cgit From dbb840da01c72d8a311e0c55d3248d78a64b63a4 Mon Sep 17 00:00:00 2001 From: zeertzjq Date: Fri, 14 Jul 2023 06:46:16 +0800 Subject: fix(runtime): respect 'rtp' order for all runtime files (#24335) --- runtime/syntax/synload.vim | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/synload.vim b/runtime/syntax/synload.vim index 056e38bf79..80685a5213 100644 --- a/runtime/syntax/synload.vim +++ b/runtime/syntax/synload.vim @@ -48,8 +48,8 @@ fun! s:SynSet() " load each in sequence. Skip empty entries. for name in split(s, '\.') if !empty(name) - exe "runtime! syntax/" . name . ".vim syntax/" . name . "/*.vim" - exe "runtime! syntax/" . name . ".lua syntax/" . name . "/*.lua" + " XXX: "[.]" in the first pattern makes it a wildcard on Windows + exe $'runtime! syntax/{name}[.]{{vim,lua}} syntax/{name}/*.{{vim,lua}}' endif endfor endif -- cgit From df2f5e39127e283a7ac74a21cb0323c437c3294f Mon Sep 17 00:00:00 2001 From: ObserverOfTime Date: Thu, 27 Jul 2023 15:39:05 +0300 Subject: fix(editorconfig): highlight properties with dashes (#24407) also add metadata comment and update Lua code in syntax file --- runtime/syntax/editorconfig.vim | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/editorconfig.vim b/runtime/syntax/editorconfig.vim index 4392d2b2d5..74a0e56131 100644 --- a/runtime/syntax/editorconfig.vim +++ b/runtime/syntax/editorconfig.vim @@ -1,15 +1,18 @@ +" Nvim syntax file +" Language: EditorConfig +" Last Change: 2023-07-20 +" +" This file is intentionally _not_ copied from Vim. + runtime! syntax/dosini.vim unlet! b:current_syntax -syntax match editorconfigUnknownProperty "^\s*\zs\w\+\ze\s*=" +syntax match editorconfigUnknownProperty "^\s*\zs[a-zA-Z0-9_-]\+\ze\s*=" syntax keyword editorconfigProperty root lua<< -local props = {} -for k in pairs(require('editorconfig').properties) do - props[#props + 1] = k -end -vim.cmd(string.format('syntax keyword editorconfigProperty %s', table.concat(props, ' '))) +local props = vim.tbl_keys(require('editorconfig').properties) +vim.cmd.syntax { 'keyword', 'editorconfigProperty', unpack(props) } . hi def link editorconfigProperty dosiniLabel -- cgit From aaeb1a8cd18741ff17fd030eb05a132bb9f99430 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Wed, 9 Aug 2023 22:34:02 +0200 Subject: vim-patch:7159ac7fec28 (#24624) Unison support (vim/vim#12715) https://github.com/vim/vim/commit/7159ac7fec282ad7427795b4bcd5b769268c083d Co-authored-by: Anton Parkhomenko --- runtime/syntax/unison.vim | 103 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 runtime/syntax/unison.vim (limited to 'runtime/syntax') diff --git a/runtime/syntax/unison.vim b/runtime/syntax/unison.vim new file mode 100644 index 0000000000..fed7551043 --- /dev/null +++ b/runtime/syntax/unison.vim @@ -0,0 +1,103 @@ +" Vim syntax file +" +" Language: unison +" Maintainer: Anton Parkhomenko +" Last Change: Aug 7, 2023 +" Original Author: John Williams, Paul Chiusano and Rúnar Bjarnason + +if exists("b:current_syntax") + finish +endif + +syntax include @markdown $VIMRUNTIME/syntax/markdown.vim + +syn cluster markdownLikeDocs contains=markdownBold,markdownItalic,markdownLinkText,markdownListMarker,markdownOrderedListMarker,markdownH1,markdownH2,markdownH3,markdownH4,markdownH5,markdownH6 + +syn match unisonOperator "[-!#$%&\*\+/<=>\?@\\^|~]" +syn match unisonDelimiter "[\[\](){},.]" + +" Strings and constants +syn match unisonSpecialChar contained "\\\([0-9]\+\|o[0-7]\+\|x[0-9a-fA-F]\+\|[\"\\'&\\abfnrtv]\|^[A-Z^_\[\\\]]\)" +syn match unisonSpecialChar contained "\\\(NUL\|SOH\|STX\|ETX\|EOT\|ENQ\|ACK\|BEL\|BS\|HT\|LF\|VT\|FF\|CR\|SO\|SI\|DLE\|DC1\|DC2\|DC3\|DC4\|NAK\|SYN\|ETB\|CAN\|EM\|SUB\|ESC\|FS\|GS\|RS\|US\|SP\|DEL\)" +syn match unisonSpecialCharError contained "\\&\|'''\+" +syn region unisonString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=unisonSpecialChar +syn match unisonCharacter "[^a-zA-Z0-9_']'\([^\\]\|\\[^']\+\|\\'\)'"lc=1 contains=unisonSpecialChar,unisonSpecialCharError +syn match unisonCharacter "^'\([^\\]\|\\[^']\+\|\\'\)'" contains=unisonSpecialChar,unisonSpecialCharError +syn match unisonNumber "\<[0-9]\+\>\|\<0[xX][0-9a-fA-F]\+\>\|\<0[oO][0-7]\+\>" +syn match unisonFloat "\<[0-9]\+\.[0-9]\+\([eE][-+]\=[0-9]\+\)\=\>" + +" Keyword definitions. These must be patterns instead of keywords +" because otherwise they would match as keywords at the start of a +" "literate" comment (see lu.vim). +syn match unisonModule "\" +syn match unisonImport "\" +syn match unisonTypedef "\<\(unique\|structural\|∀\|forall\)\>" +syn match unisonStatement "\<\(ability\|do\|type\|where\|match\|cases\|;\|let\|with\|handle\)\>" +syn match unisonConditional "\<\(if\|else\|then\)\>" + +syn match unisonBoolean "\<\(true\|false\)\>" + +syn match unisonType "\<\C[A-Z][0-9A-Za-z_'!]*\>" +syn match unisonName "\<\C[a-z_][0-9A-Za-z_'!]*\>" + +" Comments +syn match unisonLineComment "---*\([^-!#$%&\*\+./<=>\?@\\^|~].*\)\?$" +syn region unisonBlockComment start="{-" end="-}" contains=unisonBlockComment +syn region unisonBelowFold start="^---" skip="." end="." contains=unisonBelowFold + +" Docs +syn region unisonDocBlock matchgroup=unisonDoc start="{{" end="}}" contains=unisonDocTypecheck,unisonDocQuasiquote,unisonDocDirective,unisonDocCode,unisonDocCodeInline,unisonDocCodeRaw,unisonDocMono,@markdownLikeDocs +syn region unisonDocQuasiquote contained matchgroup=unisonDocQuote start="{{" end= "}}" contains=TOP +syn region unisonDocCode contained matchgroup=unisonDocCode start="^\s*```\s*$" end="^\s*```\s*$" contains=TOP +syn region unisonDocTypecheck contained matchgroup=unisonDocCode start="^\s*@typecheck\s*```\s*$" end="^\s*```\s*$" contains=TOP +syn region unisonDocCodeRaw contained matchgroup=unisonDocCode start="^\s*```\s*raw\s*$" end="^\s*```\s*$" contains=NoSyntax +syn region unisonDocCodeInline contained matchgroup=unisonDocCode start="`\@" + +" things like +" > my_func 1 3 +" test> Function.tap.tests.t1 = check let +" use Nat == + +" ( 99, 100 ) === (withInitialValue 0 do +" : : : +syn match unisonWatch "^[A-Za-z]*>" + +hi def link unisonWatch Debug +hi def link unisonDocMono Delimiter +hi def link unisonDocDirective Import +hi def link unisonDocQuote Delimiter +hi def link unisonDocCode Delimiter +hi def link unisonDoc String +hi def link unisonBelowFold Comment +hi def link unisonBlockComment Comment +hi def link unisonBoolean Boolean +hi def link unisonCharacter Character +hi def link unisonComment Comment +hi def link unisonConditional Conditional +hi def link unisonConditional Conditional +hi def link unisonDebug Debug +hi def link unisonDelimiter Delimiter +hi def link unisonDocBlock String +hi def link unisonDocDirective Import +hi def link unisonDocIncluded Import +hi def link unisonFloat Float +hi def link unisonImport Include +hi def link unisonLineComment Comment +hi def link unisonLink Type +hi def link unisonName Identifier +hi def link unisonNumber Number +hi def link unisonOperator Operator +hi def link unisonSpecialChar SpecialChar +hi def link unisonSpecialCharError Error +hi def link unisonStatement Statement +hi def link unisonString String +hi def link unisonType Type +hi def link unisonTypedef Typedef + + +let b:current_syntax = "unison" + +" Options for vi: ts=8 sw=2 sts=2 nowrap noexpandtab ft=vim -- cgit From cc4540ebce6b719e735ef314b4acc5460aa1aeae Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Wed, 9 Aug 2023 22:37:49 +0200 Subject: vim-patch:92f076e53e22 (#24634) Update krl and add rapid syntax files (vim/vim#12750) https://github.com/vim/vim/commit/92f076e53e22b467fb6d12051fec2d4bdbda88fe Co-authored-by: Patrick Meiser-Knosowski <31903021+KnoP-01@users.noreply.github.com> --- runtime/syntax/krl.vim | 21 +- runtime/syntax/rapid.vim | 687 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 699 insertions(+), 9 deletions(-) create mode 100644 runtime/syntax/rapid.vim (limited to 'runtime/syntax') diff --git a/runtime/syntax/krl.vim b/runtime/syntax/krl.vim index a50790841e..6808a48fc4 100644 --- a/runtime/syntax/krl.vim +++ b/runtime/syntax/krl.vim @@ -2,7 +2,7 @@ " Language: Kuka Robot Language " Maintainer: Patrick Meiser-Knosowski " Version: 3.0.0 -" Last Change: 18. Apr 2022 +" Last Change: 22. Jun 2023 " Credits: Thanks for contributions to this to Michael Jagusch " Thanks for beta testing to Thomas Baginski " @@ -109,11 +109,11 @@ highlight default link krlGeomOperator Operator " Type, StorageClass and Typedef {{{ " Simple data types -syn keyword krlType bool char real int containedin=krlAnyType +syn keyword krlType bool char real int " External program and function -syn keyword krlType ext extfct extfctp extp containedin=krlAnyType +syn keyword krlType ext extfct extfctp extp " Communication -syn keyword krlType signal channel containedin=krlAnyType +syn keyword krlType signal channel highlight default link krlType Type " StorageClass syn keyword krlStorageClass decl global const struc enum @@ -200,19 +200,20 @@ syn keyword krlEnum adap_acc model_type control_parameter eko_mode " " Predefined structures and enums found in /steu/mada/$custom.dat syn keyword krlStructure pro_io_t ser ext_mod_t coop_krc ws_config bin_type coop_update_t ldc_reaction -syn keyword krlEnum axis_of_coordinates spline_para_variant target_status cp_vel_type cp_statmon +syn keyword krlEnum axis_of_coordinates motion_mode spline_para_variant spreadstartpolicy target_status cp_vel_type cp_statmon " " Predefined structures and enums found in /steu/mada/$machine.dat syn keyword krlStructure emstop_path boxstatesafein boxstatesafeout syn keyword krlEnum digincode " " Predefined structures and enums found in /steu/mada/$option.dat -syn keyword krlStructure msg_t +syn keyword krlStructure installed_motion_modes msg_t +syn keyword krlEnum step_enum " syn keyword krlEnum " " Predefined structures and enums found in /r1/system/$config.dat " BasisTech -syn keyword krlStructure dig_out_type ctrl_in_t ctrl_out_t fct_out_t fct_in_t odat basis_sugg_t out_sugg_t md_state machine_def_t machine_tool_t machine_frame_t trigger_para constvel_para condstop_para adat tm_sugg_t tqm_tqdat_t sps_prog_type +syn keyword krlStructure dig_out_type ctrl_in_t ctrl_out_t fct_out_t fct_in_t odat hdat basis_sugg_t out_sugg_t md_state machine_def_t machine_tool_t machine_frame_t trigger_para constvel_para condstop_para adat tm_sugg_t tqm_tqdat_t sps_prog_type syn keyword krlEnum bas_command out_modetype ipo_m_t apo_mode_t funct_type p00_command timer_actiontype " " GripperTech @@ -271,7 +272,9 @@ highlight default link krlStatement Statement syn keyword krlConditional if then else endif switch case default endswitch skip endskip highlight default link krlConditional Conditional " Repeat -syn keyword krlRepeat for to step endfor while endwhile repeat until loop endloop exit +syn keyword krlRepeat for to endfor while endwhile repeat until loop endloop exit +" STEP is used as variable in VKRC, this pattern should match STEP -, 5(constant number) or VAR +syn match krlRepeat /\v\cstep\s+%(-|\w)/me=e-1 highlight default link krlRepeat Repeat " Label syn keyword krlLabel goto @@ -390,7 +393,7 @@ if get(g:, 'krlShowError', 1) " some more or less common typos " " vars or funcs >24 chars are not possible in krl. a234567890123456789012345 - syn match krlError0 /\w\{25,}/ containedin=krlFunction,krlNames,krlLabel,krlAnyType,krlEnumVal,krlSysvars + syn match krlError0 /\w\{25,}/ containedin=krlFunction,krlNames,krlLabel,krlEnumVal,krlSysvars " " should be interrupt (on|off) \w+ syn match krlError1 /\vinterrupt[ \t(]+[_$a-zA-Z0-9]+[_$a-zA-Z0-9.\[\]()+\-*/]*[ \t)]+o%(n|ff)>/ diff --git a/runtime/syntax/rapid.vim b/runtime/syntax/rapid.vim new file mode 100644 index 0000000000..ed0da095c0 --- /dev/null +++ b/runtime/syntax/rapid.vim @@ -0,0 +1,687 @@ +" ABB Rapid Command syntax file for Vim +" Language: ABB Rapid Command +" Maintainer: Patrick Meiser-Knosowski +" Version: 2.3.0 +" Last Change: 21. Jul 2023 +" Credits: Thanks for beta testing to Thomas Baginski +" +" Suggestions of improvement are very welcome. Please email me! +" +" +" +" Note to self: +" for testing perfomance +" open a 1000 lines file. +" :syntime on +" G +" hold down CTRL-U until reaching top +" :syntime report +" +" +" TODO: - highlight rapid constants and maybe constants from common +" technology packages +" - optimize rapidErrorStringTooLong +" - error highlight for missing 2nd point in MoveCirc et al + +" Init {{{ +" Remove any old syntax stuff that was loaded (5.x) or quit when a syntax file +" was already loaded (6.x). +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +let s:keepcpo= &cpo +set cpo&vim + +" if colorscheme is tortus rapidNoHighLink defaults to 1 +if (get(g:,'colors_name'," ")=="tortus" || get(g:,'colors_name'," ")=="tortusless") + \&& !exists("g:rapidGroupName") + let g:rapidGroupName=1 +endif +" rapidGroupName defaults to 0 if it's not initialized yet or 0 +if !get(g:,"rapidGroupName",0) + let g:rapidGroupName=0 +endif + +" Rapid does ignore case +syn case ignore +" spell checking +syn spell notoplevel +" }}} init + +" common highlighting {{{ + +" Error {{{ +if get(g:,'rapidShowError',1) + " + " This error must be defined befor rapidCharCode and rapidEscapedBackSlash + " a string containing a single \ which is not a char code + syn match rapidErrorSingleBackslash /\\/ contained + highlight default link rapidErrorSingleBackslash Error + " +endif +" }}} Error + +" Constant values {{{ +" Boolean +syn keyword rapidBoolean TRUE FALSE Edge High Low +highlight default link rapidBoolean Boolean +" Float (num) +" syn match rapidFloat /\v%(\W|_)@1<=[+-]?\d+\.?\d*%(\s*[eE][+-]?\d+)?/ +syn match rapidFloat /\v\c%(<\d+\.|\.?<\d)\d*%(E[+-]?\d+)?>/ contains=rapidOperator +highlight default link rapidFloat Float +" integer in decimal, hexadecimal, octal and binary +syn match rapidDec /\<[0-9]\+\>/ +highlight default link rapidDec Number +syn match rapidHex /\<0x[0-9a-fA-F]\+\>/ +highlight default link rapidHex Number +syn match rapidOct /\<0o[0-7]\+\>/ +highlight default link rapidOct Number +syn match rapidBin /\<0b[01]\+\>/ +highlight default link rapidBin Number +" String. Note: Don't rename group rapidString. Indent depend on this +syn region rapidString matchgroup=rapidString start=/"/ skip=/""/ end=/"/ oneline contains=rapidStringDoubleQuote,rapidEscapedBackSlash,rapidCharCode,rapidErrorSingleBackslash,rapidErrorStringTooLong,@Spell +highlight default link rapidString String +" two adjacent "" in string for one double quote +syn match rapidStringDoubleQuote /""/ contained +highlight default link rapidStringDoubleQuote SpecialChar +" character code in string +syn match rapidCharCode /\\\x\x/ contained +highlight default link rapidCharCode SpecialChar +" escaped \ in string +syn match rapidEscapedBackSlash /\\\\/ contained +highlight default link rapidEscapedBackSlash SpecialChar +" }}} Constant values + +" }}} common highlighting + +if bufname("%") =~ '\c\.cfg$' +" {{{ highlighting for *.cfg + + " special chars {{{ + " syn match rapidOperator /:\|[+-]\|\*\|\/\|\\/ + syn match rapidOperator /[-+*/:\\]/ + syn match rapidOperator /^#/ + highlight default link rapidOperator Operator + " }}} special chars + + " sections {{{ + syn match rapidException /^\w\+/ + syn match rapidException /CFG_\d\+/ + highlight default link rapidException Exception + " }}} sections + + " Error {{{ + if get(g:,'rapidShowError',1) + " + " This error must be defined after rapidString + " Any Name longer than 32 chars + syn match rapidErrorNameTooLong /-Name "[^"]\{33,}"/ + highlight default link rapidErrorNameTooLong Error + " + endif + " }}} Error + + " }}} highlighting for *.cfg +else + " highlighting for *.mod, *.sys and *.prg {{{ + + " sync for regions from a line comment or the start of a function + syn sync match rapidSync grouphere NONE /\v\c^\s*%(!|%(task\s+|local\s+)?%(module|proc|func|trap|record)>)/ + + " Comment {{{ + " TODO Comment + syn match rapidTodoComment contained /\\|\\|\/ + highlight default link rapidTodoComment Todo + " Debug comment + syn match rapidDebugComment contained /\/ + highlight default link rapidDebugComment Debug + " Line comment + syn match rapidComment /!.*$/ contains=rapidTodoComment,rapidDebugComment,@Spell + highlight default link rapidComment Comment + " }}} Comment + + " Header {{{ + syn match rapidHeader /^%%%/ + highlight default link rapidHeader PreProc + " }}} Header + + " Operator {{{ + " Boolean operator + syn keyword rapidOperator and or xor not div mod + " Arithmetic and compare operator + syn match rapidOperator /[-+*/<>:=]/ + " conditional argument + syn match rapidOperator /?/ + highlight default link rapidOperator Operator + " }}} Operator + + " Type, StorageClass and Typedef {{{ + " anytype (preceded by 'alias|pers|var|const|func' + " TODO: still missing are userdefined types which are part of a parameter: + " PROC message( mystring msMessagePart1{}, + " \ myvar msMsg4{}) + " TODO testing. Problem: does not highlight any type if it's part of an argument list + " syn match rapidAnyType /\v^\s*(global\s+|task\s+|local\s+)?(alias|pers|var|const|func)\s+\w+>/ contains=rapidStorageClass,rapidType,rapidTypeDef + " highlight default link rapidAnyType Type + syn keyword rapidType accdata aiotrigg bool btnres busstate buttondata byte + syn keyword rapidType cfgdomain clock cnvcmd confdata confsupdata corrdescr datapos deflectiondata dionum dir dnum + syn keyword rapidType egmframetype egmident egm_minmax egmstate egmstopmode errdomain errnum ErrorInfo errstr errtype event_type exec_level extjoint handler_type + syn keyword rapidType icondata identno inposdata intnum inttypes iodev iounit_state jointtarget + syn keyword rapidType listitem loaddata loadidnum loadsession mecunit motionprocessmode motsetdata + " syn keyword rapidType num + syn keyword rapidType opcalc opnum orient paridnum paridvalidnum pathrecid pnpdata pos pose proc_times progdisp o_jointtarget o_robtarget + syn keyword rapidType rawbytes restartdata rmqheader rmqmessage rmqslot robjoint robtarget + syn keyword rapidType searchdata sensor sensorstate sensorvardata shapedata signalai signalao signaldi signaldo signalgi signalgo signalorigin singdata socketdev socketstatus speeddata stopmovestartmove_mem stoppoint stoppointdata string stringdig sup_timeouts supervtype switch symnum syncident + syn keyword rapidType taskid tasks tasksatstart testsignal tooldata tpnum trapdata triggdata triggflag triggios triggiosdnum triggmode triggstrgo tsp_status tunegtype tunetype + syn keyword rapidType uishownum veldata visiondata wobjdata wzstationary wztemporary zonedata + " SoftMove data types + syn keyword rapidType css_offset_dir css_soft_dir cssframe + " arc data types + syn keyword rapidType advSeamData arcdata flystartdata seamdata arctrackdata opttrackdata weavedata welddata + " conveyor tracking data types + syn keyword rapidType indcnvdata + " Integrated Vision data types + syn keyword rapidType cameradev cameratarget + " arc Weldguide and MultiPass data types + syn keyword rapidType adaptdata trackdata multidata + " dispense data types + syn keyword rapidType beaddata equipdata + " Spot data types + syn keyword rapidType gundata gunnum spotdata forcedata simdata smeqdata smeqtype + " Tool change data types + syn keyword rapidType standno ToolInfo toolno + " Continuous Application Platform data types + syn keyword rapidType capaptrreferencedata capdata capevent caplatrackdata capmvsttim capspeeddata capspeeddata capstopmode captestno captrackdata capweavedata flypointdata processtimes restartblkdata supervtimeouts weavestartdata + " Bulls Eye data types + syn keyword rapidType be_device be_scan be_tooldesign + " Force Control data types + syn keyword rapidType fcboxvol fccondstatus fccylindervol fcdamping fcforcevector fcframe fclindir fcprocessdata fcplane fcrotdir fcspeedvector fcspherevol fcspdchgtunetype fcxyznum + " Discrete application platform data types + syn keyword rapidType dadescapp dadescprc daintdata + " VW Konzernstandard VWKS_1.07.02 + syn keyword rapidType merker + syn keyword rapidType frgnum frgwert robnum + syn keyword rapidType fmnum applid calibdatavorr stepdata + syn keyword rapidType tsmethode tsdaten teilspeicherdaten + syn keyword rapidType greiferdaten greiferposition bauteildaten bauteilkontrolle g_datenident g_sensor g_signal g_teilident g_ventil + syn keyword rapidType strgnum typnum + syn keyword rapidType hubnum kopfnum + syn keyword rapidType applservicetype + syn keyword rapidType applfraesdaten kwdionum + syn keyword rapidType butechnum + syn keyword rapidType toolnum dbnum + " das folgende sind datentypen aber das kann man doch nicht machen... + " syn keyword rapidType position wert + syn keyword rapidType camdata camlimitdata cammode camprotocoldata camstatus camsequence campositionstatus + syn keyword rapidType saposnum sabereichnum autofocusnum focusposnum lascaledata laleistungnum larobnum laprognum uebwnum dgbanum dgjobnum gasspuelnum davalve gasuebwnum + syn keyword rapidType lsfigurnum lsstarttype + syn keyword rapidType lwprognum lwdiodnum lsstarttype + syn keyword rapidType lztype diskrethubnum lztipnum + syn keyword rapidType gblmethod + syn keyword rapidType buatypenum buatechnum buadirnum + highlight default link rapidType Type + " Storage class + syn keyword rapidStorageClass LOCAL TASK VAR PERS CONST ALIAS NOVIEW NOSTEPIN VIEWONLY READONLY SYSMODULE INOUT + highlight default link rapidStorageClass StorageClass + " Not a typedef but I like to have those highlighted different then types, + " structures or strorage classes + syn keyword rapidTypeDef MODULE ENDMODULE PROC ERROR UNDO BACKWARD ENDPROC RECORD ENDRECORD TRAP ENDTRAP FUNC ENDFUNC + highlight default link rapidTypeDef TypeDef + " }}} Type, StorageClass and Typedef + + " Statements, keywords et al {{{ + " syn keyword rapidStatement + " highlight default link rapidStatement Statement + " Conditional + syn keyword rapidConditional if then elseif else endif test case default endtest + highlight default link rapidConditional Conditional + " Repeat + syn keyword rapidRepeat do + syn match rapidRepeat /\c\v^\s*%(|)%([^!]+)@=/ + syn keyword rapidRepeat from to step endfor endwhile + highlight default link rapidRepeat Repeat + " Label + syn keyword rapidLabel goto + syn match rapidLabel /\c\v^\s*[[:upper:][:lower:]]\k*\:\ze%([^=]|$)/ contains=rapidConditional,rapidOperator + highlight default link rapidLabel Label + " Keyword + syn keyword rapidKeyword AccSet ActEventBuffer ActUnit Add AliasCamera AliasIO AliasIOReset BitClear BitSet BookErrNo BrakeCheck + syn keyword rapidKeyword CallByVar CancelLoad CheckProgRef CirPathMode Clear ClearIOBuff ClearPath ClearRawBytes ClkReset ClkStart ClkStop Close CloseDir ConfJ ConfL CONNECT CopyFile CopyRawBytes CornerPathWarning CorrClear CorrCon CorrDiscon CorrWrite + syn keyword rapidKeyword CSSAct CSSDeact CSSForceOffsetAct CSSForceOffsetDeact CSSOffsetTune CyclicBrakeCheck + syn keyword rapidKeyword DeactEventBuffer DeactUnit Decr DitherAct DitherDeact DropSensor + syn keyword rapidKeyword EGMActJoint EGMActMove EGMActPose EGMGetId EGMReset EGMSetupAI EGMSetupAO EGMSetupGI EGMSetupLTAPP EGMSetupUC EOffsOff EOffsOn EOffsSet EraseModule ErrLog ErrWrite + syn keyword rapidKeyword FitCircle FricIdInit FricIdEvaluate FricIdSetFricLevels + syn keyword rapidKeyword GetDataVal GetGroupSignalInfo GetJointData GetSysData GetTorqueMargin GetTrapData GripLoad HollowWristReset + syn keyword rapidKeyword IDelete IDisable IEnable IError Incr IndReset InvertDO IOBusStart IOBusState IoCtrlAxis_RefSync IoCtrlAxis_RefSyncOff IoCtrlAxis_RefSyncOn IODisable IOEnable IPers IRMQMessage ISignalAI ISignalAO ISignalDI ISignalDO ISignalGI ISignalGO ISleep ITimer IVarValue IWatch + syn keyword rapidKeyword Load LoadId MakeDir ManLoadIdProc MatrixSolve MatrixSolveQR MatrixSVD MechUnitLoad MotionProcessModeSet MotionSup MToolRotCalib MToolTCPCalib Open OpenDir + syn keyword rapidKeyword PackDNHeader PackRawBytes PathAccLim PathLengthReset PathLengthStart PathLengthStop PathRecStart PathRecStop PathResol PDispOff PDispOn PDispSet ProcerrRecovery PrxActivAndStoreRecord PrxActivRecord PrxDbgStoreRecord PrxDeactRecord PrxResetPos PrxResetRecords PrxSetPosOffset PrxSetRecordSampleTime PrxSetSyncalarm PrxStartRecord PrxStopRecord PrxStoreRecord PrxUseFileRecord PulseDO + syn keyword rapidKeyword ReadAnyBin ReadBlock ReadCfgData ReadErrData ReadRawBytes ReadVarArr RemoveAllCyclicBool RemoveCyclicBool RemoveDir RemoveFile RenameFile Reset ResetAxisDistance ResetAxisMoveTime ResetPPMoved ResetRetryCount ResetTorqueMargin RestoPath Rewind RMQEmptyQueue RMQFindSlot RMQGetMessage RMQGetMsgData RMQGetMsgHeader RMQReadWait RMQSendMessage RMQSendWait + syn keyword rapidKeyword SafetyControllerSyncRequest Save SaveCfgData SCWrite SenDevice Set SetAllDataVal SetAO SetDataSearch SetDataVal SetDO SetGO SetLeadThrough SetSysData SetupCyclicBool SiConnect SiClose SiGetCyclic SingArea SiSetCyclic SkipWarn SocketAccept SocketBind SocketClose SocketConnect SocketCreate SocketListen SocketReceive SocketReceiveFrom SocketSend SocketSendTo SoftAct SoftDeact SoftElbow SpeedLimAxis SpeedLimCheckPoint SpeedRefresh SpyStart SpyStop StartLoad STCalib STClose STIndGun STIndGunReset SToolRotCalib SToolTCPCalib STOpen StorePath STTune STTuneReset SupSyncSensorOff SupSyncSensorOn SyncMoveOff SyncMoveOn SyncMoveResume SyncMoveSuspend SyncMoveUndo SyncToSensor SystemStopAction + syn keyword rapidKeyword TestSignDefine TestSignReset TextTabInstall TPErase TPReadDnum TPReadFK TPReadNum TPShow TPWrite TriggCheckIO TriggDataCopy TriggDataReset TriggEquip TriggInt TriggIO TriggRampAO TriggSpeed TriggStopProc TryInt TuneReset TuneServo + syn keyword rapidKeyword UIMsgBox UIMsgWrite UIMsgWriteAbort UIShow UnLoad UnpackRawBytes VelSet WaitAI WaitAO WaitDI WaitDO WaitGI WaitGO WaitLoad WaitRob WaitSensor WaitSyncTask WaitTestAndSet WaitTime WaitUntil WarmStart WITH WorldAccLim Write WriteAnyBin WriteBin WriteBlock WriteCfgData WriteRawBytes WriteStrBin WriteVar WriteVarArr WZBoxDef WZCylDef WZDisable WZDOSet WZEnable WZFree WZHomeJointDef WZLimJointDef WZLimSup WZSphDef + " arc instructions + syn keyword rapidKeyword ArcRefresh RecoveryMenu RecoveryMenuWR RecoveryPosSet RecoveryPosReset SetWRProcName + " conveyor tracking instructions + syn keyword rapidKeyword UseACCProfile WaitWObj DropWObj RecordProfile WaitAndRecProf StoreProfile LoadProfile ActivateProfile DeactProfile CnvGenInstr CnvSync CnvGenInstr IndCnvInit IndCnvEnable IndCnvDisable IndCnvReset IndCnvAddObject + syn keyword rapidKeyword UseReachableTargets GetMaxUsageTime ResetMaxUsageTime CnvPredictReach + " Integrated Vision instructions + syn keyword rapidKeyword CamFlush CamGetParameter CamGetResult CamLoadJob CamReqImage CamSetExposure CamSetParameter CamSetProgramMode CamSetRunMode CamStartLoadJob CamWaitLoadJob + " arc Weldguide and MultiPass instructions + syn keyword rapidKeyword MPSavePath MPLoadPath MPReadInPath MPOffsEaxOnPath + " Paint instructions + syn keyword rapidKeyword ConsoleWrite IpsSetParam PntProdUserLog SetBrush SetBrushFac + " Spot instructions + syn keyword rapidKeyword SetForce Calibrate ReCalcTCP IndGunMove IndGunMoveReset OpenHighLift CloseHighLift SwSetIntSpotData SwSetIntForceData SwSetIntGunData SwSetIntSimData SwGetCalibData SwGetFixTipData + " Tool change instructions + syn keyword rapidKeyword TcCloseCover TcDropOffTool TcLockTool TcOpenCover TcPickupTool TcUnlockTool + " dispense instructions + syn keyword rapidKeyword SetTmSignal SyncWWObj + " Continuous Application Platform instructions + syn keyword rapidKeyword CapAPTrSetup CapAPTrSetupAI CapAPTrSetupAO CapAPTrSetupPERS CapCondSetDO CapEquiDist CapNoProcess CapRefresh CAPSetStopMode CapWeaveSync ICap InitSuperv IPathPos RemoveSuperv SetupSuperv + " Bulls Eye instructions + syn keyword rapidKeyword BECheckTcp BEDebugState BERefPointer BESetupToolJ BETcpExtend BEUpdateTcp + " Force Control instructions + syn keyword rapidKeyword FCAct FCCalib FCCondForce FCCondOrient FCCondPos FCCondReoriSpeed FCCondTCPSpeed FCCondTorque FCCondWaitWhile FCDeact FCPress1LStart FCPressC FCPressEnd FCPressL FCRefCircle FCRefForce FCRefLine FCRefMoveFrame FCRefRot FCRefSpiral FCRefSprForceCart FCRefStart FCRefStop FCRefTorque FCResetDampingTune FCResetLPFilterTune FCSpdChgAct FCSpdChgDeact FCSpdChgTunSet FCSpdChgTunReset FCSetDampingTune FCSetLPFilterTune FCSupvForce FCSupvOrient FCSupvPos FCSupvReoriSpeed FCSupvTCPSpeed FCSupvTorque + " Discrete application platform instructions + syn keyword rapidKeyword DaActProc DaDeactAllProc DaDeactProc DaDefExtSig DaDefProcData DaDefProcSig DaDefUserData DaGetCurrData DaSetCurrData DaSetupAppBehav DaStartManAction DaGetAppDescr DaGetAppIndex DaGetNumOfProcs DaGetNumOfRob DaGetPrcDescr + " Production Manager instructions + syn keyword rapidKeyword ExecEngine PMgrGetNextPart PMgrSetNextPart PMgrRunMenu + " Homepos-Running instructions + syn keyword rapidKeyword HR_Exit HR_ExitCycle HR_SavePos HR_SetMoveToStartPos HR_SetTypeDIndex HR_SetTypeIndex + highlight default link rapidKeyword Keyword + " Exception + syn keyword rapidException Exit ErrRaise ExitCycle Raise RaiseToUser Retry Return TryNext + syn match rapidException /\s\+Stop\s*[\\;]/me=e-1 + highlight default link rapidException Exception + " }}} Statements, keywords et al + + " Special keyword for move command {{{ + " uncategorized yet + syn keyword rapidMovement MovePnP + syn keyword rapidMovement EGMMoveC EGMMoveL EGMRunJoint EGMRunPose EGMStop + syn keyword rapidMovement IndAMove IndCMove IndDMove IndRMove + " common instructions + syn keyword rapidMovement MoveAbsJ MoveC MoveExtJ MoveJ MoveL + syn keyword rapidMovement MoveCAO MoveCDO MoveCGO MoveCSync MoveJAO MoveJDO MoveJGO MoveJSync MoveLAO MoveLDO MoveLGO MoveLSync + syn keyword rapidMovement SearchC SearchExtJ SearchL + syn keyword rapidMovement TriggC TriggJ TriggL TriggJIOs TriggLIOs + " Arc instructions + syn keyword rapidMovement ArcC ArcC1 ArcC2 ArcCEnd ArcC1End ArcC2End ArcCStart ArcC1Start ArcC2Start + syn keyword rapidMovement ArcL ArcL1 ArcL2 ArcLEnd ArcL1End ArcL2End ArcLStart ArcL1Start ArcL2Start ArcMoveExtJ + " Arc Weldguide and MultiPass instructions + syn keyword rapidMovement ArcRepL ArcAdaptLStart ArcAdaptL ArcAdaptC ArcAdaptLEnd ArcAdaptCEnd ArcCalcLStart ArcCalcL ArcCalcC ArcCalcLEnd ArcCalcCEnd ArcAdaptRepL + syn keyword rapidMovement Break + " Continuous Application Platform instructions + syn keyword rapidMovement CapC CapL CapLATrSetup CSSDeactMoveL ContactL + " Dispense instructions + syn keyword rapidMovement DispL DispC + " Nut instructions" + syn keyword rapidMovement NutL NutJ + syn keyword rapidMovement PathRecMoveBwd PathRecMoveFwd + " Paint instructions" + syn keyword rapidMovement PaintL PaintLSig PaintLDO PaintC + syn keyword rapidMovement StartMove StartMoveRetry StepBwdPath StopMove StopMoveReset + " Spot instructions + syn keyword rapidMovement SpotL SpotJ SpotML SpotMJ CalibL CalibJ MeasureWearL + " Homepos-Running instructions + syn keyword rapidMovement SMoveJ SMoveJDO SMoveJGO SMoveJSync SMoveL SMoveLDO SMoveLGO SMoveLSync SSearchL STriggJ STriggL + syn keyword rapidMovement HR_ContMove HR_MoveBack HR_MoveRoutine HR_MoveTo HR_MoveToHome SCSSDeactMoveL + " Discrete application platform instructions + syn keyword rapidMovement DaProcML DaProcMJ + " VW Konzernstandard VWKS_1.07.02 + syn keyword rapidMovement MoveABS MoveABS_FB MoveABS_FRG MoveABS_ROB + syn keyword rapidMovement MoveCIRC MoveCIRC_FB MoveCIRC_FRG MoveCIRC_ROB + syn keyword rapidMovement MoveLIN MoveLIN_FB MoveLIN_FRG MoveLIN_ROB + syn keyword rapidMovement MovePTP MovePTP_FB MovePTP_FRG MovePTP_ROB + syn keyword rapidMovement SearchCIRC SearchCIRC_M + syn keyword rapidMovement SearchLIN SearchLIN_M + syn keyword rapidMovement MoveABS_AO MoveABS_DO MoveABS_GO + syn keyword rapidMovement MoveCIRC_AO MoveCIRC_DO MoveCIRC_GO + syn keyword rapidMovement MoveLIN_AO MoveLIN_DO MoveLIN_GO + syn keyword rapidMovement KW_LoesenLIN + syn keyword rapidMovement SPZ_FraesenLIN SPZ_FraesenPTP SPZ_MessenLIN SPZ_MessenPTP SPZ_LIN SPZ_PTP + syn keyword rapidMovement BZ_LIN BZ_PTP + syn keyword rapidMovement KL_LIN KL_CIRC + syn keyword rapidMovement BP_LIN BP_PTP + syn keyword rapidMovement BU_CIRC BU_LIN + syn keyword rapidMovement CZ_LIN CZ_LIN_V CZ_PTP CZ_PTP_V + syn keyword rapidMovement FD_LIN FD_PTP + syn keyword rapidMovement KG_LIN KG_PTP + syn keyword rapidMovement DA_LIN + syn keyword rapidMovement LK_CIRC LK_LIN + syn keyword rapidMovement LL_CIRC LL_LIN + syn keyword rapidMovement LS_CIRC LS_LIN LS_LIN_F LS_PTP_F + syn keyword rapidMovement LW_CIRC LW_LIN + syn keyword rapidMovement LZ_LIN LZ_PTP LZ_ReinigenLIN LZ_ReinigenPTP + syn keyword rapidMovement MS_CIRC MS_LIN MS_ReinigenLIN MS_SearchLIN MS_PTP_CS MS_LIN_CS GBL_LIN GBL_PTP GBL_RefPointLIN + syn keyword rapidMovement NK_LIN + syn keyword rapidMovement NZ_LIN NZ_LIN_V NZ_PTP NZ_PTP_V + syn keyword rapidMovement PR_LIN PR_PTP + syn keyword rapidMovement RF_CIRC RF_LIN + syn keyword rapidMovement STP_FraesenLIN STP_FraesenPTP STP_LIN STP_PTP + syn keyword rapidMovement SM_LIN SM_PTP + syn keyword rapidMovement BUA_CIRC BUA_LIN BUA_MessenLIN BUA_MessenPTP + syn keyword rapidMovement KE_LIN + if g:rapidGroupName + highlight default link rapidMovement Movement + else + highlight default link rapidMovement Special + endif + " }}} special keyword for move command + + " Any name {{{ + syn match rapidNames /\v[[:upper:][:lower:]](\k|\.)*/ + " }}} Any name + + " Attempt to avoid false highlight of num in case of parameter name: + " TPWrite "goPosNo="\num:=GOutput(goPosNo); + " Must follow after rapidNames in this file + syn match rapidType /\c\v\s*\ze[^ :]/ + + " Structure value {{{ + " rapid structrure values. added to be able to conceal them + syn region rapidConcealableString matchgroup=rapidConcealableString start=/"/ skip=/""/ end=/"/ oneline keepend extend contained contains=rapidStringDoubleQuote,rapidEscapedBackSlash,rapidCharCode,rapidErrorSingleBackslash,rapidErrorStringTooLong,@Spell conceal + highlight default link rapidConcealableString String + syn region rapidStructVal matchgroup=rapidStructDelimiter start=/\[/ end=/\]/ contains=rapidStructVal,rapidBoolean,rapidDec,rapidHex,rapidOct,rapidBin,rapidFloat,rapidConcealableString,rapidDelimiter,rapidConstant,rapidErrNo,rapidIntNo,rapidOperator keepend extend conceal cchar=* + highlight default link rapidStructDelimiter Delimiter + " check edge cases like this one: + " LOCAL CONST listitem lstAuswService{18}:=[["","Service Position"],["","Bremsentest"],["","Referenzfahrt"],["","Manuelles Abfahren"],["","Justagestellung"],["","Transportposition"], + " ["","Spitze-Spitze Greifer 1, [RT]"],["","Spitze-Spitze Greifer 2, [FT]"],["","Spitze-Spitze Pruefspitze"],["","Werkobjekt Ablage"],["","Werkobjekt Modul 1"], + " ["","Werkobjekt Modul 2"],["","TCP von Greifer 1 vermessen, [RT]"],["","TCP von Greifer 2 vermessen, [FT]"],["","TCP von Basisdorn vermessen"], + " ["","Greifer abdocken"],["","Greifer andocken"],["","Kollision Check (Ohne Greifer)"]]; + " }}} Structure value + + " Delimiter {{{ + syn match rapidDelimiter /[\\(){},;|]/ + highlight default link rapidDelimiter Delimiter + " }}} Delimiter + + " BuildInFunction {{{ + " dispense functions + syn keyword rapidBuildInFunction contained GetSignal GetSignalDnum + " Integrated Vision Platform functions + syn keyword rapidBuildInFunction contained CamGetExposure CamGetLoadedJob CamGetName CamNumberOfResults + " Continuous Application Platform functions + syn keyword rapidBuildInFunction contained CapGetFailSigs + syn keyword rapidBuildInFunction contained Abs AbsDnum ACos ACosDnum AInput AOutput ArgName ASin ASinDnum ATan ATanDnum ATan2 ATan2Dnum + syn keyword rapidBuildInFunction contained BitAnd BitAndDnum BitCheck BitCheckDnum BitLSh BitLShDnum BitNeg BitNegDnum BitOr BitOrDnum BitRSh BitRShDnum BitXOr BitXOrDnum ByteToStr + syn keyword rapidBuildInFunction contained CalcJointT CalcRobT CalcRotAxFrameZ CalcRotAxisFrame CDate CJointT ClkRead CorrRead Cos CosDnum CPos CRobT CrossProd CSpeedOverride CTime CTool CWObj + syn keyword rapidBuildInFunction contained DecToHex DefAccFrame DefDFrame DefFrame Dim DInput Distance DnumToNum DnumToStr DotProd DOutput + syn keyword rapidBuildInFunction contained EGMGetState EulerZYX EventType ExecHandler ExecLevel Exp + syn keyword rapidBuildInFunction contained FileSize FileTime FileTimeDnum FSSize + syn keyword rapidBuildInFunction contained GetAxisDistance GetAxisMoveTime GetMaxNumberOfCyclicBool GetMecUnitName GetModalPayLoadMode GetMotorTorque GetNextCyclicBool GetNextMechUnit GetNextSym GetNumberOfCyclicBool GetServiceInfo GetSignalOrigin GetSysInfo GetTaskName GetTime GetTSPStatus GetUASUserName GInput GInputDnum GOutput GOutputDnum + syn keyword rapidBuildInFunction contained HexToDec + syn keyword rapidBuildInFunction contained IndInpos IndSpeed IOUnitState IsBrakeCheckActive IsCyclicBool IsFile IsLeadThrough IsMechUnitActive IsPers IsStopMoveAct IsStopStateEvent IsSyncMoveOn IsSysId IsVar + syn keyword rapidBuildInFunction contained Max MaxExtLinearSpeed MaxExtReorientSpeed MaxRobReorientSpeed MaxRobSpeed Min MirPos ModExist ModTime ModTimeDnum MotionPlannerNo + syn keyword rapidBuildInFunction contained NonMotionMode NOrient NumToDnum NumToStr + syn keyword rapidBuildInFunction contained Offs OpMode OrientZYX ORobT + syn keyword rapidBuildInFunction contained ParIdPosValid ParIdRobValid PathLengthGet PathLevel PathRecValidBwd PathRecValidFwd PFRestart PoseInv PoseMult PoseVect Pow PowDnum PPMovedInManMode Present ProgMemFree PrxGetMaxRecordpos + syn keyword rapidBuildInFunction contained RawBytesLen ReadBin ReadDir ReadMotor ReadNum ReadStr ReadStrBin ReadVar RelTool RemainingRetries RMQGetSlotName RobName RobOS Round RoundDnum RunMode + syn keyword rapidBuildInFunction contained SafetyControllerGetChecksum SafetyControllerGetOpModePinCode SafetyControllerGetSWVersion SafetyControllerGetUserChecksum Sin SinDnum SocketGetStatus SocketPeek Sqrt SqrtDnum STCalcForce STCalcTorque STIsCalib STIsClosed STIsIndGun STIsOpen StrDigCalc StrDigCmp StrFind StrLen StrMap StrMatch StrMemb StrOrder StrPart StrToByte StrToVal + syn keyword rapidBuildInFunction contained Tan TanDnum TaskRunMec TaskRunRob TasksInSync TaskIsActive TaskIsExecuting TestAndSet TestDI TestSignRead TextGet TextTabFreeToUse TextTabGet TriggDataValid Trunc TruncDnum Type + syn keyword rapidBuildInFunction contained UIAlphaEntry UIClientExist UIDnumEntry UIDnumTune UIListView UIMessageBox UINumEntry UINumTune + syn keyword rapidBuildInFunction contained ValidIO ValToStr Vectmagn + " Bulls Eye functions + syn keyword rapidBuildInFunction contained OffsToolXYZ OffsToolPolar + " Force Control functions + syn keyword rapidBuildInFunction contained FCGetForce FCGetProcessData FCIsForceMode FCLoadID + " Discrete application platform functions + syn keyword rapidBuildInFunction contained DaGetFstTimeEvt DaCheckMMSOpt DaGetMP DaGetRobotName DaGetTaskName + " Production Manager functions + syn keyword rapidBuildInFunction contained PMgrAtSafe PMgrAtService PMgrAtState PMgrAtStation PMgrNextStation PMgrTaskNumber PMgrTaskName + " Spot functions + syn keyword rapidBuildInFunction contained SwGetCurrTargetName SwGetCurrSpotName + " Homepos-Running functions + syn keyword rapidBuildInFunction contained HR_RobotInHome HR_GetTypeDIndex HR_GetTypeIndex + " Paint functions + syn keyword rapidBuildInFunction contained IndexLookup IpsCommand IpsGetParam PaintCommand PntQueueExtraGet PntQueueExtraSet PntQueuePeek + if g:rapidGroupName + highlight default link rapidBuildInFunction BuildInFunction + else + highlight default link rapidBuildInFunction Function + endif + " }}} + + " Function {{{ + syn match rapidFunction contains=rapidBuildInFunction /\v\c%(<%(PROC|MODULE)\s+)@1032 chars are not possible in rapid. a234567890123456789012345 + syn match rapidErrorIdentifierNameTooLong /\k\{33,}/ containedin=rapidFunction,rapidNames,rapidLabel + highlight default link rapidErrorIdentifierNameTooLong Error + " + " a == b + 1 + syn match rapidErrorShouldBeColonEqual /\c\v%(^\s*%(%(TASK\s+|LOCAL\s+)?%(VAR|PERS|CONST)\s+\k+\s+)?\k+%(\k|[.{},*/+-])*\s*)@<=\=/ + highlight default link rapidErrorShouldBeColonEqual Error + " + " WaitUntil a==b + syn match rapidErrorShouldBeEqual /\c\v%(^\s*%(Return|WaitUntil|while)>[^!\\]+[^!<>])@<=%(\=|:)\=/ + syn match rapidErrorShouldBeEqual /\c\v%(^\s*%(if|elseif)>[^!\\]+[^!<>])@<=%(\=|:)\=\ze[^!\\]+/ + highlight default link rapidErrorShouldBeEqual Error + " + " WaitUntil a=>b + syn match rapidErrorShoudBeLessOrGreaterEqual /\c\v%(^\s*%(Return|WaitUntil|if|elseif|while)>[^!]+[^!<>])@<=\=[><]/ + highlight default link rapidErrorShoudBeLessOrGreaterEqual Error + " + " WaitUntil a>\s*\ Date: Thu, 10 Aug 2023 07:13:23 +0800 Subject: vim-patch:8f566fdb1e34 (#24636) update .wast files syntax highlighting (vim/vim#12741) https://github.com/vim/vim/commit/8f566fdb1e3452c9104d9e7af402adbfbcb463c7 Co-authored-by: Linda_pp --- runtime/syntax/wast.vim | 33 +++++++++++++++++++++++---------- 1 file changed, 23 insertions(+), 10 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/wast.vim b/runtime/syntax/wast.vim index 245d5f6f19..113d65c5a1 100644 --- a/runtime/syntax/wast.vim +++ b/runtime/syntax/wast.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: WebAssembly " Maintainer: rhysd -" Last Change: Jul 29, 2018 +" Last Change: Aug 7, 2023 " For bugs, patches and license go to https://github.com/rhysd/vim-wasm if exists("b:current_syntax") @@ -11,33 +11,42 @@ endif let s:cpo_save = &cpo set cpo&vim -syn cluster wastCluster contains=wastModule,wastInstWithType,wastInstGeneral,wastParamInst,wastControlInst,wastString,wastNamedVar,wastUnnamedVar,wastFloat,wastNumber,wastComment,wastList,wastType +syn cluster wastNotTop contains=wastModule,wastInstWithType,wastInstGetSet,wastInstGeneral,wastParamInst,wastControlInst,wastSimdInst,wastString,wastNamedVar,wastUnnamedVar,wastFloat,wastNumber,wastComment,wastList,wastType " Instructions " https://webassembly.github.io/spec/core/text/instructions.html " Note: memarg (align=,offset=) can be added to memory instructions syn match wastInstWithType "\%((\s*\)\@<=\<\%(i32\|i64\|f32\|f64\|memory\)\.[[:alnum:]_]\+\%(/\%(i32\|i64\|f32\|f64\)\)\=\>\%(\s\+\%(align\|offset\)=\)\=" contained display syn match wastInstGeneral "\%((\s*\)\@<=\<[[:alnum:]_]\+\>" contained display +syn match wastInstGetSet "\%((\s*\)\@<=\<\%(local\|global\)\.\%(get\|set\)\>" contained display " https://webassembly.github.io/spec/core/text/instructions.html#control-instructions -syn match wastControlInst "\%((\s*\)\@<=\<\%(block\|end\|loop\|if\|else\|unreachable\|nop\|br\|br_if\|br_table\|return\|call\|call_indirect\)\>" contained display +syn match wastControlInst "\%((\s*\)\@<=\<\%(block\|end\|loop\|if\|then\|else\|unreachable\|nop\|br\|br_if\|br_table\|return\|call\|call_indirect\)\>" contained display " https://webassembly.github.io/spec/core/text/instructions.html#parametric-instructions syn match wastParamInst "\%((\s*\)\@<=\<\%(drop\|select\)\>" contained display +" SIMD instructions +" https://webassembly.github.io/simd/core/text/instructions.html#simd-instructions +syn match wastSimdInst "\<\%(v128\|i8x16\|i16x8\|i32x4\|i64x2\|f32x4\|f64x2)\)\.[[:alnum:]_]\+\%(\s\+\%(i8x16\|i16x8\|i32x4\|i64x2\|f32x4\|f64x2\)\)\=\>" contained display " Identifiers " https://webassembly.github.io/spec/core/text/values.html#text-id -syn match wastNamedVar "$\+[[:alnum:]!#$%&'∗./:=>" display contained " Comments " https://webassembly.github.io/spec/core/text/lexical.html#comments -syn region wastComment start=";;" end="$" display +syn region wastComment start=";;" end="$" syn region wastComment start="(;;\@!" end=";)" -syn region wastList matchgroup=wastListDelimiter start="(;\@!" matchgroup=wastListDelimiter end=";\@ Date: Fri, 11 Aug 2023 19:54:22 +0200 Subject: vim-patch:dd0ad2598898 Update syntax/dosini.vim to the latest version (vim/vim#12764) The latest version is in https://github.com/xuhdev/syntax-dosini.vim/blob/master/syntax/dosini.vim. I've sent the file to Bram at the end of June, unfortunately it wasn't able to make into the Vim repository. RIP! https://github.com/vim/vim/commit/dd0ad2598898c2b4641c4acd5b70b6184fa698ed Co-authored-by: Hong Xu --- runtime/syntax/dosini.vim | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/dosini.vim b/runtime/syntax/dosini.vim index cf42819bcd..751a12f4b2 100644 --- a/runtime/syntax/dosini.vim +++ b/runtime/syntax/dosini.vim @@ -1,12 +1,12 @@ " Vim syntax file " Language: Configuration File (ini file) for MSDOS/MS Windows -" Version: 2.2 +" Version: 2.3 " Original Author: Sean M. McKee " Previous Maintainer: Nima Talebi " Current Maintainer: Hong Xu " Homepage: http://www.vim.org/scripts/script.php?script_id=3747 " Repository: https://github.com/xuhdev/syntax-dosini.vim -" Last Change: 2018 Sep 11 +" Last Change: 2023 Jun 27 " quit when a syntax file was already loaded @@ -24,6 +24,8 @@ syn match dosiniNumber "=\zs\s*\d*\.\d\+\s*$" syn match dosiniNumber "=\zs\s*\d\+e[+-]\=\d\+\s*$" syn region dosiniHeader start="^\s*\[" end="\]" syn match dosiniComment "^[#;].*$" +syn region dosiniSection start="\s*\[.*\]" end="\ze\s*\[.*\]" fold + \ contains=dosiniLabel,dosiniValue,dosiniNumber,dosiniHeader,dosiniComment " Define the default highlighting. " Only when an item doesn't have highlighting yet -- cgit From 4a936ad2dcb3fbf90cedfe8ee2d82b5edacea6fe Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Sun, 13 Aug 2023 11:15:41 +0200 Subject: vim-patch:f9c4c2f97db9 Update iss syntax file (vim/vim#11890) - Add 'ExternalSize:' parameter - Add 'setntfscompression' files flag - Fix escaped left brace highlight - Fix 'String:' parameter highlight - Remove trailing whitespace https://github.com/vim/vim/commit/f9c4c2f97db94f513b86d86b86bf981060c7c8bf Co-authored-by: ObserverOfTime --- runtime/syntax/iss.vim | 56 ++++++++++++++++++++++++++------------------------ 1 file changed, 29 insertions(+), 27 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/iss.vim b/runtime/syntax/iss.vim index 34bb698368..212c0f6dbe 100644 --- a/runtime/syntax/iss.vim +++ b/runtime/syntax/iss.vim @@ -2,10 +2,9 @@ " Language: Inno Setup File (iss file) and My InnoSetup extension " Maintainer: Jason Mills (jmills@cs.mun.ca) " Previous Maintainer: Dominique Stéphan (dominique@mggen.com) -" Last Change: 2021 Aug 30 +" Last Change: 2023 Jan 26 " " Todo: -" - The parameter String: is matched as flag string (because of case ignore). " - Pascal scripting syntax is not recognized. " - Embedded double quotes confuse string matches. e.g. "asfd""asfa" @@ -17,6 +16,9 @@ endif " shut case off syn case ignore +" match keywords with colon +syn iskeyword @,48-57,_,192-255,: + " Preprocessor syn region issPreProc start="^\s*#" end="$" @@ -30,25 +32,25 @@ syn match issDirective "^[^=]\+=" syn match issURL "http[s]\=:\/\/.*$" " Parameters used for any section. -" syn match issParam"[^: ]\+:" -syn match issParam "Name:" -syn match issParam "MinVersion:\|OnlyBelowVersion:\|Languages:" -syn match issParam "Source:\|DestDir:\|DestName:\|CopyMode:" -syn match issParam "Attribs:\|Permissions:\|FontInstall:\|Flags:" -syn match issParam "FileName:\|Parameters:\|WorkingDir:\|HotKey:\|Comment:" -syn match issParam "IconFilename:\|IconIndex:" -syn match issParam "Section:\|Key:\|String:" -syn match issParam "Root:\|SubKey:\|ValueType:\|ValueName:\|ValueData:" -syn match issParam "RunOnceId:" -syn match issParam "Type:\|Excludes:" -syn match issParam "Components:\|Description:\|GroupDescription:\|Types:\|ExtraDiskSpaceRequired:" -syn match issParam "StatusMsg:\|RunOnceId:\|Tasks:" -syn match issParam "MessagesFile:\|LicenseFile:\|InfoBeforeFile:\|InfoAfterFile:" +" syn match issParam "[^: ]\+:" +syn keyword issParam Name: +syn keyword issParam MinVersion: OnlyBelowVersion: Languages: +syn keyword issParam Source: DestDir: DestName: CopyMode: ExternalSize: +syn keyword issParam Attribs: Permissions: FontInstall: Flags: +syn keyword issParam FileName: Parameters: WorkingDir: HotKey: Comment: +syn keyword issParam IconFilename: IconIndex: +syn keyword issParam Section: Key: String: +syn keyword issParam Root: SubKey: ValueType: ValueName: ValueData: +syn keyword issParam RunOnceId: +syn keyword issParam Type: Excludes: +syn keyword issParam Components: Description: GroupDescription: Types: ExtraDiskSpaceRequired: +syn keyword issParam StatusMsg: RunOnceId: Tasks: +syn keyword issParam MessagesFile: LicenseFile: InfoBeforeFile: InfoAfterFile: syn match issComment "^\s*;.*$" contains=@Spell " folder constant -syn match issFolder "{[^{]*}" contains=@NoSpell +syn match issFolder "{\@1 Date: Sun, 13 Aug 2023 11:16:10 +0200 Subject: vim-patch:2f339aad6c80 Add syntax & ftplugin for pymanifest (vim/vim#12773) https://github.com/vim/vim/commit/2f339aad6c80e82d7c1237b402392065857174d4 Co-authored-by: ObserverOfTime --- runtime/syntax/pymanifest.vim | 44 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 runtime/syntax/pymanifest.vim (limited to 'runtime/syntax') diff --git a/runtime/syntax/pymanifest.vim b/runtime/syntax/pymanifest.vim new file mode 100644 index 0000000000..5f7d22cf2d --- /dev/null +++ b/runtime/syntax/pymanifest.vim @@ -0,0 +1,44 @@ +" Vim syntax file +" Language: PyPA manifest +" Maintainer: ObserverOfTime +" Filenames: MANIFEST.in +" Last Change: 2023 Aug 12 + +if exists('b:current_syntax') + finish +endif + +let s:cpo_save = &cpoptions +set cpoptions&vim + +syn iskeyword @,- + +" Comments +syn keyword pymanifestTodo contained TODO FIXME XXX +syn match pymanifestComment /\\\@1 Date: Sun, 13 Aug 2023 11:16:55 +0200 Subject: vim-patch:9ad1bf7afd5c runtime(pymanifest): fix mistake in syntax definition Signed-off-by: Christian Brabandt Co-authored-by: ObserverOfTime https://github.com/vim/vim/commit/9ad1bf7afd5c4f26e5154eca2697c9a6773e0bf4 Co-authored-by: ObserverOfTime --- runtime/syntax/pymanifest.vim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/pymanifest.vim b/runtime/syntax/pymanifest.vim index 5f7d22cf2d..54295c45dc 100644 --- a/runtime/syntax/pymanifest.vim +++ b/runtime/syntax/pymanifest.vim @@ -20,7 +20,7 @@ syn match pymanifestComment /\\\@1 Date: Sun, 13 Aug 2023 13:25:10 +0100 Subject: vim-patch:e978b4534a5e (#24697) Farewell to Bram and dedicate upcoming Vim 9.1 to him (vim/vim#12749) https://github.com/vim/vim/commit/e978b4534a5e10471108259118c0ef791106fd92 Also update the header for the following files that were converted to Vim9 script upstream: - autoload/ccomplete.lua (vim9jitted) - ftplugin.vim - ftplugof.vim - indent.vim - indent/vim.vim - makemenu.vim This also updates the "Last Change" dates, even if some changes (due to rewrites to Vim9 script) were not ported. There's still a few other places where Bram is still mentioned as a maintainer in the files we and Vim have: - ftplugin/bash.vim - indent/bash.vim - indent/html.vim - indent/mail.vim - macros/accents.vim - macros/editexisting.vim - syntax/bash.vim - syntax/shared/typescriptcommon.vim - syntax/tar.vim - syntax/typescript.vim - syntax/typescriptreact.vim - syntax/zimbu.vim Maybe future patches will address that. Also exclude changes to .po files that didn't apply automatically (the `:messages` maintainer string isn't used in Nvim anyway). Co-authored-by: Christian Brabandt --- runtime/syntax/README.txt | 7 ++++--- runtime/syntax/aap.vim | 5 +++-- runtime/syntax/c.vim | 5 +++-- runtime/syntax/colortest.vim | 5 +++-- runtime/syntax/conf.vim | 5 +++-- runtime/syntax/ctrlh.vim | 5 +++-- runtime/syntax/diff.vim | 7 ++++--- runtime/syntax/help.vim | 5 +++-- runtime/syntax/manual.vim | 5 +++-- runtime/syntax/model.vim | 5 +++-- runtime/syntax/nosyntax.vim | 5 +++-- runtime/syntax/qf.vim | 5 +++-- runtime/syntax/synload.vim | 5 +++-- runtime/syntax/syntax.vim | 5 +++-- runtime/syntax/template.vim | 5 +++-- runtime/syntax/vgrindefs.vim | 5 +++-- runtime/syntax/viminfo.vim | 5 +++-- 17 files changed, 53 insertions(+), 36 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/README.txt b/runtime/syntax/README.txt index d6a86e5ca9..8eee0ea20a 100644 --- a/runtime/syntax/README.txt +++ b/runtime/syntax/README.txt @@ -28,9 +28,10 @@ whitespace.vim View Tabs and Spaces. If you want to write a syntax file, read the docs at ":help usr_44.txt". If you make a new syntax file which would be useful for others, please send it -to Bram@vim.org. Include instructions for detecting the file type for this -language, by file name extension or by checking a few lines in the file. -And please write the file in a portable way, see ":help 44.12". +to the vim-dev mailing list . Include instructions for +detecting the file type for this language, by file name extension or by +checking a few lines in the file. And please write the file in a portable way, +see ":help 44.12". If you have remarks about an existing file, send them to the maintainer of that file. Only when you get no response send a message to Bram@vim.org. diff --git a/runtime/syntax/aap.vim b/runtime/syntax/aap.vim index 8399a4d224..87cedab30f 100644 --- a/runtime/syntax/aap.vim +++ b/runtime/syntax/aap.vim @@ -1,7 +1,8 @@ " Vim syntax file " Language: A-A-P recipe -" Maintainer: Bram Moolenaar -" Last Change: 2004 Jun 13 +" Maintainer: The Vim Project +" Last Change: 2023 Aug 10 +" Former Maintainer: Bram Moolenaar " Quit when a syntax file was already loaded if exists("b:current_syntax") diff --git a/runtime/syntax/c.vim b/runtime/syntax/c.vim index 04b132d3ff..5ed8fdc847 100644 --- a/runtime/syntax/c.vim +++ b/runtime/syntax/c.vim @@ -1,7 +1,8 @@ " Vim syntax file " Language: C -" Maintainer: Bram Moolenaar -" Last Change: 2023 Mar 08 +" Maintainer: The Vim Project +" Last Change: 2023 Aug 10 +" Former Maintainer: Bram Moolenaar " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") diff --git a/runtime/syntax/colortest.vim b/runtime/syntax/colortest.vim index 58de7aaf13..1dd860c1d3 100644 --- a/runtime/syntax/colortest.vim +++ b/runtime/syntax/colortest.vim @@ -1,7 +1,8 @@ " Vim script for testing colors -" Maintainer: Bram Moolenaar +" Maintainer: The Vim Project " Contributors: Rafael Garcia-Suarez, Charles Campbell -" Last Change: 2008 Jun 04 +" Last Change: 2023 Aug 10 +" Former Maintainer: Bram Moolenaar " edit this file, then do ":source %", and check if the colors match diff --git a/runtime/syntax/conf.vim b/runtime/syntax/conf.vim index 6a78ef8c6e..15a1fffab3 100644 --- a/runtime/syntax/conf.vim +++ b/runtime/syntax/conf.vim @@ -1,7 +1,8 @@ " Vim syntax file " Language: generic configure file -" Maintainer: Bram Moolenaar -" Last Change: 2021 May 01 +" Maintainer: The Vim Project +" Last Change: 2023 Aug 10 +" Former Maintainer: Bram Moolenaar " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") diff --git a/runtime/syntax/ctrlh.vim b/runtime/syntax/ctrlh.vim index b4bf3477e6..b34f335785 100644 --- a/runtime/syntax/ctrlh.vim +++ b/runtime/syntax/ctrlh.vim @@ -1,7 +1,8 @@ " Vim syntax file " Language: CTRL-H (e.g., ASCII manpages) -" Maintainer: Bram Moolenaar -" Last Change: 2005 Jun 20 +" Maintainer: The Vim Project +" Last Change: 2023 Aug 10 +" Former Maintainer: Bram Moolenaar " Existing syntax is kept, this file can be used as an addition diff --git a/runtime/syntax/diff.vim b/runtime/syntax/diff.vim index 408556ac13..4cadf5dae8 100644 --- a/runtime/syntax/diff.vim +++ b/runtime/syntax/diff.vim @@ -1,8 +1,9 @@ " Vim syntax file " Language: Diff (context or unified) -" Maintainer: Bram Moolenaar -" Translations by Jakson Alves de Aquino. -" Last Change: 2020 Dec 30 +" Maintainer: The Vim Project +" Translations by Jakson Alves de Aquino. +" Last Change: 2023 Aug 10 +" Former Maintainer: Bram Moolenaar " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") diff --git a/runtime/syntax/help.vim b/runtime/syntax/help.vim index 8b469d7242..f1e650b2fb 100644 --- a/runtime/syntax/help.vim +++ b/runtime/syntax/help.vim @@ -1,7 +1,8 @@ " Vim syntax file " Language: Vim help file -" Maintainer: Bram Moolenaar (Bram@vim.org) -" Last Change: 2022 Nov 13 +" Maintainer: The Vim Project +" Last Change: 2023 Aug 10 +" Former Maintainer: Bram Moolenaar " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") diff --git a/runtime/syntax/manual.vim b/runtime/syntax/manual.vim index c0e53fa7b4..8388336f25 100644 --- a/runtime/syntax/manual.vim +++ b/runtime/syntax/manual.vim @@ -1,6 +1,7 @@ " Vim syntax support file -" Maintainer: Bram Moolenaar -" Last Change: 2016 Feb 01 +" Maintainer: The Vim Project +" Last Change: 2023 Aug 10 +" Former Maintainer: Bram Moolenaar " This file is used for ":syntax manual". " It installs the Syntax autocommands, but no the FileType autocommands. diff --git a/runtime/syntax/model.vim b/runtime/syntax/model.vim index 5f3b7f8721..ea661eb5b5 100644 --- a/runtime/syntax/model.vim +++ b/runtime/syntax/model.vim @@ -1,7 +1,8 @@ " Vim syntax file " Language: Model -" Maintainer: Bram Moolenaar -" Last Change: 2005 Jun 20 +" Maintainer: The Vim Project +" Last Change: 2023 Aug 10 +" Former Maintainer: Bram Moolenaar " very basic things only (based on the vgrindefs file). " If you use this language, please improve it, and send me the patches! diff --git a/runtime/syntax/nosyntax.vim b/runtime/syntax/nosyntax.vim index 0ab3412373..a761d712b7 100644 --- a/runtime/syntax/nosyntax.vim +++ b/runtime/syntax/nosyntax.vim @@ -1,6 +1,7 @@ " Vim syntax support file -" Maintainer: Bram Moolenaar -" Last Change: 2006 Apr 16 +" Maintainer: The Vim Project +" Last Change: 2023 Aug 10 +" Former Maintainer: Bram Moolenaar " This file is used for ":syntax off". " It removes the autocommands and stops highlighting for all buffers. diff --git a/runtime/syntax/qf.vim b/runtime/syntax/qf.vim index 5c987a97b6..6f2ea6a92e 100644 --- a/runtime/syntax/qf.vim +++ b/runtime/syntax/qf.vim @@ -1,7 +1,8 @@ " Vim syntax file " Language: Quickfix window -" Maintainer: Bram Moolenaar -" Last change: 2001 Jan 15 +" Maintainer: The Vim Project +" Last Change: 2023 Aug 10 +" Former Maintainer: Bram Moolenaar " Quit when a syntax file was already loaded if exists("b:current_syntax") diff --git a/runtime/syntax/synload.vim b/runtime/syntax/synload.vim index 80685a5213..3182c590b7 100644 --- a/runtime/syntax/synload.vim +++ b/runtime/syntax/synload.vim @@ -1,6 +1,7 @@ " Vim syntax support file -" Maintainer: Bram Moolenaar -" Last Change: 2022 Apr 12 +" Maintainer: The Vim Project +" Last Change: 2023 Aug 10 +" Former Maintainer: Bram Moolenaar " This file sets up for syntax highlighting. " It is loaded from "syntax.vim" and "manual.vim". diff --git a/runtime/syntax/syntax.vim b/runtime/syntax/syntax.vim index 5ec99c7e05..887da05bfe 100644 --- a/runtime/syntax/syntax.vim +++ b/runtime/syntax/syntax.vim @@ -1,6 +1,7 @@ " Vim syntax support file -" Maintainer: Bram Moolenaar -" Last Change: 2022 Apr 12 +" Maintainer: The Vim Project +" Last Change: 2023 Aug 10 +" Former Maintainer: Bram Moolenaar " This file is used for ":syntax on". " It installs the autocommands and starts highlighting for all buffers. diff --git a/runtime/syntax/template.vim b/runtime/syntax/template.vim index 5bf580fc11..a59b7b0af9 100644 --- a/runtime/syntax/template.vim +++ b/runtime/syntax/template.vim @@ -1,7 +1,8 @@ " Vim syntax file " Language: Generic template -" Maintainer: Bram Moolenaar -" Last Change: 2019 May 06 +" Maintainer: The Vim Project +" Last Change: 2023 Aug 10 +" Former Maintainer: Bram Moolenaar " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") diff --git a/runtime/syntax/vgrindefs.vim b/runtime/syntax/vgrindefs.vim index 3de31b1437..a194c108cb 100644 --- a/runtime/syntax/vgrindefs.vim +++ b/runtime/syntax/vgrindefs.vim @@ -1,7 +1,8 @@ " Vim syntax file " Language: Vgrindefs -" Maintainer: Bram Moolenaar -" Last Change: 2005 Jun 20 +" Maintainer: The Vim Project +" Last Change: 2023 Aug 10 +" Former Maintainer: Bram Moolenaar " The Vgrindefs file is used to specify a language for vgrind diff --git a/runtime/syntax/viminfo.vim b/runtime/syntax/viminfo.vim index 667e1bab2a..06c59766d7 100644 --- a/runtime/syntax/viminfo.vim +++ b/runtime/syntax/viminfo.vim @@ -1,7 +1,8 @@ " Vim syntax file " Language: Vim .viminfo file -" Maintainer: Bram Moolenaar -" Last Change: 2016 Jun 05 +" Maintainer: The Vim Project +" Last Change: 2023 Aug 10 +" Former Maintainer: Bram Moolenaar " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") -- cgit From 36288578eeab077132f0d84cb6830a97f279f4f3 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Wed, 16 Aug 2023 00:28:29 +0200 Subject: vim-patch:4868f637b84a Update syntax/fortran.vim (vim/vim#12798) Several small improvements including better discrimination of "real" used as a type and as an intrinsic https://github.com/vim/vim/commit/4868f637b84a18fd162db6eff6d716bf22595fd0 Co-authored-by: Ajit-Thakkar <142174202+Ajit-Thakkar@users.noreply.github.com> --- runtime/syntax/fortran.vim | 53 +++++++++++++++++++++++----------------------- 1 file changed, 26 insertions(+), 27 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/fortran.vim b/runtime/syntax/fortran.vim index b5c9b1ef8d..fc6c82b480 100644 --- a/runtime/syntax/fortran.vim +++ b/runtime/syntax/fortran.vim @@ -1,6 +1,6 @@ " Vim syntax file " Language: Fortran 2008 (and older: Fortran 2003, 95, 90, and 77) -" Version: (v104) 2021 April 06 +" Version: (v105) 2023 August 14 " Maintainer: Ajit J. Thakkar ; " Usage: For instructions, do :help fortran-syntax from Vim " Credits: @@ -11,7 +11,7 @@ " Walter Dieudonne, Alexander Wagner, Roman Bertle, Charles Rendleman, " Andrew Griffiths, Joe Krahn, Hendrik Merx, Matt Thompson, Jan Hermann, " Stefano Zaghi, Vishnu V. Krishnan, Judicael Grasset, Takuma Yoshida, -" Eisuke Kawashima, Andre Chalella, and Fritz Reese. +" Eisuke Kawashima, Andre Chalella, Fritz Reese, and Karl D. Hammond. if exists("b:current_syntax") finish @@ -95,16 +95,14 @@ if exists("fortran_more_precise") syn match fortranConstructName "\(\" -syn match fortranType "\" -syn match fortranType "\" -syn match fortranType "\" -syn match fortranType "\" -syn match fortranType "\" +syn match fortranType "\" +syn match fortranType "\" syn keyword fortranType intrinsic -syn match fortranType "\" +syn match fortranType "\\s\+\(none\)\?" syn keyword fortranStructure dimension syn keyword fortranStorageClass parameter save syn match fortranUnitHeader "\" @@ -131,7 +129,8 @@ syn match fortranTypeOb "\" -syn match fortranType "\" +syn match fortranType "\\(\s\+is\>\)\?" +syn match fortranType "^\s*\(type\s\+\(is\)\? \)\?\s*\(real\|integer\|logical\|complex\|character\)\>" +syn match fortranType "^\s*\(implicit \)\?\s*\(real\|integer\|logical\|complex\|character\)\>" "Numbers of various sorts " Integers @@ -206,9 +206,6 @@ syn region fortranStringR start=+'+ end=+'+ contains=fortranContinueMark,fortran syn keyword fortranIntrinsicR dim lge lgt lle llt mod syn keyword fortranKeywordDel assign pause -syn match fortranType "\" -syn keyword fortranType none - syn keyword fortranStructure private public intent optional syn keyword fortranStructure pointer target allocatable syn keyword fortranStorageClass in out @@ -222,7 +219,8 @@ syn keyword fortranUnitHeader result operator assignment syn match fortranUnitHeader "\" syn keyword fortranKeyword allocate deallocate nullify cycle exit syn match fortranConditional "\" -syn keyword fortranConditional case default where elsewhere +syn match fortranConditional "\" +syn keyword fortranConditional where elsewhere syn match fortranOperator "\(\(>\|<\)=\=\|==\|/=\|=\)" syn match fortranOperator "=>" @@ -231,8 +229,7 @@ syn region fortranString start=+"+ end=+"+ contains=fortranLeftMargin,fortranCon syn keyword fortranIO pad position action delim readwrite syn keyword fortranIO eor advance nml -syn keyword fortranIntrinsic adjustl adjustr all allocated any associated bit_size btest ceiling count cshift date_and_time digits dot_product eoshift epsilon exponent floor fraction huge iand ibclr ibits ibset ieor ior ishft ishftc lbound len_trim matmul maxexponent maxloc maxval merge minexponent minloc minval modulo mvbits nearest pack precision present product radix random_number random_seed range repeat reshape rrspacing -syn keyword fortranIntrinsic scale scan selected_int_kind selected_real_kind set_exponent shape size spacing spread sum system_clock tiny transpose trim ubound unpack verify +syn match fortranIntrinsic '\<\(adjustl\|adjustr\|all\|allocated\|any\|associated\|bit_size\|btest\|ceiling\|count\|cshift\|date_and_time\|digits\|dot_product\|eoshift\|epsilon\|exponent\|floor\|fraction\|huge\|iand\|ibclr\|ibits\|ibset\|ieor\|ior\|ishft\|ishftc\|lbound\|len_trim\|matmul\|maxexponent\|maxloc\|maxval\|merge\|minexponent\|minloc\|minval\|modulo\|mvbits\|nearest\|pack\|precision\|present\|product\|radix\|random_number\|random_seed\|range\|repeat\|reshape\|rrspacing\|scale\|scan\|selected_int_kind\|selected_real_kind\|set_exponent\|shape\|size\|spacing\|spread\|sum\|system_clock\|tiny\|transpose\|trim\|ubound\|unpack\|verify\)\>\ze\s*(' syn match fortranIntrinsic "\\(\s*\.\)\@!"me=s+3 syn match fortranIntrinsic "\\s*[(,]"me=s+4 @@ -306,9 +303,9 @@ if b:fortran_dialect == "f08" syn match fortranType "\" + syn match fortranConditional "\" + syn match fortranConditional "\" syn match fortranUnitHeader "\" syn match fortranOperator "\([\|]\)" @@ -525,11 +522,6 @@ else hi! def link fortranConditionalR fortranConditional endif -" CUDA -hi def link fortranIntrinsicCUDA fortranIntrinsic -hi def link fortranTypeCUDA fortranType -hi def link fortranStringCUDA fortranString - hi def link fortranFormatSpec Identifier hi def link fortranFloat Float hi def link fortranPreCondit PreCondit @@ -543,8 +535,15 @@ hi def link fortranComment Comment hi def link fortranSerialNumber Todo hi def link fortranTab Error -" Uncomment the next line if you use extra intrinsics provided by vendors -"hi def link fortranExtraIntrinsic Function +if exists("fortran_CUDA") + hi def link fortranIntrinsicCUDA fortranIntrinsic + hi def link fortranTypeCUDA fortranType + hi def link fortranStringCUDA fortranString +endif + +if exists("fortran_vendor_intrinsics") + hi def link fortranExtraIntrinsic Function +endif let b:current_syntax = "fortran" -- cgit From 93f9bb59247f1f606345ea0863152f2d2d22284c Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Wed, 16 Aug 2023 00:28:52 +0200 Subject: vim-patch:10f23e10a9f0 Update syntax/muttrc.vim to latest mutt (vim/vim#12797) Nothing complicated, just lots of tedium keeping the lines wrapped at reasonable lengths. https://github.com/vim/vim/commit/10f23e10a9f0ea2a48f9e15f7ee53a20e5e09e91 Co-authored-by: lunasophia <104850249+lunasophia@users.noreply.github.com> --- runtime/syntax/muttrc.vim | 291 +++++++++++++++++++++++++--------------------- 1 file changed, 158 insertions(+), 133 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/muttrc.vim b/runtime/syntax/muttrc.vim index 830664e0eb..bf53a42f94 100644 --- a/runtime/syntax/muttrc.vim +++ b/runtime/syntax/muttrc.vim @@ -1,10 +1,10 @@ " Vim syntax file " Language: Mutt setup files " Original: Preben 'Peppe' Guldberg -" Maintainer: Kyle Wheeler -" Last Change: 21 May 2018 +" Maintainer: Luna Celeste +" Last Change: 14 Aug 2023 -" This file covers mutt version 1.10.0 +" This file covers mutt version 2.2.10 " quit when a syntax file was already loaded if exists("b:current_syntax") @@ -103,88 +103,96 @@ syn match muttrcKeyName contained "" syn keyword muttrcVarBool skipwhite contained \ allow_8bit allow_ansi arrow_cursor ascii_chars askbcc askcc attach_split - \ auto_tag autoedit beep beep_new bounce_delivered braille_friendly - \ browser_abbreviate_mailboxes change_folder_next check_mbox_size check_new - \ collapse_unread confirmappend confirmcreate crypt_autoencrypt crypt_autopgp - \ crypt_autosign crypt_autosmime crypt_confirmhook crypt_opportunistic_encrypt - \ crypt_replyencrypt crypt_replysign crypt_replysignencrypted crypt_timestamp - \ crypt_use_gpgme crypt_use_pka delete_untag digest_collapse duplicate_threads - \ edit_hdrs edit_headers encode_from envelope_from fast_reply fcc_clear - \ flag_safe followup_to force_name forw_decode forw_decrypt forw_quote - \ forward_decode forward_decrypt forward_quote hdrs header - \ header_color_partial help hidden_host hide_limited hide_missing - \ hide_thread_subject hide_top_limited hide_top_missing history_remove_dups - \ honor_disposition idn_decode idn_encode ignore_linear_white_space - \ ignore_list_reply_to imap_check_subscribed imap_list_subscribed imap_passive - \ imap_peek imap_servernoise implicit_autoview include_onlyfirst keep_flagged + \ auto_tag autoedit auto_subscribe background_edit background_confirm_quit beep beep_new + \ bounce_delivered braille_friendly browser_abbreviate_mailboxes browser_sticky_cursor + \ change_folder_next check_mbox_size check_new collapse_unread compose_confirm_detach_first + \ confirmappend confirmcreate copy_decode_weed count_alternatives crypt_autoencrypt crypt_autopgp + \ crypt_autosign crypt_autosmime crypt_confirmhook crypt_protected_headers_read + \ crypt_protected_headers_save crypt_protected_headers_write crypt_opportunistic_encrypt + \ crypt_opportunistic_encrypt_strong_keys crypt_replyencrypt crypt_replysign + \ crypt_replysignencrypted crypt_timestamp crypt_use_gpgme crypt_use_pka cursor_overlay + \ delete_untag digest_collapse duplicate_threads edit_hdrs edit_headers encode_from + \ envelope_from fast_reply fcc_before_send fcc_clear flag_safe followup_to force_name forw_decode + \ forw_decrypt forw_quote forward_decode forward_quote hdrs header + \ header_color_partial help hidden_host hide_limited hide_missing hide_thread_subject + \ hide_top_limited hide_top_missing history_remove_dups honor_disposition idn_decode idn_encode + \ ignore_linear_white_space ignore_list_reply_to imap_check_subscribed imap_condstore imap_deflate + \ imap_list_subscribed imap_passive imap_peek imap_qresync imap_servernoise + \ implicit_autoview include_encrypted include_onlyfirst keep_flagged local_date_header \ mail_check_recent mail_check_stats mailcap_sanitize maildir_check_cur \ maildir_header_cache_verify maildir_trash mark_old markers menu_move_off \ menu_scroll message_cache_clean meta_key metoo mh_purge mime_forward_decode - \ mime_type_query_first narrow_tree pager_stop pgp_auto_decode + \ mime_type_query_first muttlisp_inline_eval narrow_tree pager_stop pgp_auto_decode \ pgp_auto_traditional pgp_autoencrypt pgp_autoinline pgp_autosign - \ pgp_check_exit pgp_create_traditional pgp_ignore_subkeys pgp_long_ids - \ pgp_replyencrypt pgp_replyinline pgp_replysign pgp_replysignencrypted - \ pgp_retainable_sigs pgp_self_encrypt pgp_self_encrypt_as pgp_show_unusable - \ pgp_strict_enc pgp_use_gpg_agent pipe_decode pipe_split pop_auth_try_all - \ pop_last postpone_encrypt postpone_encrypt_as print_decode print_split - \ prompt_after read_only reflow_space_quotes reflow_text reflow_wrap - \ reply_self resolve resume_draft_files resume_edited_draft_files - \ reverse_alias reverse_name reverse_realname rfc2047_parameters save_address - \ save_empty save_name score sidebar_folder_indent sidebar_new_mail_only - \ sidebar_next_new_wrap sidebar_short_path sidebar_sort sidebar_visible - \ sig_dashes sig_on_top smart_wrap smime_ask_cert_label - \ smime_decrypt_use_default_key smime_is_default smime_self_encrypt - \ smime_self_encrypt_as sort_re ssl_force_tls ssl_use_sslv2 ssl_use_sslv3 - \ ssl_use_tlsv1 ssl_usesystemcerts ssl_verify_dates ssl_verify_host - \ ssl_verify_partial_chains status_on_top strict_mime strict_threads suspend - \ text_flowed thorough_search thread_received tilde ts_enabled uncollapse_jump - \ use_8bitmime use_domain use_envelope_from use_from use_idn use_ipv6 - \ uncollapse_new user_agent wait_key weed wrap_search write_bcc + \ pgp_check_exit pgp_check_gpg_decrypt_status_fd pgp_create_traditional + \ pgp_ignore_subkeys pgp_long_ids pgp_replyencrypt pgp_replyinline + \ pgp_replysign pgp_replysignencrypted pgp_retainable_sigs pgp_self_encrypt + \ pgp_self_encrypt_as pgp_show_unusable pgp_strict_enc pgp_use_gpg_agent + \ pipe_decode pipe_decode_weed pipe_split pop_auth_try_all pop_last postpone_encrypt + \ postpone_encrypt_as print_decode print_decode_weed print_split prompt_after read_only + \ reflow_space_quotes reflow_text reflow_wrap reply_self resolve + \ resume_draft_files resume_edited_draft_files reverse_alias reverse_name + \ reverse_realname rfc2047_parameters save_address save_empty save_name score + \ sidebar_folder_indent sidebar_new_mail_only sidebar_next_new_wrap + \ sidebar_relative_shortpath_indent sidebar_short_path sidebar_sort sidebar_use_mailbox_shortcuts + \ sidebar_visible sig_on_top sig_dashes size_show_bytes size_show_fraction size_show_mb + \ size_units_on_left smart_wrap smime_ask_cert_label smime_decrypt_use_default_key + \ smime_is_default smime_self_encrypt smime_self_encrypt_as sort_re + \ ssl_force_tls ssl_use_sslv2 ssl_use_sslv3 ssl_use_tlsv1 ssl_use_tlsv1_3 ssl_usesystemcerts + \ ssl_verify_dates ssl_verify_host ssl_verify_partial_chains status_on_top + \ strict_mime strict_threads suspend text_flowed thorough_search + \ thread_received tilde ts_enabled tunnel_is_secure uncollapse_jump use_8bitmime use_domain + \ use_envelope_from use_from use_idn use_ipv6 uncollapse_new user_agent + \ wait_key weed wrap_search write_bcc \ nextgroup=muttrcSetBoolAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr syn keyword muttrcVarBool skipwhite contained \ noallow_8bit noallow_ansi noarrow_cursor noascii_chars noaskbcc noaskcc - \ noattach_split noauto_tag noautoedit nobeep nobeep_new nobounce_delivered - \ nobraille_friendly nobrowser_abbreviate_mailboxes nochange_folder_next - \ nocheck_mbox_size nocheck_new nocollapse_unread noconfirmappend - \ noconfirmcreate nocrypt_autoencrypt nocrypt_autopgp nocrypt_autosign - \ nocrypt_autosmime nocrypt_confirmhook nocrypt_opportunistic_encrypt - \ nocrypt_replyencrypt nocrypt_replysign nocrypt_replysignencrypted - \ nocrypt_timestamp nocrypt_use_gpgme nocrypt_use_pka nodelete_untag - \ nodigest_collapse noduplicate_threads noedit_hdrs noedit_headers - \ noencode_from noenvelope_from nofast_reply nofcc_clear noflag_safe + \ noattach_split noauto_tag noautoedit noauto_subscribe nobackground_edit + \ nobackground_confirm_quit nobeep nobeep_new nobounce_delivered + \ nobraille_friendly nobrowser_abbreviate_mailboxes nobrowser_sticky_cursor nochange_folder_next + \ nocheck_mbox_size nocheck_new nocompose_confirm_detach_first nocollapse_unread noconfirmappend + \ noconfirmcreate nocopy_decode_weed nocount_alternatives nocrypt_autoencrypt nocrypt_autopgp + \ nocrypt_autosign nocrypt_autosmime nocrypt_confirmhook nocrypt_protected_headers_read + \ nocrypt_protected_headers_save nocrypt_protected_headers_write nocrypt_opportunistic_encrypt + \ nocrypt_opportunistic_encrypt_strong_keys nocrypt_replyencrypt nocrypt_replysign + \ nocrypt_replysignencrypted nocrypt_timestamp nocrypt_use_gpgme nocrypt_use_pka nocursor_overlay + \ nodelete_untag nodigest_collapse noduplicate_threads noedit_hdrs noedit_headers + \ noencode_from noenvelope_from nofast_reply nofcc_before_send nofcc_clear noflag_safe \ nofollowup_to noforce_name noforw_decode noforw_decrypt noforw_quote - \ noforward_decode noforward_decrypt noforward_quote nohdrs noheader + \ noforward_decode noforward_quote nohdrs noheader \ noheader_color_partial nohelp nohidden_host nohide_limited nohide_missing \ nohide_thread_subject nohide_top_limited nohide_top_missing \ nohistory_remove_dups nohonor_disposition noidn_decode noidn_encode \ noignore_linear_white_space noignore_list_reply_to noimap_check_subscribed - \ noimap_list_subscribed noimap_passive noimap_peek noimap_servernoise - \ noimplicit_autoview noinclude_onlyfirst nokeep_flagged nomail_check_recent - \ nomail_check_stats nomailcap_sanitize nomaildir_check_cur - \ nomaildir_header_cache_verify nomaildir_trash nomark_old nomarkers - \ nomenu_move_off nomenu_scroll nomessage_cache_clean nometa_key nometoo - \ nomh_purge nomime_forward_decode nomime_type_query_first nonarrow_tree - \ nopager_stop nopgp_auto_decode nopgp_auto_traditional nopgp_autoencrypt - \ nopgp_autoinline nopgp_autosign nopgp_check_exit nopgp_create_traditional + \ noimap_condstore noimap_deflate noimap_list_subscribed noimap_passive noimap_peek + \ noimap_qresync noimap_servernoise noimplicit_autoview noinclude_encrypted noinclude_onlyfirst + \ nokeep_flagged nolocal_date_header nomail_check_recent nomail_check_stats nomailcap_sanitize + \ nomaildir_check_cur nomaildir_header_cache_verify nomaildir_trash nomark_old + \ nomarkers nomenu_move_off nomenu_scroll nomessage_cache_clean nometa_key + \ nometoo nomh_purge nomime_forward_decode nomime_type_query_first nomuttlisp_inline_eval + \ nonarrow_tree nopager_stop nopgp_auto_decode nopgp_auto_traditional nopgp_autoencrypt + \ nopgp_autoinline nopgp_autosign nopgp_check_exit + \ nopgp_check_gpg_decrypt_status_fd nopgp_create_traditional \ nopgp_ignore_subkeys nopgp_long_ids nopgp_replyencrypt nopgp_replyinline \ nopgp_replysign nopgp_replysignencrypted nopgp_retainable_sigs \ nopgp_self_encrypt nopgp_self_encrypt_as nopgp_show_unusable - \ nopgp_strict_enc nopgp_use_gpg_agent nopipe_decode nopipe_split + \ nopgp_strict_enc nopgp_use_gpg_agent nopipe_decode nopipe_decode_weed nopipe_split \ nopop_auth_try_all nopop_last nopostpone_encrypt nopostpone_encrypt_as - \ noprint_decode noprint_split noprompt_after noread_only + \ noprint_decode noprint_decode_weed noprint_split noprompt_after noread_only \ noreflow_space_quotes noreflow_text noreflow_wrap noreply_self noresolve \ noresume_draft_files noresume_edited_draft_files noreverse_alias \ noreverse_name noreverse_realname norfc2047_parameters nosave_address \ nosave_empty nosave_name noscore nosidebar_folder_indent - \ nosidebar_new_mail_only nosidebar_next_new_wrap nosidebar_short_path - \ nosidebar_sort nosidebar_visible nosig_dashes nosig_on_top nosmart_wrap - \ nosmime_ask_cert_label nosmime_decrypt_use_default_key nosmime_is_default - \ nosmime_self_encrypt nosmime_self_encrypt_as nosort_re nossl_force_tls - \ nossl_use_sslv2 nossl_use_sslv3 nossl_use_tlsv1 nossl_usesystemcerts + \ nosidebar_new_mail_only nosidebar_next_new_wrap nosidebar_relative_shortpath_indent + \ nosidebar_short_path nosidebar_sort nosidebar_visible nosidebar_use_mailbox_shortcuts + \ nosig_dashes nosig_on_top nosize_show_bytes nosize_show_fraction nosize_show_mb + \ nosize_units_on_left nosmart_wrap nosmime_ask_cert_label nosmime_decrypt_use_default_key + \ nosmime_is_default nosmime_self_encrypt nosmime_self_encrypt_as nosort_re nossl_force_tls + \ nossl_use_sslv2 nossl_use_sslv3 nossl_use_tlsv1 nossl_use_tlsv1_3 nossl_usesystemcerts \ nossl_verify_dates nossl_verify_host nossl_verify_partial_chains \ nostatus_on_top nostrict_mime nostrict_threads nosuspend notext_flowed - \ nothorough_search nothread_received notilde nots_enabled nouncollapse_jump + \ nothorough_search nothread_received notilde nots_enabled notunnel_is_secure nouncollapse_jump \ nouse_8bitmime nouse_domain nouse_envelope_from nouse_from nouse_idn \ nouse_ipv6 nouncollapse_new nouser_agent nowait_key noweed nowrap_search \ nowrite_bcc @@ -192,50 +200,53 @@ syn keyword muttrcVarBool skipwhite contained syn keyword muttrcVarBool skipwhite contained \ invallow_8bit invallow_ansi invarrow_cursor invascii_chars invaskbcc - \ invaskcc invattach_split invauto_tag invautoedit invbeep invbeep_new - \ invbounce_delivered invbraille_friendly invbrowser_abbreviate_mailboxes - \ invchange_folder_next invcheck_mbox_size invcheck_new invcollapse_unread - \ invconfirmappend invconfirmcreate invcrypt_autoencrypt invcrypt_autopgp - \ invcrypt_autosign invcrypt_autosmime invcrypt_confirmhook - \ invcrypt_opportunistic_encrypt invcrypt_replyencrypt invcrypt_replysign - \ invcrypt_replysignencrypted invcrypt_timestamp invcrypt_use_gpgme - \ invcrypt_use_pka invdelete_untag invdigest_collapse invduplicate_threads + \ invaskcc invattach_split invauto_tag invautoedit invauto_subscribe nobackground_edit + \ nobackground_confirm_quit invbeep invbeep_new invbounce_delivered invbraille_friendly + \ invbrowser_abbreviate_mailboxes invbrowser_sticky_cursor invchange_folder_next + \ invcheck_mbox_size invcheck_new invcollapse_unread invcompose_confirm_detach_first + \ invconfirmappend invcopy_decode_weed invconfirmcreate invcount_alternatives invcrypt_autopgp + \ invcrypt_autoencrypt invcrypt_autosign invcrypt_autosmime invcrypt_confirmhook + \ invcrypt_protected_headers_read invcrypt_protected_headers_save invcrypt_protected_headers_write + \ invcrypt_opportunistic_encrypt invcrypt_opportunistic_encrypt_strong_keys invcrypt_replysign + \ invcrypt_replyencrypt invcrypt_replysignencrypted invcrypt_timestamp invcrypt_use_gpgme + \ invcrypt_use_pka invcursor_overlay invdelete_untag invdigest_collapse invduplicate_threads \ invedit_hdrs invedit_headers invencode_from invenvelope_from invfast_reply - \ invfcc_clear invflag_safe invfollowup_to invforce_name invforw_decode - \ invforw_decrypt invforw_quote invforward_decode invforward_decrypt + \ invfcc_before_send invfcc_clear invflag_safe invfollowup_to invforce_name invforw_decode + \ invforw_decrypt invforw_quote invforward_decode \ invforward_quote invhdrs invheader invheader_color_partial invhelp \ invhidden_host invhide_limited invhide_missing invhide_thread_subject \ invhide_top_limited invhide_top_missing invhistory_remove_dups \ invhonor_disposition invidn_decode invidn_encode \ invignore_linear_white_space invignore_list_reply_to - \ invimap_check_subscribed invimap_list_subscribed invimap_passive - \ invimap_peek invimap_servernoise invimplicit_autoview invinclude_onlyfirst - \ invkeep_flagged invmail_check_recent invmail_check_stats invmailcap_sanitize - \ invmaildir_check_cur invmaildir_header_cache_verify invmaildir_trash - \ invmark_old invmarkers invmenu_move_off invmenu_scroll - \ invmessage_cache_clean invmeta_key invmetoo invmh_purge - \ invmime_forward_decode invmime_type_query_first invnarrow_tree invpager_stop - \ invpgp_auto_decode invpgp_auto_traditional invpgp_autoencrypt + \ invimap_check_subscribed invimap_condstore invimap_deflate invimap_list_subscribed + \ invimap_passive invimap_peek invimap_qresync invimap_servernoise invimplicit_autoview + \ invinclude_encrypted invinclude_onlyfirst invkeep_flagged invlocal_date_header + \ invmail_check_recent invmail_check_stats invmailcap_sanitize invmaildir_check_cur + \ invmaildir_header_cache_verify invmaildir_trash invmark_old invmarkers invmenu_move_off + \ invmenu_scroll invmessage_cache_clean invmeta_key invmetoo invmh_purge + \ invmime_forward_decode invmime_type_query_first invmuttlisp_inline_eval invnarrow_tree + \ invpager_stop invpgp_auto_decode invpgp_auto_traditional invpgp_autoencrypt \ invpgp_autoinline invpgp_autosign invpgp_check_exit - \ invpgp_create_traditional invpgp_ignore_subkeys invpgp_long_ids - \ invpgp_replyencrypt invpgp_replyinline invpgp_replysign - \ invpgp_replysignencrypted invpgp_retainable_sigs invpgp_self_encrypt - \ invpgp_self_encrypt_as invpgp_show_unusable invpgp_strict_enc - \ invpgp_use_gpg_agent invpipe_decode invpipe_split invpop_auth_try_all - \ invpop_last invpostpone_encrypt invpostpone_encrypt_as invprint_decode - \ invprint_split invprompt_after invread_only invreflow_space_quotes - \ invreflow_text invreflow_wrap invreply_self invresolve invresume_draft_files - \ invresume_edited_draft_files invreverse_alias invreverse_name - \ invreverse_realname invrfc2047_parameters invsave_address invsave_empty - \ invsave_name invscore invsidebar_folder_indent invsidebar_new_mail_only - \ invsidebar_next_new_wrap invsidebar_short_path invsidebar_sort - \ invsidebar_visible invsig_dashes invsig_on_top invsmart_wrap - \ invsmime_ask_cert_label invsmime_decrypt_use_default_key invsmime_is_default - \ invsmime_self_encrypt invsmime_self_encrypt_as invsort_re invssl_force_tls - \ invssl_use_sslv2 invssl_use_sslv3 invssl_use_tlsv1 invssl_usesystemcerts + \ invpgp_check_gpg_decrypt_status_fd invpgp_create_traditional + \ invpgp_ignore_subkeys invpgp_long_ids invpgp_replyencrypt invpgp_replyinline + \ invpgp_replysign invpgp_replysignencrypted invpgp_retainable_sigs + \ invpgp_self_encrypt invpgp_self_encrypt_as invpgp_show_unusable + \ invpgp_strict_enc invpgp_use_gpg_agent invpipe_decode invpipe_decode_weed invpipe_split + \ invpop_auth_try_all invpop_last invpostpone_encrypt invpostpone_encrypt_as + \ invprint_decode invprint_decode_weed invprint_split invprompt_after invread_only + \ invreflow_space_quotes invreflow_text invreflow_wrap invreply_self invresolve + \ invresume_draft_file sinvresume_edited_draft_files invreverse_alias + \ invreverse_name invreverse_realname invrfc2047_parameters invsave_address + \ invsave_empty invsave_name invscore invsidebar_folder_indent + \ invsidebar_new_mail_only invsidebar_next_new_wrap invsidebar_relative_shortpath_indent + \ invsidebar_short_path invsidebar_sort sidebar_use_mailbox_shortcuts invsidebar_visible + \ invsig_dashes invsig_on_top invsize_show_bytes invsize_show_fraction invsize_show_mb + \ invsize_units_on_left invsmart_wrap invsmime_ask_cert_label invsmime_decrypt_use_default_key + \ invsmime_is_default invsmime_self_encrypt invsmime_self_encrypt_as invsort_re invssl_force_tls + \ invssl_use_sslv2 invssl_use_sslv3 invssl_use_tlsv1 invssl_use_tlsv1_3 invssl_usesystemcerts \ invssl_verify_dates invssl_verify_host invssl_verify_partial_chains \ invstatus_on_top invstrict_mime invstrict_threads invsuspend invtext_flowed - \ invthorough_search invthread_received invtilde invts_enabled + \ invthorough_search invthread_received invtilde invts_enabled invtunnel_is_secure \ invuncollapse_jump invuse_8bitmime invuse_domain invuse_envelope_from \ invuse_from invuse_idn invuse_ipv6 invuncollapse_new invuser_agent \ invwait_key invweed invwrap_search invwrite_bcc @@ -243,32 +254,32 @@ syn keyword muttrcVarBool skipwhite contained syn keyword muttrcVarQuad skipwhite contained \ abort_nosubject abort_unmodified abort_noattach bounce copy crypt_verify_sig - \ delete fcc_attach forward_edit honor_followup_to include mime_forward - \ mime_forward_rest mime_fwd move pgp_mime_auto pgp_verify_sig pop_delete - \ pop_reconnect postpone print quit recall reply_to ssl_starttls + \ delete fcc_attach forward_attachments forward_decrypt forward_edit honor_followup_to include + \ mime_forward mime_forward_rest mime_fwd move pgp_mime_auto pgp_verify_sig pop_delete + \ pop_reconnect postpone print quit recall reply_to send_multipart_alternative ssl_starttls \ nextgroup=muttrcSetQuadAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr syn keyword muttrcVarQuad skipwhite contained \ noabort_nosubject noabort_unmodified noabort_noattach nobounce nocopy - \ nocrypt_verify_sig nodelete nofcc_attach noforward_edit nohonor_followup_to - \ noinclude nomime_forward nomime_forward_rest nomime_fwd nomove + \ nocrypt_verify_sig nodelete nofcc_attach noforward_attachments noforward_decrypt noforward_edit + \ nohonor_followup_to noinclude nomime_forward nomime_forward_rest nomime_fwd nomove \ nopgp_mime_auto nopgp_verify_sig nopop_delete nopop_reconnect nopostpone - \ noprint noquit norecall noreply_to nossl_starttls + \ noprint noquit norecall noreply_to nosend_multipart_alternative nossl_starttls \ nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr syn keyword muttrcVarQuad skipwhite contained \ invabort_nosubject invabort_unmodified invabort_noattach invbounce invcopy - \ invcrypt_verify_sig invdelete invfcc_attach invforward_edit - \ invhonor_followup_to invinclude invmime_forward invmime_forward_rest + \ invcrypt_verify_sig invdelete invfcc_attach invforward_attachments invforward_decrypt + \ invforward_edit invhonor_followup_to invinclude invmime_forward invmime_forward_rest \ invmime_fwd invmove invpgp_mime_auto invpgp_verify_sig invpop_delete \ invpop_reconnect invpostpone invprint invquit invrecall invreply_to - \ invssl_starttls + \ invsend_multipart_alternative invssl_starttls \ nextgroup=muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr syn keyword muttrcVarNum skipwhite contained - \ connect_timeout error_history history imap_keepalive imap_pipeline_depth + \ connect_timeout error_history history imap_fetch_chunk_size imap_keepalive imap_pipeline_depth \ imap_poll_timeout mail_check mail_check_stats_interval menu_context net_inc - \ pager_context pager_index_lines pgp_timeout pop_checkinterval read_inc + \ pager_context pager_index_lines pager_skip_quoted_context pgp_timeout pop_checkinterval read_inc \ save_history score_threshold_delete score_threshold_flag \ score_threshold_read search_context sendmail_wait sidebar_width sleep_time \ smime_timeout ssl_min_dh_prime_bits time_inc timeout wrap wrap_headers @@ -365,10 +376,14 @@ syn keyword muttrcVarStr contained skipwhite alias_format nextgroup=muttrcVarEqu syn match muttrcVarEqualsAliasFmt contained skipwhite "=" nextgroup=muttrcAliasFormatStr syn keyword muttrcVarStr contained skipwhite attach_format nextgroup=muttrcVarEqualsAttachFmt syn match muttrcVarEqualsAttachFmt contained skipwhite "=" nextgroup=muttrcAttachFormatStr +syn keyword muttrcVarStr contained skipwhite background_format nextgroup=muttrcVarEqualsBackgroundFormatFmt +syn match muttrcVarEqualsBackgroundFormatFmt contained skipwhite "=" nextgroup=muttrcBackgroundFormatStr syn keyword muttrcVarStr contained skipwhite compose_format nextgroup=muttrcVarEqualsComposeFmt syn match muttrcVarEqualsComposeFmt contained skipwhite "=" nextgroup=muttrcComposeFormatStr syn keyword muttrcVarStr contained skipwhite folder_format nextgroup=muttrcVarEqualsFolderFmt syn match muttrcVarEqualsFolderFmt contained skipwhite "=" nextgroup=muttrcFolderFormatStr +syn keyword muttrcVarStr contained skipwhite message_id_format nextgroup=muttrcVarEqualsMessageIdFmt +syn match muttrcVarEqualsMessageIdFmt contained skipwhite "=" nextgroup=muttrcMessageIdFormatStr syn keyword muttrcVarStr contained skipwhite mix_entry_format nextgroup=muttrcVarEqualsMixFmt syn match muttrcVarEqualsMixFmt contained skipwhite "=" nextgroup=muttrcMixFormatStr syn keyword muttrcVarStr contained skipwhite pgp_entry_format nextgroup=muttrcVarEqualsPGPFmt @@ -390,27 +405,29 @@ syn match muttrcVPrefix contained /[?&]/ nextgroup=muttrcVarBool,muttrcVarQuad, syn match muttrcVarStr contained skipwhite 'my_[a-zA-Z0-9_]\+' nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr syn keyword muttrcVarStr contained skipwhite - \ abort_noattach_regexp alias_file assumed_charset attach_charset attach_sep + \ abort_noattach_regexp alias_file assumed_charset attach_charset attach_save_dir attach_sep \ attribution_locale certificate_file charset config_charset content_type - \ default_hook display_filter dotlock_program dsn_notify dsn_return editor - \ entropy_file envelope_from_address escape folder forw_format + \ crypt_protected_headers_subject default_hook display_filter dotlock_program dsn_notify + \ dsn_return editor entropy_file envelope_from_address escape fcc_delimiter folder forw_format \ forward_attribution_intro forward_attribution_trailer forward_format from gecos_mask \ hdr_format header_cache header_cache_compress header_cache_pagesize history_file \ hostname imap_authenticators imap_delim_chars imap_headers imap_idle imap_login - \ imap_pass imap_user indent_str indent_string ispell locale mailcap_path - \ mark_macro_prefix mask mbox mbox_type message_cachedir mh_seq_flagged mh_seq_replied - \ mh_seq_unseen mime_type_query_command mixmaster msg_format new_mail_command pager - \ pgp_default_key pgp_decryption_okay pgp_good_sign pgp_mime_signature_description + \ imap_oauth_refresh_command imap_pass imap_user indent_str indent_string ispell locale + \ mailcap_pat hmark_macro_prefix mask mbox mbox_type message_cachedir mh_seq_flagged + \ mh_seq_replied mh_seq_unseen mime_type_query_command mixmaster msg_format new_mail_command + \ pager pgp_default_key pgp_decryption_okay pgp_good_sign pgp_mime_signature_description \ pgp_mime_signature_filename pgp_sign_as pgp_sort_keys pipe_sep pop_authenticators - \ pop_host pop_pass pop_user post_indent_str post_indent_string postpone_encrypt_as - \ postponed preconnect print_cmd print_command query_command quote_regexp realname - \ record reply_regexp send_charset sendmail shell sidebar_delim sidebar_delim_chars - \ sidebar_divider_char sidebar_format sidebar_indent_string sidebar_sort_method - \ signature simple_search smileys smime_ca_location smime_certificates + \ pop_host pop_oauth_refresh_command pop_pass pop_user post_indent_str post_indent_string + \ postpone_encrypt_as postponed preconnect print_cmd print_command query_command + \ quote_regexp realname record reply_regexp send_charset send_multipart_alternative_filter + \ sendmail shell sidebar_delim + \ sidebar_delim_chars sidebar_divider_char sidebar_format sidebar_indent_string + \ sidebar_sort_method signature simple_search smileys smime_ca_location smime_certificates \ smime_default_key smime_encrypt_with smime_keys smime_sign_as smime_sign_digest_alg - \ smtp_authenticators smtp_pass smtp_url sort sort_alias sort_aux sort_browser - \ spam_separator spoolfile ssl_ca_certificates_file ssl_ciphers ssl_client_cert - \ status_chars tmpdir to_chars trash ts_icon_format ts_status_format tunnel visual + \ smtp_authenticators smtp_oauth_refresh_command smtp_pass smtp_url sort sort_alias + \ sort_aux sort_browser sort_thread_groups spam_separator spoolfile ssl_ca_certificates_file + \ ssl_ciphers ssl_client_cert ssl_verify_host_override status_chars tmpdir to_chars trash + \ ts_icon_format ts_status_format tunnel visual \ nextgroup=muttrcSetStrAssignment,muttrcVPrefix,muttrcVarBool,muttrcVarQuad,muttrcVarNum,muttrcVarStr " Present in 1.4.2.1 (pgp_create_traditional was a bool then) @@ -422,11 +439,11 @@ syn keyword muttrcMenu contained alias attach browser compose editor index page syn match muttrcMenuList "\S\+" contained contains=muttrcMenu syn match muttrcMenuCommas /,/ contained -syn keyword muttrcHooks contained skipwhite account-hook charset-hook iconv-hook message-hook folder-hook mbox-hook save-hook fcc-hook fcc-save-hook send-hook send2-hook reply-hook crypt-hook +syn keyword muttrcHooks contained skipwhite account-hook charset-hook iconv-hook index-format-hook message-hook folder-hook mbox-hook save-hook fcc-hook fcc-save-hook send-hook send2-hook reply-hook crypt-hook syn keyword muttrcCommand skipwhite - \ alternative_order auto_view exec hdr_order iconv-hook ignore mailboxes - \ mailto_allow mime_lookup my_hdr pgp-hook push score sidebar_whitelist source + \ alternative_order auto_view cd exec hdr_order iconv-hook ignore index-format-hook mailboxes + \ mailto_allow mime_lookup my_hdr pgp-hook push run score sidebar_whitelist source \ unalternative_order unalternative_order unauto_view ungroup unhdr_order \ unignore unmailboxes unmailto_allow unmime_lookup unmono unmy_hdr unscore \ unsidebar_whitelist @@ -470,19 +487,24 @@ syn match muttrcFunction contained "\" syn match muttrcFunction contained "\<\%(backward\|capitalize\|downcase\|forward\|kill\|upcase\)-word\>" syn match muttrcFunction contained "\<\%(delete\|filter\|first\|last\|next\|pipe\|previous\|print\|save\|select\|tag\|undelete\)-entry\>" syn match muttrcFunction contained "\" +syn match muttrcFunction contained "\" +syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" +syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" +syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" +syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" @@ -490,15 +512,15 @@ syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" -syn match muttrcFunction contained "\" +syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\" syn match muttrcFunction contained "\<\%(un\)\?setenv\>" -syn match muttrcFunction contained "\" -syn match muttrcFunction contained "\<\%(backspace\|backward-char\|bol\|bottom\|bottom-page\|buffy-cycle\|clear-flag\|complete\%(-query\)\?\|copy-file\|create-alias\|detach-file\|eol\|exit\|extract-keys\|\%(imap-\)\?fetch-mail\|forget-passphrase\|forward-char\|group-reply\|help\|ispell\|jump\|limit\|list-reply\|mail\|mail-key\|mark-as-new\|middle-page\|new-mime\|noop\|pgp-menu\|query\|query-append\|quit\|quote-char\|read-subthread\|redraw-screen\|refresh\|rename-file\|reply\|select-new\|set-flag\|shell-escape\|skip-quoted\|sort\|subscribe\|sync-mailbox\|top\|top-page\|transpose-chars\|unsubscribe\|untag-pattern\|verify-key\|what-key\|write-fcc\)\>" +syn match muttrcFunction contained "\" +syn match muttrcFunction contained "\<\%(backspace\|backward-char\|bol\|bottom\|bottom-page\|buffy-cycle\|check-stats\|clear-flag\|complete\%(-query\)\?\|compose-to-sender\|copy-file\|create-alias\|detach-file\|eol\|exit\|extract-keys\|\%(imap-\)\?fetch-mail\|forget-passphrase\|forward-char\|group-reply\|help\|ispell\|jump\|limit\|list-action\|list-reply\|mail\|mail-key\|mark-as-new\|middle-page\|new-mime\|noop\|pgp-menu\|query\|query-append\|quit\|quote-char\|read-subthread\|redraw-screen\|refresh\|rename-file\|reply\|select-new\|set-flag\|shell-escape\|skip-headers\|skip-quoted\|sort\|subscribe\|sync-mailbox\|top\|top-page\|transpose-chars\|unsubscribe\|untag-pattern\|verify-key\|what-key\|write-fcc\)\>" syn keyword muttrcFunction contained imap-logout-all if use_mutt_sidebar == 1 syn match muttrcFunction contained "\/ skipwhite nextgroup=muttrcPatHookNot,muttrcPattern syn match muttrcPatHooks /\<\%(message\|reply\|send\|send2\|save\|\|fcc\%(-save\)\?\)-hook\>/ skipwhite nextgroup=muttrcPatHookNot,muttrcOptPattern +syn match muttrcIndexFormatHookName contained /\S\+/ skipwhite nextgroup=muttrcPattern,muttrcString +syn match muttrcIndexFormatHook /index-format-hook/ skipwhite nextgroup=muttrcIndexFormatHookName,muttrcString + syn match muttrcBindFunction contained /\S\+\>/ skipwhite contains=muttrcFunction syn match muttrcBindFunctionNL contained /\s*\\$/ skipwhite skipnl nextgroup=muttrcBindFunction,muttrcBindFunctionNL syn match muttrcBindKey contained /\S\+/ skipwhite contains=muttrcKey nextgroup=muttrcBindFunction,muttrcBindFunctionNL @@ -751,6 +776,8 @@ hi def link muttrcShellString muttrcEscape hi def link muttrcRXHooks muttrcCommand hi def link muttrcRXHookNot Type hi def link muttrcPatHooks muttrcCommand +hi def link muttrcIndexFormatHookName muttrcCommand +hi def link muttrcIndexFormatHook muttrcCommand hi def link muttrcPatHookNot Type hi def link muttrcFormatConditionals2 Type hi def link muttrcIndexFormatStr muttrcString @@ -761,11 +788,13 @@ hi def link muttrcAliasFormatEscapes muttrcEscape hi def link muttrcAttachFormatStr muttrcString hi def link muttrcAttachFormatEscapes muttrcEscape hi def link muttrcAttachFormatConditionals muttrcFormatConditionals2 +hi def link muttrcBackgroundFormatStr muttrcString hi def link muttrcComposeFormatStr muttrcString hi def link muttrcComposeFormatEscapes muttrcEscape hi def link muttrcFolderFormatStr muttrcString hi def link muttrcFolderFormatEscapes muttrcEscape hi def link muttrcFolderFormatConditionals muttrcFormatConditionals2 +hi def link muttrcMessageIdFormatStr muttrcString hi def link muttrcMixFormatStr muttrcString hi def link muttrcMixFormatEscapes muttrcEscape hi def link muttrcMixFormatConditionals muttrcFormatConditionals2 @@ -787,10 +816,6 @@ hi def link muttrcTimeEscapes muttrcEscape hi def link muttrcPGPTimeEscapes muttrcEscape hi def link muttrcStrftimeEscapes Type hi def link muttrcStrftimeFormatStr muttrcString -hi def link muttrcFormatErrors Error - -hi def link muttrcBindFunctionNL SpecialChar -hi def link muttrcBindKeyNL SpecialChar hi def link muttrcBindMenuListNL SpecialChar hi def link muttrcMacroDescrNL SpecialChar hi def link muttrcMacroBodyNL SpecialChar -- cgit From 0c23525b59d259b29c0026ecfa14109d05857254 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Wed, 16 Aug 2023 00:29:31 +0200 Subject: vim-patch:20b33b56ad5d Update FreeBASIC syntax file (vim/vim#12781) https://github.com/vim/vim/commit/20b33b56ad5d92c1c11e0859dc9333166625e0ad Co-authored-by: dkearns --- runtime/syntax/freebasic.vim | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/freebasic.vim b/runtime/syntax/freebasic.vim index 7549d02555..5c43289c16 100644 --- a/runtime/syntax/freebasic.vim +++ b/runtime/syntax/freebasic.vim @@ -2,7 +2,7 @@ " Language: FreeBASIC " Maintainer: Doug Kearns " Previous Maintainer: Mark Manning -" Last Change: 2022 Jun 26 +" Last Change: 2023 Aug 14 " " Description: " @@ -338,13 +338,13 @@ syn keyword freebasicPredefined __FB_64BIT__ __FB_ARGC__ __FB_ARG_COUNT__ __FB_ syn keyword freebasicPredefined __FB_ARG_RIGHTOF__ __FB_ARGV__ __FB_ARM__ __FB_ASM__ __FB_BACKEND__ syn keyword freebasicPredefined __FB_BIGENDIAN__ __FB_BUILD_DATE__ __FB_BUILD_DATE_ISO__ __FB_BUILD_SHA1__ syn keyword freebasicPredefined __FB_CYGWIN__ __FB_DARWIN__ __FB_DEBUG__ __FB_DOS__ __FB_ERR__ __FB_EVAL__ -syn keyword freebasicPredefined __FB_FPMODE__ __FB_FPU__ __FB_FREEBSD__ __FB_GCC__ __FB_GUI__ __FB_JOIN__ +syn keyword freebasicPredefined __FB_FPMODE__ __FB_FPU__ __FB_FREEBSD__ __FB_GCC__ __FB_GUI__ __FB_IIF__ __FB_JOIN__ syn keyword freebasicPredefined __FB_LANG__ __FB_LINUX__ __FB_MAIN__ __FB_MIN_VERSION__ __FB_MT__ __FB_NETBSD__ syn keyword freebasicPredefined __FB_OPENBSD__ __FB_OPTIMIZE__ __FB_OPTION_BYVAL__ __FB_OPTION_DYNAMIC__ syn keyword freebasicPredefined __FB_OPTION_ESCAPE__ __FB_OPTION_EXPLICIT__ __FB_OPTION_GOSUB__ syn keyword freebasicPredefined __FB_OPTION_PRIVATE__ __FB_OUT_DLL__ __FB_OUT_EXE__ __FB_OUT_LIB__ __FB_OUT_OBJ__ -syn keyword freebasicPredefined __FB_PCOS__ __FB_PPC__ __FB_QUOTE__ __FB_SIGNATURE__ __FB_SSE__ __FB_UNIQUEID__ -syn keyword freebasicPredefined __FB_UNIQUEID_POP__ __FB_UNIQUEID_PUSH__ __FB_UNIX__ __FB_UNQUOTE__ +syn keyword freebasicPredefined __FB_PCOS__ __FB_PPC__ __FB_QUERY_SYMBOL__ __FB_QUOTE__ __FB_SIGNATURE__ __FB_SSE__ +syn keyword freebasicPredefined __FB_UNIQUEID__ __FB_UNIQUEID_POP__ __FB_UNIQUEID_PUSH__ __FB_UNIX__ __FB_UNQUOTE__ syn keyword freebasicPredefined __FB_VECTORIZE__ __FB_VER_MAJOR__ __FB_VER_MINOR__ __FB_VER_PATCH__ __FB_VERSION__ syn keyword freebasicPredefined __FB_WIN32__ __FB_X86__ __FB_XBOX__ syn keyword freebasicPredefined __FILE__ __FILE_NQ__ __FUNCTION__ __FUNCTION_NQ__ -- cgit From f0b3defecb4eb1c33bed1c5b2761fc3f7ff5f99b Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Fri, 18 Aug 2023 13:44:04 +0900 Subject: vim-patch:a5988f582e48 Keywords 'of' and 'yield' for Javascript. (vim/vim#7873) * Keyword 'of' in for...of statement. * Keyword 'yield' for generator function. https://github.com/vim/vim/commit/a5988f582e482150023862052d41e5215253a3de Co-authored-by: Yuri Klimov --- runtime/syntax/javascript.vim | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/javascript.vim b/runtime/syntax/javascript.vim index e513137984..cb2d16e2a7 100644 --- a/runtime/syntax/javascript.vim +++ b/runtime/syntax/javascript.vim @@ -52,11 +52,11 @@ syn match javaScriptNumber "\<\d\+\(_\d\+\)*\.\(\d\+\(_\d\+\)*\([eE] syn region javaScriptRegexpString start=+[,(=+]\s*/[^/*]+ms=e-1,me=e-1 skip=+\\\\\|\\/+ end=+/[gimuys]\{0,2\}\s*$+ end=+/[gimuys]\{0,2\}\s*[+;.,)\]}]+me=e-1 end=+/[gimuys]\{0,2\}\s\+\/+me=e-1 contains=@htmlPreproc,javaScriptComment oneline syn keyword javaScriptConditional if else switch -syn keyword javaScriptRepeat while for do in +syn keyword javaScriptRepeat while for do in of syn keyword javaScriptBranch break continue syn keyword javaScriptOperator new delete instanceof typeof syn keyword javaScriptType Array Boolean Date Function Number Object String RegExp -syn keyword javaScriptStatement return with await +syn keyword javaScriptStatement return with await yield syn keyword javaScriptBoolean true false syn keyword javaScriptNull null undefined syn keyword javaScriptIdentifier arguments this var let -- cgit From f65be8c5f5171883815c953719e66f637893fcc2 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Fri, 18 Aug 2023 13:44:43 +0900 Subject: vim-patch:817db406bb12 Add TODO, FIXME to Haskell syntax file (vim/vim#8055) Adding TODO, XXX, FIXME to Haskell syntax file vim/vim#8054 https://github.com/vim/vim/commit/817db406bb12b9fd5df25d4cda392b515d44ee05 Co-authored-by: Bruno-366 <81762173+Bruno-366@users.noreply.github.com> --- runtime/syntax/haskell.vim | 2 ++ 1 file changed, 2 insertions(+) (limited to 'runtime/syntax') diff --git a/runtime/syntax/haskell.vim b/runtime/syntax/haskell.vim index 1b70b9344a..b48b278084 100644 --- a/runtime/syntax/haskell.vim +++ b/runtime/syntax/haskell.vim @@ -108,6 +108,8 @@ syn match hsLineComment "---*\([^-!#$%&\*\+./<=>\?@\\^|~].*\)\?$" contain syn region hsBlockComment start="{-" end="-}" contains=hsBlockComment,@Spell syn region hsPragma start="{-#" end="#-}" +syn keyword hsTodo contained FIXME TODO XXX NOTE + " C Preprocessor directives. Shamelessly ripped from c.vim and trimmed " First, see whether to flag directive-like lines or not if (!exists("hs_allow_hash_operator")) -- cgit From 8d7a2a1aea4a6954e2d550c887f2c7112459eec4 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Fri, 18 Aug 2023 13:45:03 +0900 Subject: vim-patch:442d1746f4c6 bindzone runtime: add new DNS record types (vim/vim#7351) Recognize some newer DNS record types - CAA (RFC8659, certificate authority authorization), OPENPGPKEY (RFC7929), SMIMEA (RFC8162). Sort SSHFP alphabetically while there. https://github.com/vim/vim/commit/442d1746f4c650e2e41246fd5679f635a4a30232 Co-authored-by: Stuart Henderson --- runtime/syntax/bindzone.vim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/bindzone.vim b/runtime/syntax/bindzone.vim index bb790bb75c..fede3d97d5 100644 --- a/runtime/syntax/bindzone.vim +++ b/runtime/syntax/bindzone.vim @@ -33,7 +33,7 @@ syn match zoneDomain contained /[^[:space:]!"#$%&'()*+,\/:;<=>?@[\]\ syn match zoneSpecial contained /^[@*.]\s/ syn match zoneTTL contained /\s\@<=\d[0-9WwDdHhMmSs]*\(\s\|$\)\@=/ nextgroup=zoneClass,zoneRRType skipwhite syn keyword zoneClass contained IN CHAOS CH HS HESIOD nextgroup=zoneRRType,zoneTTL skipwhite -syn keyword zoneRRType contained A AAAA CERT CNAME DNAME DNSKEY DS HINFO LOC MX NAPTR NS NSEC NSEC3 NSEC3PARAM PTR RP RRSIG SSHFP SOA SPF SRV TLSA TXT nextgroup=zoneRData skipwhite +syn keyword zoneRRType contained A AAAA CAA CERT CNAME DNAME DNSKEY DS HINFO LOC MX NAPTR NS NSEC NSEC3 NSEC3PARAM OPENPGPKEY PTR RP RRSIG SMIMEA SOA SPF SRV SSHFP TLSA TXT nextgroup=zoneRData skipwhite syn match zoneRData contained /[^;]*/ contains=zoneDomain,zoneIPAddr,zoneIP6Addr,zoneText,zoneNumber,zoneParen,zoneUnknown syn match zoneIPAddr contained /\<[0-9]\{1,3}\(\.[0-9]\{1,3}\)\{,3}\>/ -- cgit From a5b6468e9bc19d3e01846c9a6a47a766b8b81a5a Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Mon, 21 Aug 2023 09:46:44 +0900 Subject: vim-patch:9.0.1766: Runtime: Missing QML support Problem: Runtime: Missing QML support Solution: Add QML support to Vim closes: vim/vim#12810 https://github.com/vim/vim/commit/bedc69f9d67b117ab05aa735c701cd3899d1ae2d Co-authored-by: ChaseKnowlden --- runtime/syntax/qml.vim | 1130 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 1130 insertions(+) create mode 100644 runtime/syntax/qml.vim (limited to 'runtime/syntax') diff --git a/runtime/syntax/qml.vim b/runtime/syntax/qml.vim new file mode 100644 index 0000000000..d6f2abec37 --- /dev/null +++ b/runtime/syntax/qml.vim @@ -0,0 +1,1130 @@ +" Vim syntax file +" Language: QML +" Previous Maintainer: Peter Hoeg +" Maintainer: Chase Knowlden +" Changes: `git log` is your friend +" Last Change: 2023 Aug 16 +" +" This file is bassed on the original work done by Warwick Allison +" whose did about 99% of the work here. + +" Based on javascript syntax (as is QML) + +if exists("b:current_syntax") + finish +endif + +if !exists("main_syntax") + let main_syntax = 'qml' +endif + +" Drop fold if it set but vim doesn't support it. +if !has("folding") + unlet! qml_fold +endif + +syn case ignore + +syn cluster qmlExpr contains=qmlStringD,qmlStringS,qmlStringT,SqmlCharacter,qmlNumber,qmlObjectLiteralType,qmlBoolean,qmlType,qmlJsType,qmlNull,qmlGlobal,qmlFunction,qmlArrowFunction,qmlNullishCoalescing +syn keyword qmlCommentTodo TODO FIXME XXX TBD contained +syn match qmlLineComment "\/\/.*" contains=@Spell,qmlCommentTodo +syn match qmlCommentSkip "^[ \t]*\*\($\|[ \t]\+\)" +syn region qmlComment start="/\*" end="\*/" contains=@Spell,qmlCommentTodo fold +syn match qmlSpecial "\\\d\d\d\|\\." +syn region qmlStringD start=+"+ skip=+\\\\\|\\"\|\\$+ end=+"+ keepend contains=qmlSpecial,@htmlPreproc,@Spell +syn region qmlStringS start=+'+ skip=+\\\\\|\\'\|\\$+ end=+'+ keepend contains=qmlSpecial,@htmlPreproc,@Spell +syn region qmlStringT start=+`+ skip=+\\\\\|\\`\|\\$+ end=+`+ keepend contains=qmlTemplateExpr,qmlSpecial,@htmlPreproc,@Spell + +syntax region qmlTemplateExpr contained matchgroup=qmlBraces start=+${+ end=+}+ keepend contains=@qmlExpr + +syn match qmlCharacter "'\\.'" +syn match qmlNumber "-\=\<\d\+L\=\>\|0[xX][0-9a-fA-F]\+\>" +syn region qmlRegexpString start=+/[^/*]+me=e-1 skip=+\\\\\|\\/+ end=+/[gi]\{0,2\}\s*$+ end=+/[gi]\{0,2\}\s*[;.,)\]}]+me=e-1 contains=@htmlPreproc oneline +syn match qmlObjectLiteralType "[A-Za-z][_A-Za-z0-9]*\s*\({\)\@=" +syn region qmlTernaryColon start="?" end=":" contains=@qmlExpr,qmlBraces,qmlParens,qmlLineComment +syn match qmlBindingProperty "\<[A-Za-z][_A-Za-z.0-9]*\s*:" +syn match qmlNullishCoalescing "??" + +syn keyword qmlConditional if else switch +syn keyword qmlRepeat while for do in +syn keyword qmlBranch break continue +syn keyword qmlOperator new delete instanceof typeof +syn keyword qmlJsType Array Boolean Date Function Number Object String RegExp +syn keyword qmlType action alias bool color date double enumeration font int list point real rect size string time url variant vector2d vector3d vector4d coordinate geocircle geopath geopolygon georectangle geoshape matrix4x4 palette quaternion +syn keyword qmlStatement return with +syn keyword qmlBoolean true false +syn keyword qmlNull null undefined +syn keyword qmlIdentifier arguments this var let const +syn keyword qmlLabel case default +syn keyword qmlException try catch finally throw +syn keyword qmlMessage alert confirm prompt status +syn keyword qmlGlobal self +syn keyword qmlDeclaration property signal component readonly required +syn keyword qmlReserved abstract boolean byte char class debugger enum export extends final float goto implements import interface long native package pragma private protected public short static super synchronized throws transient volatile + +syn case match + +" List extracted in alphabatical order from: https://doc.qt.io/qt-5/qmltypes.html +" Qt v5.15.1 + +" Begin Literal Types {{{ + +syntax keyword qmlObjectLiteralType Abstract3DSeries +syntax keyword qmlObjectLiteralType AbstractActionInput +syntax keyword qmlObjectLiteralType AbstractAnimation +syntax keyword qmlObjectLiteralType AbstractAxis +syntax keyword qmlObjectLiteralType AbstractAxis3D +syntax keyword qmlObjectLiteralType AbstractAxisInput +syntax keyword qmlObjectLiteralType AbstractBarSeries +syntax keyword qmlObjectLiteralType AbstractButton +syntax keyword qmlObjectLiteralType AbstractClipAnimator +syntax keyword qmlObjectLiteralType AbstractClipBlendNode +syntax keyword qmlObjectLiteralType AbstractDataProxy +syntax keyword qmlObjectLiteralType AbstractGraph3D +syntax keyword qmlObjectLiteralType AbstractInputHandler3D +syntax keyword qmlObjectLiteralType AbstractPhysicalDevice +syntax keyword qmlObjectLiteralType AbstractRayCaster +syntax keyword qmlObjectLiteralType AbstractSeries +syntax keyword qmlObjectLiteralType AbstractSkeleton +syntax keyword qmlObjectLiteralType AbstractTexture +syntax keyword qmlObjectLiteralType AbstractTextureImage +syntax keyword qmlObjectLiteralType Accelerometer +syntax keyword qmlObjectLiteralType AccelerometerReading +syntax keyword qmlObjectLiteralType Accessible +syntax keyword qmlObjectLiteralType Action +syntax keyword qmlObjectLiteralType ActionGroup +syntax keyword qmlObjectLiteralType ActionInput +syntax keyword qmlObjectLiteralType AdditiveClipBlend +syntax keyword qmlObjectLiteralType AdditiveColorGradient +syntax keyword qmlObjectLiteralType Address +syntax keyword qmlObjectLiteralType Affector +syntax keyword qmlObjectLiteralType Age +syntax keyword qmlObjectLiteralType AlphaCoverage +syntax keyword qmlObjectLiteralType AlphaTest +syntax keyword qmlObjectLiteralType Altimeter +syntax keyword qmlObjectLiteralType AltimeterReading +syntax keyword qmlObjectLiteralType AluminumAnodizedEmissiveMaterial +syntax keyword qmlObjectLiteralType AluminumAnodizedMaterial +syntax keyword qmlObjectLiteralType AluminumBrushedMaterial +syntax keyword qmlObjectLiteralType AluminumEmissiveMaterial +syntax keyword qmlObjectLiteralType AluminumMaterial +syntax keyword qmlObjectLiteralType AmbientLightReading +syntax keyword qmlObjectLiteralType AmbientLightSensor +syntax keyword qmlObjectLiteralType AmbientTemperatureReading +syntax keyword qmlObjectLiteralType AmbientTemperatureSensor +syntax keyword qmlObjectLiteralType AnalogAxisInput +syntax keyword qmlObjectLiteralType AnchorAnimation +syntax keyword qmlObjectLiteralType AnchorChanges +syntax keyword qmlObjectLiteralType AngleDirection +syntax keyword qmlObjectLiteralType AnimatedImage +syntax keyword qmlObjectLiteralType AnimatedSprite +syntax keyword qmlObjectLiteralType Animation +syntax keyword qmlObjectLiteralType AnimationController +syntax keyword qmlObjectLiteralType AnimationGroup +syntax keyword qmlObjectLiteralType Animator +syntax keyword qmlObjectLiteralType ApplicationWindow +syntax keyword qmlObjectLiteralType ApplicationWindowStyle +syntax keyword qmlObjectLiteralType AreaLight +syntax keyword qmlObjectLiteralType AreaSeries +syntax keyword qmlObjectLiteralType Armature +syntax keyword qmlObjectLiteralType AttenuationModelInverse +syntax keyword qmlObjectLiteralType AttenuationModelLinear +syntax keyword qmlObjectLiteralType Attractor +syntax keyword qmlObjectLiteralType Attribute +syntax keyword qmlObjectLiteralType Audio +syntax keyword qmlObjectLiteralType AudioCategory +syntax keyword qmlObjectLiteralType AudioEngine +syntax keyword qmlObjectLiteralType AudioListener +syntax keyword qmlObjectLiteralType AudioSample +syntax keyword qmlObjectLiteralType AuthenticationDialogRequest +syntax keyword qmlObjectLiteralType Axis +syntax keyword qmlObjectLiteralType AxisAccumulator +syntax keyword qmlObjectLiteralType AxisHelper +syntax keyword qmlObjectLiteralType AxisSetting + +syntax keyword qmlObjectLiteralType BackspaceKey +syntax keyword qmlObjectLiteralType Bar3DSeries +syntax keyword qmlObjectLiteralType BarCategoryAxis +syntax keyword qmlObjectLiteralType BarDataProxy +syntax keyword qmlObjectLiteralType Bars3D +syntax keyword qmlObjectLiteralType BarSeries +syntax keyword qmlObjectLiteralType BarSet +syntax keyword qmlObjectLiteralType BaseKey +syntax keyword qmlObjectLiteralType BasicTableView +syntax keyword qmlObjectLiteralType Behavior +syntax keyword qmlObjectLiteralType Binding +syntax keyword qmlObjectLiteralType Blend +syntax keyword qmlObjectLiteralType BlendedClipAnimator +syntax keyword qmlObjectLiteralType BlendEquation +syntax keyword qmlObjectLiteralType BlendEquationArguments +syntax keyword qmlObjectLiteralType Blending +syntax keyword qmlObjectLiteralType BlitFramebuffer +syntax keyword qmlObjectLiteralType BluetoothDiscoveryModel +syntax keyword qmlObjectLiteralType BluetoothService +syntax keyword qmlObjectLiteralType BluetoothSocket +syntax keyword qmlObjectLiteralType Blur +syntax keyword qmlObjectLiteralType bool +syntax keyword qmlObjectLiteralType BorderImage +syntax keyword qmlObjectLiteralType BorderImageMesh +syntax keyword qmlObjectLiteralType BoundaryRule +syntax keyword qmlObjectLiteralType Bounds +syntax keyword qmlObjectLiteralType BoxPlotSeries +syntax keyword qmlObjectLiteralType BoxSet +syntax keyword qmlObjectLiteralType BrightnessContrast +syntax keyword qmlObjectLiteralType BrushStrokes +syntax keyword qmlObjectLiteralType Buffer +syntax keyword qmlObjectLiteralType BufferBlit +syntax keyword qmlObjectLiteralType BufferCapture +syntax keyword qmlObjectLiteralType BufferInput +syntax keyword qmlObjectLiteralType BusyIndicator +syntax keyword qmlObjectLiteralType BusyIndicatorStyle +syntax keyword qmlObjectLiteralType Button +syntax keyword qmlObjectLiteralType ButtonAxisInput +syntax keyword qmlObjectLiteralType ButtonGroup +syntax keyword qmlObjectLiteralType ButtonStyle + +syntax keyword qmlObjectLiteralType Calendar +syntax keyword qmlObjectLiteralType CalendarModel +syntax keyword qmlObjectLiteralType CalendarStyle +syntax keyword qmlObjectLiteralType Camera +syntax keyword qmlObjectLiteralType Camera3D +syntax keyword qmlObjectLiteralType CameraCapabilities +syntax keyword qmlObjectLiteralType CameraCapture +syntax keyword qmlObjectLiteralType CameraExposure +syntax keyword qmlObjectLiteralType CameraFlash +syntax keyword qmlObjectLiteralType CameraFocus +syntax keyword qmlObjectLiteralType CameraImageProcessing +syntax keyword qmlObjectLiteralType CameraLens +syntax keyword qmlObjectLiteralType CameraRecorder +syntax keyword qmlObjectLiteralType CameraSelector +syntax keyword qmlObjectLiteralType CandlestickSeries +syntax keyword qmlObjectLiteralType CandlestickSet +syntax keyword qmlObjectLiteralType Canvas +syntax keyword qmlObjectLiteralType CanvasGradient +syntax keyword qmlObjectLiteralType CanvasImageData +syntax keyword qmlObjectLiteralType CanvasPixelArray +syntax keyword qmlObjectLiteralType Category +syntax keyword qmlObjectLiteralType CategoryAxis +syntax keyword qmlObjectLiteralType CategoryAxis3D +syntax keyword qmlObjectLiteralType CategoryModel +syntax keyword qmlObjectLiteralType CategoryRange +syntax keyword qmlObjectLiteralType ChangeLanguageKey +syntax keyword qmlObjectLiteralType ChartView +syntax keyword qmlObjectLiteralType CheckBox +syntax keyword qmlObjectLiteralType CheckBoxStyle +syntax keyword qmlObjectLiteralType CheckDelegate +syntax keyword qmlObjectLiteralType ChromaticAberration +syntax keyword qmlObjectLiteralType CircularGauge +syntax keyword qmlObjectLiteralType CircularGaugeStyle +syntax keyword qmlObjectLiteralType ClearBuffers +syntax keyword qmlObjectLiteralType ClipAnimator +syntax keyword qmlObjectLiteralType ClipBlendValue +syntax keyword qmlObjectLiteralType ClipPlane +syntax keyword qmlObjectLiteralType CloseEvent +syntax keyword qmlObjectLiteralType color +syntax keyword qmlObjectLiteralType ColorAnimation +syntax keyword qmlObjectLiteralType ColorDialog +syntax keyword qmlObjectLiteralType ColorDialogRequest +syntax keyword qmlObjectLiteralType ColorGradient +syntax keyword qmlObjectLiteralType ColorGradientStop +syntax keyword qmlObjectLiteralType Colorize +syntax keyword qmlObjectLiteralType ColorMask +syntax keyword qmlObjectLiteralType ColorMaster +syntax keyword qmlObjectLiteralType ColorOverlay +syntax keyword qmlObjectLiteralType Column +syntax keyword qmlObjectLiteralType ColumnLayout +syntax keyword qmlObjectLiteralType ComboBox +syntax keyword qmlObjectLiteralType ComboBoxStyle +syntax keyword qmlObjectLiteralType Command +syntax keyword qmlObjectLiteralType Compass +syntax keyword qmlObjectLiteralType CompassReading +syntax keyword qmlObjectLiteralType Component +syntax keyword qmlObjectLiteralType Component3D +syntax keyword qmlObjectLiteralType ComputeCommand +syntax keyword qmlObjectLiteralType ConeGeometry +syntax keyword qmlObjectLiteralType ConeMesh +syntax keyword qmlObjectLiteralType ConicalGradient +syntax keyword qmlObjectLiteralType Connections +syntax keyword qmlObjectLiteralType ContactDetail +syntax keyword qmlObjectLiteralType ContactDetails +syntax keyword qmlObjectLiteralType Container +syntax keyword qmlObjectLiteralType Context2D +syntax keyword qmlObjectLiteralType ContextMenuRequest +syntax keyword qmlObjectLiteralType Control +syntax keyword qmlObjectLiteralType coordinate +syntax keyword qmlObjectLiteralType CoordinateAnimation +syntax keyword qmlObjectLiteralType CopperMaterial +syntax keyword qmlObjectLiteralType CuboidGeometry +syntax keyword qmlObjectLiteralType CuboidMesh +syntax keyword qmlObjectLiteralType CullFace +syntax keyword qmlObjectLiteralType CullMode +syntax keyword qmlObjectLiteralType CumulativeDirection +syntax keyword qmlObjectLiteralType Custom3DItem +syntax keyword qmlObjectLiteralType Custom3DLabel +syntax keyword qmlObjectLiteralType Custom3DVolume +syntax keyword qmlObjectLiteralType CustomCamera +syntax keyword qmlObjectLiteralType CustomMaterial +syntax keyword qmlObjectLiteralType CustomParticle +syntax keyword qmlObjectLiteralType CylinderGeometry +syntax keyword qmlObjectLiteralType CylinderMesh + +syntax keyword qmlObjectLiteralType Date +syntax keyword qmlObjectLiteralType date +syntax keyword qmlObjectLiteralType DateTimeAxis +syntax keyword qmlObjectLiteralType DayOfWeekRow +syntax keyword qmlObjectLiteralType DebugView +syntax keyword qmlObjectLiteralType DefaultMaterial +syntax keyword qmlObjectLiteralType DelayButton +syntax keyword qmlObjectLiteralType DelayButtonStyle +syntax keyword qmlObjectLiteralType DelegateChoice +syntax keyword qmlObjectLiteralType DelegateChooser +syntax keyword qmlObjectLiteralType DelegateModel +syntax keyword qmlObjectLiteralType DelegateModelGroup +syntax keyword qmlObjectLiteralType DepthInput +syntax keyword qmlObjectLiteralType DepthOfFieldHQBlur +syntax keyword qmlObjectLiteralType DepthRange +syntax keyword qmlObjectLiteralType DepthTest +syntax keyword qmlObjectLiteralType Desaturate +syntax keyword qmlObjectLiteralType Dial +syntax keyword qmlObjectLiteralType Dialog +syntax keyword qmlObjectLiteralType DialogButtonBox +syntax keyword qmlObjectLiteralType DialStyle +syntax keyword qmlObjectLiteralType DiffuseMapMaterial +syntax keyword qmlObjectLiteralType DiffuseSpecularMapMaterial +syntax keyword qmlObjectLiteralType DiffuseSpecularMaterial +syntax keyword qmlObjectLiteralType Direction +syntax keyword qmlObjectLiteralType DirectionalBlur +syntax keyword qmlObjectLiteralType DirectionalLight +syntax keyword qmlObjectLiteralType DispatchCompute +syntax keyword qmlObjectLiteralType Displace +syntax keyword qmlObjectLiteralType DistanceReading +syntax keyword qmlObjectLiteralType DistanceSensor +syntax keyword qmlObjectLiteralType DistortionRipple +syntax keyword qmlObjectLiteralType DistortionSphere +syntax keyword qmlObjectLiteralType DistortionSpiral +syntax keyword qmlObjectLiteralType Dithering +syntax keyword qmlObjectLiteralType double +syntax keyword qmlObjectLiteralType DoubleValidator +syntax keyword qmlObjectLiteralType Drag +syntax keyword qmlObjectLiteralType DragEvent +syntax keyword qmlObjectLiteralType DragHandler +syntax keyword qmlObjectLiteralType Drawer +syntax keyword qmlObjectLiteralType DropArea +syntax keyword qmlObjectLiteralType DropShadow +syntax keyword qmlObjectLiteralType DwmFeatures +syntax keyword qmlObjectLiteralType DynamicParameter + +syntax keyword qmlObjectLiteralType EdgeDetect +syntax keyword qmlObjectLiteralType EditorialModel +syntax keyword qmlObjectLiteralType Effect +syntax keyword qmlObjectLiteralType EllipseShape +syntax keyword qmlObjectLiteralType Emboss +syntax keyword qmlObjectLiteralType Emitter +syntax keyword qmlObjectLiteralType EnterKey +syntax keyword qmlObjectLiteralType EnterKeyAction +syntax keyword qmlObjectLiteralType Entity +syntax keyword qmlObjectLiteralType EntityLoader +syntax keyword qmlObjectLiteralType enumeration +syntax keyword qmlObjectLiteralType EnvironmentLight +syntax keyword qmlObjectLiteralType EventConnection +syntax keyword qmlObjectLiteralType EventPoint +syntax keyword qmlObjectLiteralType EventTouchPoint +syntax keyword qmlObjectLiteralType ExclusiveGroup +syntax keyword qmlObjectLiteralType ExtendedAttributes +syntax keyword qmlObjectLiteralType ExtrudedTextGeometry +syntax keyword qmlObjectLiteralType ExtrudedTextMesh + +syntax keyword qmlObjectLiteralType FastBlur +syntax keyword qmlObjectLiteralType FileDialog +syntax keyword qmlObjectLiteralType FileDialogRequest +syntax keyword qmlObjectLiteralType FillerKey +syntax keyword qmlObjectLiteralType FilterKey +syntax keyword qmlObjectLiteralType FinalState +syntax keyword qmlObjectLiteralType FindTextResult +syntax keyword qmlObjectLiteralType FirstPersonCameraController +syntax keyword qmlObjectLiteralType Flickable +syntax keyword qmlObjectLiteralType Flip +syntax keyword qmlObjectLiteralType Flipable +syntax keyword qmlObjectLiteralType Flow +syntax keyword qmlObjectLiteralType FocusScope +syntax keyword qmlObjectLiteralType FolderDialog +syntax keyword qmlObjectLiteralType FolderListModel +syntax keyword qmlObjectLiteralType font +syntax keyword qmlObjectLiteralType FontDialog +syntax keyword qmlObjectLiteralType FontLoader +syntax keyword qmlObjectLiteralType FontMetrics +syntax keyword qmlObjectLiteralType FormValidationMessageRequest +syntax keyword qmlObjectLiteralType ForwardRenderer +syntax keyword qmlObjectLiteralType Frame +syntax keyword qmlObjectLiteralType FrameAction +syntax keyword qmlObjectLiteralType FrameGraphNode +syntax keyword qmlObjectLiteralType Friction +syntax keyword qmlObjectLiteralType FrontFace +syntax keyword qmlObjectLiteralType FrostedGlassMaterial +syntax keyword qmlObjectLiteralType FrostedGlassSinglePassMaterial +syntax keyword qmlObjectLiteralType FrustumCamera +syntax keyword qmlObjectLiteralType FrustumCulling +syntax keyword qmlObjectLiteralType FullScreenRequest +syntax keyword qmlObjectLiteralType Fxaa + +syntax keyword qmlObjectLiteralType Gamepad +syntax keyword qmlObjectLiteralType GamepadManager +syntax keyword qmlObjectLiteralType GammaAdjust +syntax keyword qmlObjectLiteralType Gauge +syntax keyword qmlObjectLiteralType GaugeStyle +syntax keyword qmlObjectLiteralType GaussianBlur +syntax keyword qmlObjectLiteralType geocircle +syntax keyword qmlObjectLiteralType GeocodeModel +syntax keyword qmlObjectLiteralType Geometry +syntax keyword qmlObjectLiteralType GeometryRenderer +syntax keyword qmlObjectLiteralType geopath +syntax keyword qmlObjectLiteralType geopolygon +syntax keyword qmlObjectLiteralType georectangle +syntax keyword qmlObjectLiteralType geoshape +syntax keyword qmlObjectLiteralType GestureEvent +syntax keyword qmlObjectLiteralType GlassMaterial +syntax keyword qmlObjectLiteralType GlassRefractiveMaterial +syntax keyword qmlObjectLiteralType Glow +syntax keyword qmlObjectLiteralType GoochMaterial +syntax keyword qmlObjectLiteralType Gradient +syntax keyword qmlObjectLiteralType GradientStop +syntax keyword qmlObjectLiteralType GraphicsApiFilter +syntax keyword qmlObjectLiteralType GraphicsInfo +syntax keyword qmlObjectLiteralType Gravity +syntax keyword qmlObjectLiteralType Grid +syntax keyword qmlObjectLiteralType GridGeometry +syntax keyword qmlObjectLiteralType GridLayout +syntax keyword qmlObjectLiteralType GridMesh +syntax keyword qmlObjectLiteralType GridView +syntax keyword qmlObjectLiteralType GroupBox +syntax keyword qmlObjectLiteralType GroupGoal +syntax keyword qmlObjectLiteralType Gyroscope +syntax keyword qmlObjectLiteralType GyroscopeReading + +syntax keyword qmlObjectLiteralType HandlerPoint +syntax keyword qmlObjectLiteralType HandwritingInputPanel +syntax keyword qmlObjectLiteralType HandwritingModeKey +syntax keyword qmlObjectLiteralType HBarModelMapper +syntax keyword qmlObjectLiteralType HBoxPlotModelMapper +syntax keyword qmlObjectLiteralType HCandlestickModelMapper +syntax keyword qmlObjectLiteralType HDRBloomTonemap +syntax keyword qmlObjectLiteralType HeightMapSurfaceDataProxy +syntax keyword qmlObjectLiteralType HideKeyboardKey +syntax keyword qmlObjectLiteralType HistoryState +syntax keyword qmlObjectLiteralType HolsterReading +syntax keyword qmlObjectLiteralType HolsterSensor +syntax keyword qmlObjectLiteralType HorizontalBarSeries +syntax keyword qmlObjectLiteralType HorizontalHeaderView +syntax keyword qmlObjectLiteralType HorizontalPercentBarSeries +syntax keyword qmlObjectLiteralType HorizontalStackedBarSeries +syntax keyword qmlObjectLiteralType Host +syntax keyword qmlObjectLiteralType HoverHandler +syntax keyword qmlObjectLiteralType HPieModelMapper +syntax keyword qmlObjectLiteralType HueSaturation +syntax keyword qmlObjectLiteralType HumidityReading +syntax keyword qmlObjectLiteralType HumiditySensor +syntax keyword qmlObjectLiteralType HXYModelMapper + +syntax keyword qmlObjectLiteralType Icon +syntax keyword qmlObjectLiteralType IdleInhibitManagerV1 +syntax keyword qmlObjectLiteralType Image +syntax keyword qmlObjectLiteralType ImageModel +syntax keyword qmlObjectLiteralType ImageParticle +syntax keyword qmlObjectLiteralType InnerShadow +syntax keyword qmlObjectLiteralType InputChord +syntax keyword qmlObjectLiteralType InputContext +syntax keyword qmlObjectLiteralType InputEngine +syntax keyword qmlObjectLiteralType InputHandler3D +syntax keyword qmlObjectLiteralType InputMethod +syntax keyword qmlObjectLiteralType InputModeKey +syntax keyword qmlObjectLiteralType InputPanel +syntax keyword qmlObjectLiteralType InputSequence +syntax keyword qmlObjectLiteralType InputSettings +syntax keyword qmlObjectLiteralType Instantiator +syntax keyword qmlObjectLiteralType int +syntax keyword qmlObjectLiteralType IntValidator +syntax keyword qmlObjectLiteralType InvokedServices +syntax keyword qmlObjectLiteralType IRProximityReading +syntax keyword qmlObjectLiteralType IRProximitySensor +syntax keyword qmlObjectLiteralType Item +syntax keyword qmlObjectLiteralType ItemDelegate +syntax keyword qmlObjectLiteralType ItemGrabResult +syntax keyword qmlObjectLiteralType ItemModelBarDataProxy +syntax keyword qmlObjectLiteralType ItemModelScatterDataProxy +syntax keyword qmlObjectLiteralType ItemModelSurfaceDataProxy +syntax keyword qmlObjectLiteralType ItemParticle +syntax keyword qmlObjectLiteralType ItemSelectionModel +syntax keyword qmlObjectLiteralType IviApplication +syntax keyword qmlObjectLiteralType IviSurface + +syntax keyword qmlObjectLiteralType JavaScriptDialogRequest +syntax keyword qmlObjectLiteralType Joint +syntax keyword qmlObjectLiteralType JumpList +syntax keyword qmlObjectLiteralType JumpListCategory +syntax keyword qmlObjectLiteralType JumpListDestination +syntax keyword qmlObjectLiteralType JumpListLink +syntax keyword qmlObjectLiteralType JumpListSeparator + +syntax keyword qmlObjectLiteralType Key +syntax keyword qmlObjectLiteralType KeyboardColumn +syntax keyword qmlObjectLiteralType KeyboardDevice +syntax keyword qmlObjectLiteralType KeyboardHandler +syntax keyword qmlObjectLiteralType KeyboardLayout +syntax keyword qmlObjectLiteralType KeyboardLayoutLoader +syntax keyword qmlObjectLiteralType KeyboardRow +syntax keyword qmlObjectLiteralType KeyboardStyle +syntax keyword qmlObjectLiteralType KeyEvent +syntax keyword qmlObjectLiteralType Keyframe +syntax keyword qmlObjectLiteralType KeyframeAnimation +syntax keyword qmlObjectLiteralType KeyframeGroup +syntax keyword qmlObjectLiteralType KeyIcon +syntax keyword qmlObjectLiteralType KeyNavigation +syntax keyword qmlObjectLiteralType KeyPanel +syntax keyword qmlObjectLiteralType Keys + +syntax keyword qmlObjectLiteralType Label +syntax keyword qmlObjectLiteralType Layer +syntax keyword qmlObjectLiteralType LayerFilter +syntax keyword qmlObjectLiteralType Layout +syntax keyword qmlObjectLiteralType LayoutMirroring +syntax keyword qmlObjectLiteralType Legend +syntax keyword qmlObjectLiteralType LerpClipBlend +syntax keyword qmlObjectLiteralType LevelAdjust +syntax keyword qmlObjectLiteralType LevelOfDetail +syntax keyword qmlObjectLiteralType LevelOfDetailBoundingSphere +syntax keyword qmlObjectLiteralType LevelOfDetailLoader +syntax keyword qmlObjectLiteralType LevelOfDetailSwitch +syntax keyword qmlObjectLiteralType LidReading +syntax keyword qmlObjectLiteralType LidSensor +syntax keyword qmlObjectLiteralType Light +syntax keyword qmlObjectLiteralType Light3D +syntax keyword qmlObjectLiteralType LightReading +syntax keyword qmlObjectLiteralType LightSensor +syntax keyword qmlObjectLiteralType LinearGradient +syntax keyword qmlObjectLiteralType LineSeries +syntax keyword qmlObjectLiteralType LineShape +syntax keyword qmlObjectLiteralType LineWidth +syntax keyword qmlObjectLiteralType list +syntax keyword qmlObjectLiteralType ListElement +syntax keyword qmlObjectLiteralType ListModel +syntax keyword qmlObjectLiteralType ListView +syntax keyword qmlObjectLiteralType Loader +syntax keyword qmlObjectLiteralType Loader3D +syntax keyword qmlObjectLiteralType Locale +syntax keyword qmlObjectLiteralType Location +syntax keyword qmlObjectLiteralType LoggingCategory +syntax keyword qmlObjectLiteralType LogicalDevice +syntax keyword qmlObjectLiteralType LogValueAxis +syntax keyword qmlObjectLiteralType LogValueAxis3DFormatter +syntax keyword qmlObjectLiteralType LottieAnimation + +syntax keyword qmlObjectLiteralType Magnetometer +syntax keyword qmlObjectLiteralType MagnetometerReading +syntax keyword qmlObjectLiteralType Map +syntax keyword qmlObjectLiteralType MapCircle +syntax keyword qmlObjectLiteralType MapCircleObject +syntax keyword qmlObjectLiteralType MapCopyrightNotice +syntax keyword qmlObjectLiteralType MapGestureArea +syntax keyword qmlObjectLiteralType MapIconObject +syntax keyword qmlObjectLiteralType MapItemGroup +syntax keyword qmlObjectLiteralType MapItemView +syntax keyword qmlObjectLiteralType MapObjectView +syntax keyword qmlObjectLiteralType MapParameter +syntax keyword qmlObjectLiteralType MapPinchEvent +syntax keyword qmlObjectLiteralType MapPolygon +syntax keyword qmlObjectLiteralType MapPolygonObject +syntax keyword qmlObjectLiteralType MapPolyline +syntax keyword qmlObjectLiteralType MapPolylineObject +syntax keyword qmlObjectLiteralType MapQuickItem +syntax keyword qmlObjectLiteralType MapRectangle +syntax keyword qmlObjectLiteralType MapRoute +syntax keyword qmlObjectLiteralType MapRouteObject +syntax keyword qmlObjectLiteralType MapType +syntax keyword qmlObjectLiteralType Margins +syntax keyword qmlObjectLiteralType MaskedBlur +syntax keyword qmlObjectLiteralType MaskShape +syntax keyword qmlObjectLiteralType Material +syntax keyword qmlObjectLiteralType Matrix4x4 +syntax keyword qmlObjectLiteralType matrix4x4 +syntax keyword qmlObjectLiteralType MediaPlayer +syntax keyword qmlObjectLiteralType mediaplayer-qml-dynamic +syntax keyword qmlObjectLiteralType MemoryBarrier +syntax keyword qmlObjectLiteralType Menu +syntax keyword qmlObjectLiteralType MenuBar +syntax keyword qmlObjectLiteralType MenuBarItem +syntax keyword qmlObjectLiteralType MenuBarStyle +syntax keyword qmlObjectLiteralType MenuItem +syntax keyword qmlObjectLiteralType MenuItemGroup +syntax keyword qmlObjectLiteralType MenuSeparator +syntax keyword qmlObjectLiteralType MenuStyle +syntax keyword qmlObjectLiteralType Mesh +syntax keyword qmlObjectLiteralType MessageDialog +syntax keyword qmlObjectLiteralType MetalRoughMaterial +syntax keyword qmlObjectLiteralType ModeKey +syntax keyword qmlObjectLiteralType Model +syntax keyword qmlObjectLiteralType MonthGrid +syntax keyword qmlObjectLiteralType MorphingAnimation +syntax keyword qmlObjectLiteralType MorphTarget +syntax keyword qmlObjectLiteralType MotionBlur +syntax keyword qmlObjectLiteralType MouseArea +syntax keyword qmlObjectLiteralType MouseDevice +syntax keyword qmlObjectLiteralType MouseEvent +syntax keyword qmlObjectLiteralType MouseHandler +syntax keyword qmlObjectLiteralType MultiPointHandler +syntax keyword qmlObjectLiteralType MultiPointTouchArea +syntax keyword qmlObjectLiteralType MultiSampleAntiAliasing + +syntax keyword qmlObjectLiteralType Navigator +syntax keyword qmlObjectLiteralType NdefFilter +syntax keyword qmlObjectLiteralType NdefMimeRecord +syntax keyword qmlObjectLiteralType NdefRecord +syntax keyword qmlObjectLiteralType NdefTextRecord +syntax keyword qmlObjectLiteralType NdefUriRecord +syntax keyword qmlObjectLiteralType NearField +syntax keyword qmlObjectLiteralType Node +syntax keyword qmlObjectLiteralType NodeInstantiator +syntax keyword qmlObjectLiteralType NoDepthMask +syntax keyword qmlObjectLiteralType NoDraw +syntax keyword qmlObjectLiteralType NoPicking +syntax keyword qmlObjectLiteralType NormalDiffuseMapAlphaMaterial +syntax keyword qmlObjectLiteralType NormalDiffuseMapMaterial +syntax keyword qmlObjectLiteralType NormalDiffuseSpecularMapMaterial +syntax keyword qmlObjectLiteralType Number +syntax keyword qmlObjectLiteralType NumberAnimation +syntax keyword qmlObjectLiteralType NumberKey + +syntax keyword qmlObjectLiteralType Object3D +syntax keyword qmlObjectLiteralType ObjectModel +syntax keyword qmlObjectLiteralType ObjectPicker +syntax keyword qmlObjectLiteralType OpacityAnimator +syntax keyword qmlObjectLiteralType OpacityMask +syntax keyword qmlObjectLiteralType OpenGLInfo +syntax keyword qmlObjectLiteralType OrbitCameraController +syntax keyword qmlObjectLiteralType OrientationReading +syntax keyword qmlObjectLiteralType OrientationSensor +syntax keyword qmlObjectLiteralType OrthographicCamera +syntax keyword qmlObjectLiteralType Overlay + +syntax keyword qmlObjectLiteralType Package +syntax keyword qmlObjectLiteralType Page +syntax keyword qmlObjectLiteralType PageIndicator +syntax keyword qmlObjectLiteralType palette +syntax keyword qmlObjectLiteralType Pane +syntax keyword qmlObjectLiteralType PaperArtisticMaterial +syntax keyword qmlObjectLiteralType PaperOfficeMaterial +syntax keyword qmlObjectLiteralType ParallelAnimation +syntax keyword qmlObjectLiteralType Parameter +syntax keyword qmlObjectLiteralType ParentAnimation +syntax keyword qmlObjectLiteralType ParentChange +syntax keyword qmlObjectLiteralType Particle +syntax keyword qmlObjectLiteralType ParticleExtruder +syntax keyword qmlObjectLiteralType ParticleGroup +syntax keyword qmlObjectLiteralType ParticlePainter +syntax keyword qmlObjectLiteralType ParticleSystem +syntax keyword qmlObjectLiteralType Pass +syntax keyword qmlObjectLiteralType Path +syntax keyword qmlObjectLiteralType PathAngleArc +syntax keyword qmlObjectLiteralType PathAnimation +syntax keyword qmlObjectLiteralType PathArc +syntax keyword qmlObjectLiteralType PathAttribute +syntax keyword qmlObjectLiteralType PathCubic +syntax keyword qmlObjectLiteralType PathCurve +syntax keyword qmlObjectLiteralType PathElement +syntax keyword qmlObjectLiteralType PathInterpolator +syntax keyword qmlObjectLiteralType PathLine +syntax keyword qmlObjectLiteralType PathMove +syntax keyword qmlObjectLiteralType PathMultiline +syntax keyword qmlObjectLiteralType PathPercent +syntax keyword qmlObjectLiteralType PathPolyline +syntax keyword qmlObjectLiteralType PathQuad +syntax keyword qmlObjectLiteralType PathSvg +syntax keyword qmlObjectLiteralType PathText +syntax keyword qmlObjectLiteralType PathView +syntax keyword qmlObjectLiteralType PauseAnimation +syntax keyword qmlObjectLiteralType PdfDocument +syntax keyword qmlObjectLiteralType PdfLinkModel +syntax keyword qmlObjectLiteralType PdfNavigationStack +syntax keyword qmlObjectLiteralType PdfSearchModel +syntax keyword qmlObjectLiteralType PdfSelection +syntax keyword qmlObjectLiteralType PercentBarSeries +syntax keyword qmlObjectLiteralType PerspectiveCamera +syntax keyword qmlObjectLiteralType PerVertexColorMaterial +syntax keyword qmlObjectLiteralType PhongAlphaMaterial +syntax keyword qmlObjectLiteralType PhongMaterial +syntax keyword qmlObjectLiteralType PickEvent +syntax keyword qmlObjectLiteralType PickingSettings +syntax keyword qmlObjectLiteralType PickLineEvent +syntax keyword qmlObjectLiteralType PickPointEvent +syntax keyword qmlObjectLiteralType PickResult +syntax keyword qmlObjectLiteralType PickTriangleEvent +syntax keyword qmlObjectLiteralType Picture +syntax keyword qmlObjectLiteralType PieMenu +syntax keyword qmlObjectLiteralType PieMenuStyle +syntax keyword qmlObjectLiteralType PieSeries +syntax keyword qmlObjectLiteralType PieSlice +syntax keyword qmlObjectLiteralType PinchArea +syntax keyword qmlObjectLiteralType PinchEvent +syntax keyword qmlObjectLiteralType PinchHandler +syntax keyword qmlObjectLiteralType Place +syntax keyword qmlObjectLiteralType PlaceAttribute +syntax keyword qmlObjectLiteralType PlaceSearchModel +syntax keyword qmlObjectLiteralType PlaceSearchSuggestionModel +syntax keyword qmlObjectLiteralType PlaneGeometry +syntax keyword qmlObjectLiteralType PlaneMesh +syntax keyword qmlObjectLiteralType PlasticStructuredRedEmissiveMaterial +syntax keyword qmlObjectLiteralType PlasticStructuredRedMaterial +syntax keyword qmlObjectLiteralType Playlist +syntax keyword qmlObjectLiteralType PlaylistItem +syntax keyword qmlObjectLiteralType PlayVariation +syntax keyword qmlObjectLiteralType Plugin +syntax keyword qmlObjectLiteralType PluginParameter +syntax keyword qmlObjectLiteralType point +syntax keyword qmlObjectLiteralType PointDirection +syntax keyword qmlObjectLiteralType PointerDevice +syntax keyword qmlObjectLiteralType PointerDeviceHandler +syntax keyword qmlObjectLiteralType PointerEvent +syntax keyword qmlObjectLiteralType PointerHandler +syntax keyword qmlObjectLiteralType PointerScrollEvent +syntax keyword qmlObjectLiteralType PointHandler +syntax keyword qmlObjectLiteralType PointLight +syntax keyword qmlObjectLiteralType PointSize +syntax keyword qmlObjectLiteralType PolarChartView +syntax keyword qmlObjectLiteralType PolygonOffset +syntax keyword qmlObjectLiteralType Popup +syntax keyword qmlObjectLiteralType Position +syntax keyword qmlObjectLiteralType Positioner +syntax keyword qmlObjectLiteralType PositionSource +syntax keyword qmlObjectLiteralType PressureReading +syntax keyword qmlObjectLiteralType PressureSensor +syntax keyword qmlObjectLiteralType PrincipledMaterial +syntax keyword qmlObjectLiteralType Product +syntax keyword qmlObjectLiteralType ProgressBar +syntax keyword qmlObjectLiteralType ProgressBarStyle +syntax keyword qmlObjectLiteralType PropertyAction +syntax keyword qmlObjectLiteralType PropertyAnimation +syntax keyword qmlObjectLiteralType PropertyChanges +syntax keyword qmlObjectLiteralType ProximityFilter +syntax keyword qmlObjectLiteralType ProximityReading +syntax keyword qmlObjectLiteralType ProximitySensor + +syntax keyword qmlObjectLiteralType QAbstractState +syntax keyword qmlObjectLiteralType QAbstractTransition +syntax keyword qmlObjectLiteralType QmlSensors +syntax keyword qmlObjectLiteralType QSignalTransition +syntax keyword qmlObjectLiteralType Qt +syntax keyword qmlObjectLiteralType QtMultimedia +syntax keyword qmlObjectLiteralType QtObject +syntax keyword qmlObjectLiteralType QtPositioning +syntax keyword qmlObjectLiteralType QtRemoteObjects +syntax keyword qmlObjectLiteralType quaternion +syntax keyword qmlObjectLiteralType QuaternionAnimation +syntax keyword qmlObjectLiteralType QuotaRequest + +syntax keyword qmlObjectLiteralType RadialBlur +syntax keyword qmlObjectLiteralType RadialGradient +syntax keyword qmlObjectLiteralType Radio +syntax keyword qmlObjectLiteralType RadioButton +syntax keyword qmlObjectLiteralType RadioButtonStyle +syntax keyword qmlObjectLiteralType RadioData +syntax keyword qmlObjectLiteralType RadioDelegate +syntax keyword qmlObjectLiteralType RangeSlider +syntax keyword qmlObjectLiteralType RasterMode +syntax keyword qmlObjectLiteralType Ratings +syntax keyword qmlObjectLiteralType RayCaster +syntax keyword qmlObjectLiteralType real +syntax keyword qmlObjectLiteralType rect +syntax keyword qmlObjectLiteralType Rectangle +syntax keyword qmlObjectLiteralType RectangleShape +syntax keyword qmlObjectLiteralType RectangularGlow +syntax keyword qmlObjectLiteralType RecursiveBlur +syntax keyword qmlObjectLiteralType RegExpValidator +syntax keyword qmlObjectLiteralType RegisterProtocolHandlerRequest +syntax keyword qmlObjectLiteralType RegularExpressionValidator +syntax keyword qmlObjectLiteralType RenderCapabilities +syntax keyword qmlObjectLiteralType RenderCapture +syntax keyword qmlObjectLiteralType RenderCaptureReply +syntax keyword qmlObjectLiteralType RenderPass +syntax keyword qmlObjectLiteralType RenderPassFilter +syntax keyword qmlObjectLiteralType RenderSettings +syntax keyword qmlObjectLiteralType RenderState +syntax keyword qmlObjectLiteralType RenderStateSet +syntax keyword qmlObjectLiteralType RenderStats +syntax keyword qmlObjectLiteralType RenderSurfaceSelector +syntax keyword qmlObjectLiteralType RenderTarget +syntax keyword qmlObjectLiteralType RenderTargetOutput +syntax keyword qmlObjectLiteralType RenderTargetSelector +syntax keyword qmlObjectLiteralType Repeater +syntax keyword qmlObjectLiteralType Repeater3D +syntax keyword qmlObjectLiteralType ReviewModel +syntax keyword qmlObjectLiteralType Rotation +syntax keyword qmlObjectLiteralType RotationAnimation +syntax keyword qmlObjectLiteralType RotationAnimator +syntax keyword qmlObjectLiteralType RotationReading +syntax keyword qmlObjectLiteralType RotationSensor +syntax keyword qmlObjectLiteralType RoundButton +syntax keyword qmlObjectLiteralType Route +syntax keyword qmlObjectLiteralType RouteLeg +syntax keyword qmlObjectLiteralType RouteManeuver +syntax keyword qmlObjectLiteralType RouteModel +syntax keyword qmlObjectLiteralType RouteQuery +syntax keyword qmlObjectLiteralType RouteSegment +syntax keyword qmlObjectLiteralType Row +syntax keyword qmlObjectLiteralType RowLayout + +syntax keyword qmlObjectLiteralType Scale +syntax keyword qmlObjectLiteralType ScaleAnimator +syntax keyword qmlObjectLiteralType Scatter +syntax keyword qmlObjectLiteralType Scatter3D +syntax keyword qmlObjectLiteralType Scatter3DSeries +syntax keyword qmlObjectLiteralType ScatterDataProxy +syntax keyword qmlObjectLiteralType ScatterSeries +syntax keyword qmlObjectLiteralType Scene2D +syntax keyword qmlObjectLiteralType Scene3D +syntax keyword qmlObjectLiteralType Scene3DView +syntax keyword qmlObjectLiteralType SceneEnvironment +syntax keyword qmlObjectLiteralType SceneLoader +syntax keyword qmlObjectLiteralType ScissorTest +syntax keyword qmlObjectLiteralType Screen +syntax keyword qmlObjectLiteralType ScreenRayCaster +syntax keyword qmlObjectLiteralType ScriptAction +syntax keyword qmlObjectLiteralType ScrollBar +syntax keyword qmlObjectLiteralType ScrollIndicator +syntax keyword qmlObjectLiteralType ScrollView +syntax keyword qmlObjectLiteralType ScrollViewStyle +syntax keyword qmlObjectLiteralType SCurveTonemap +syntax keyword qmlObjectLiteralType ScxmlStateMachine +syntax keyword qmlObjectLiteralType SeamlessCubemap +syntax keyword qmlObjectLiteralType SelectionListItem +syntax keyword qmlObjectLiteralType SelectionListModel +syntax keyword qmlObjectLiteralType Sensor +syntax keyword qmlObjectLiteralType SensorGesture +syntax keyword qmlObjectLiteralType SensorReading +syntax keyword qmlObjectLiteralType SequentialAnimation +syntax keyword qmlObjectLiteralType Settings +syntax keyword qmlObjectLiteralType SettingsStore +syntax keyword qmlObjectLiteralType SetUniformValue +syntax keyword qmlObjectLiteralType Shader +syntax keyword qmlObjectLiteralType ShaderEffect +syntax keyword qmlObjectLiteralType ShaderEffectSource +syntax keyword qmlObjectLiteralType ShaderImage +syntax keyword qmlObjectLiteralType ShaderInfo +syntax keyword qmlObjectLiteralType ShaderProgram +syntax keyword qmlObjectLiteralType ShaderProgramBuilder +syntax keyword qmlObjectLiteralType Shape +syntax keyword qmlObjectLiteralType ShapeGradient +syntax keyword qmlObjectLiteralType ShapePath +syntax keyword qmlObjectLiteralType SharedGLTexture +syntax keyword qmlObjectLiteralType ShellSurface +syntax keyword qmlObjectLiteralType ShellSurfaceItem +syntax keyword qmlObjectLiteralType ShiftHandler +syntax keyword qmlObjectLiteralType ShiftKey +syntax keyword qmlObjectLiteralType Shortcut +syntax keyword qmlObjectLiteralType SignalSpy +syntax keyword qmlObjectLiteralType SignalTransition +syntax keyword qmlObjectLiteralType SinglePointHandler +syntax keyword qmlObjectLiteralType size +syntax keyword qmlObjectLiteralType Skeleton +syntax keyword qmlObjectLiteralType SkeletonLoader +syntax keyword qmlObjectLiteralType SkyboxEntity +syntax keyword qmlObjectLiteralType Slider +syntax keyword qmlObjectLiteralType SliderStyle +syntax keyword qmlObjectLiteralType SmoothedAnimation +syntax keyword qmlObjectLiteralType SortPolicy +syntax keyword qmlObjectLiteralType Sound +syntax keyword qmlObjectLiteralType SoundEffect +syntax keyword qmlObjectLiteralType SoundInstance +syntax keyword qmlObjectLiteralType SpaceKey +syntax keyword qmlObjectLiteralType SphereGeometry +syntax keyword qmlObjectLiteralType SphereMesh +syntax keyword qmlObjectLiteralType SpinBox +syntax keyword qmlObjectLiteralType SpinBoxStyle +syntax keyword qmlObjectLiteralType SplineSeries +syntax keyword qmlObjectLiteralType SplitHandle +syntax keyword qmlObjectLiteralType SplitView +syntax keyword qmlObjectLiteralType SpotLight +syntax keyword qmlObjectLiteralType SpringAnimation +syntax keyword qmlObjectLiteralType Sprite +syntax keyword qmlObjectLiteralType SpriteGoal +syntax keyword qmlObjectLiteralType SpriteSequence +syntax keyword qmlObjectLiteralType Stack +syntax keyword qmlObjectLiteralType StackedBarSeries +syntax keyword qmlObjectLiteralType StackLayout +syntax keyword qmlObjectLiteralType StackView +syntax keyword qmlObjectLiteralType StackViewDelegate +syntax keyword qmlObjectLiteralType StandardPaths +syntax keyword qmlObjectLiteralType State +syntax keyword qmlObjectLiteralType StateChangeScript +syntax keyword qmlObjectLiteralType StateGroup +syntax keyword qmlObjectLiteralType StateMachine +syntax keyword qmlObjectLiteralType StateMachineLoader +syntax keyword qmlObjectLiteralType StatusBar +syntax keyword qmlObjectLiteralType StatusBarStyle +syntax keyword qmlObjectLiteralType StatusIndicator +syntax keyword qmlObjectLiteralType StatusIndicatorStyle +syntax keyword qmlObjectLiteralType SteelMilledConcentricMaterial +syntax keyword qmlObjectLiteralType StencilMask +syntax keyword qmlObjectLiteralType StencilOperation +syntax keyword qmlObjectLiteralType StencilOperationArguments +syntax keyword qmlObjectLiteralType StencilTest +syntax keyword qmlObjectLiteralType StencilTestArguments +syntax keyword qmlObjectLiteralType Store +syntax keyword qmlObjectLiteralType String +syntax keyword qmlObjectLiteralType string +syntax keyword qmlObjectLiteralType SubtreeEnabler +syntax keyword qmlObjectLiteralType Supplier +syntax keyword qmlObjectLiteralType Surface3D +syntax keyword qmlObjectLiteralType Surface3DSeries +syntax keyword qmlObjectLiteralType SurfaceDataProxy +syntax keyword qmlObjectLiteralType SwipeDelegate +syntax keyword qmlObjectLiteralType SwipeView +syntax keyword qmlObjectLiteralType Switch +syntax keyword qmlObjectLiteralType SwitchDelegate +syntax keyword qmlObjectLiteralType SwitchStyle +syntax keyword qmlObjectLiteralType SymbolModeKey +syntax keyword qmlObjectLiteralType SystemPalette +syntax keyword qmlObjectLiteralType SystemTrayIcon + +syntax keyword qmlObjectLiteralType Tab +syntax keyword qmlObjectLiteralType TabBar +syntax keyword qmlObjectLiteralType TabButton +syntax keyword qmlObjectLiteralType TableModel +syntax keyword qmlObjectLiteralType TableModelColumn +syntax keyword qmlObjectLiteralType TableView +syntax keyword qmlObjectLiteralType TableViewColumn +syntax keyword qmlObjectLiteralType TableViewStyle +syntax keyword qmlObjectLiteralType TabView +syntax keyword qmlObjectLiteralType TabViewStyle +syntax keyword qmlObjectLiteralType TapHandler +syntax keyword qmlObjectLiteralType TapReading +syntax keyword qmlObjectLiteralType TapSensor +syntax keyword qmlObjectLiteralType TargetDirection +syntax keyword qmlObjectLiteralType TaskbarButton +syntax keyword qmlObjectLiteralType Technique +syntax keyword qmlObjectLiteralType TechniqueFilter +syntax keyword qmlObjectLiteralType TestCase +syntax keyword qmlObjectLiteralType Text +syntax keyword qmlObjectLiteralType Text2DEntity +syntax keyword qmlObjectLiteralType TextArea +syntax keyword qmlObjectLiteralType TextAreaStyle +syntax keyword qmlObjectLiteralType TextEdit +syntax keyword qmlObjectLiteralType TextField +syntax keyword qmlObjectLiteralType TextFieldStyle +syntax keyword qmlObjectLiteralType TextInput +syntax keyword qmlObjectLiteralType TextMetrics +syntax keyword qmlObjectLiteralType Texture +syntax keyword qmlObjectLiteralType Texture1D +syntax keyword qmlObjectLiteralType Texture1DArray +syntax keyword qmlObjectLiteralType Texture2D +syntax keyword qmlObjectLiteralType Texture2DArray +syntax keyword qmlObjectLiteralType Texture2DMultisample +syntax keyword qmlObjectLiteralType Texture2DMultisampleArray +syntax keyword qmlObjectLiteralType Texture3D +syntax keyword qmlObjectLiteralType TextureBuffer +syntax keyword qmlObjectLiteralType TextureCubeMap +syntax keyword qmlObjectLiteralType TextureCubeMapArray +syntax keyword qmlObjectLiteralType TextureImage +syntax keyword qmlObjectLiteralType TextureInput +syntax keyword qmlObjectLiteralType TextureLoader +syntax keyword qmlObjectLiteralType TextureRectangle +syntax keyword qmlObjectLiteralType Theme3D +syntax keyword qmlObjectLiteralType ThemeColor +syntax keyword qmlObjectLiteralType ThresholdMask +syntax keyword qmlObjectLiteralType ThumbnailToolBar +syntax keyword qmlObjectLiteralType ThumbnailToolButton +syntax keyword qmlObjectLiteralType TiltReading +syntax keyword qmlObjectLiteralType TiltSensor +syntax keyword qmlObjectLiteralType TiltShift +syntax keyword qmlObjectLiteralType Timeline +syntax keyword qmlObjectLiteralType TimelineAnimation +syntax keyword qmlObjectLiteralType TimeoutTransition +syntax keyword qmlObjectLiteralType Timer +syntax keyword qmlObjectLiteralType ToggleButton +syntax keyword qmlObjectLiteralType ToggleButtonStyle +syntax keyword qmlObjectLiteralType ToolBar +syntax keyword qmlObjectLiteralType ToolBarStyle +syntax keyword qmlObjectLiteralType ToolButton +syntax keyword qmlObjectLiteralType ToolSeparator +syntax keyword qmlObjectLiteralType ToolTip +syntax keyword qmlObjectLiteralType TooltipRequest +syntax keyword qmlObjectLiteralType Torch +syntax keyword qmlObjectLiteralType TorusGeometry +syntax keyword qmlObjectLiteralType TorusMesh +syntax keyword qmlObjectLiteralType TouchEventSequence +syntax keyword qmlObjectLiteralType TouchInputHandler3D +syntax keyword qmlObjectLiteralType TouchPoint +syntax keyword qmlObjectLiteralType Trace +syntax keyword qmlObjectLiteralType TraceCanvas +syntax keyword qmlObjectLiteralType TraceInputArea +syntax keyword qmlObjectLiteralType TraceInputKey +syntax keyword qmlObjectLiteralType TraceInputKeyPanel +syntax keyword qmlObjectLiteralType TrailEmitter +syntax keyword qmlObjectLiteralType Transaction +syntax keyword qmlObjectLiteralType Transform +syntax keyword qmlObjectLiteralType Transition +syntax keyword qmlObjectLiteralType Translate +syntax keyword qmlObjectLiteralType TreeView +syntax keyword qmlObjectLiteralType TreeViewStyle +syntax keyword qmlObjectLiteralType Tumbler +syntax keyword qmlObjectLiteralType TumblerColumn +syntax keyword qmlObjectLiteralType TumblerStyle +syntax keyword qmlObjectLiteralType Turbulence + +syntax keyword qmlObjectLiteralType UniformAnimator +syntax keyword qmlObjectLiteralType url +syntax keyword qmlObjectLiteralType User + +syntax keyword qmlObjectLiteralType ValueAxis +syntax keyword qmlObjectLiteralType ValueAxis3D +syntax keyword qmlObjectLiteralType ValueAxis3DFormatter +syntax keyword qmlObjectLiteralType var +syntax keyword qmlObjectLiteralType variant +syntax keyword qmlObjectLiteralType VBarModelMapper +syntax keyword qmlObjectLiteralType VBoxPlotModelMapper +syntax keyword qmlObjectLiteralType VCandlestickModelMapper +syntax keyword qmlObjectLiteralType vector2d +syntax keyword qmlObjectLiteralType vector3d +syntax keyword qmlObjectLiteralType Vector3dAnimation +syntax keyword qmlObjectLiteralType vector4d +syntax keyword qmlObjectLiteralType VertexBlendAnimation +syntax keyword qmlObjectLiteralType VerticalHeaderView +syntax keyword qmlObjectLiteralType Video +syntax keyword qmlObjectLiteralType VideoOutput +syntax keyword qmlObjectLiteralType View3D +syntax keyword qmlObjectLiteralType Viewport +syntax keyword qmlObjectLiteralType ViewTransition +syntax keyword qmlObjectLiteralType Vignette +syntax keyword qmlObjectLiteralType VirtualKeyboardSettings +syntax keyword qmlObjectLiteralType VPieModelMapper +syntax keyword qmlObjectLiteralType VXYModelMapper + +syntax keyword qmlObjectLiteralType Wander +syntax keyword qmlObjectLiteralType WasdController +syntax keyword qmlObjectLiteralType WavefrontMesh +syntax keyword qmlObjectLiteralType WaylandClient +syntax keyword qmlObjectLiteralType WaylandCompositor +syntax keyword qmlObjectLiteralType WaylandHardwareLayer +syntax keyword qmlObjectLiteralType WaylandOutput +syntax keyword qmlObjectLiteralType WaylandQuickItem +syntax keyword qmlObjectLiteralType WaylandSeat +syntax keyword qmlObjectLiteralType WaylandSurface +syntax keyword qmlObjectLiteralType WaylandView +syntax keyword qmlObjectLiteralType Waypoint +syntax keyword qmlObjectLiteralType WebChannel +syntax keyword qmlObjectLiteralType WebEngine +syntax keyword qmlObjectLiteralType WebEngineAction +syntax keyword qmlObjectLiteralType WebEngineCertificateError +syntax keyword qmlObjectLiteralType WebEngineClientCertificateOption +syntax keyword qmlObjectLiteralType WebEngineClientCertificateSelection +syntax keyword qmlObjectLiteralType WebEngineDownloadItem +syntax keyword qmlObjectLiteralType WebEngineHistory +syntax keyword qmlObjectLiteralType WebEngineHistoryListModel +syntax keyword qmlObjectLiteralType WebEngineLoadRequest +syntax keyword qmlObjectLiteralType WebEngineNavigationRequest +syntax keyword qmlObjectLiteralType WebEngineNewViewRequest +syntax keyword qmlObjectLiteralType WebEngineNotification +syntax keyword qmlObjectLiteralType WebEngineProfile +syntax keyword qmlObjectLiteralType WebEngineScript +syntax keyword qmlObjectLiteralType WebEngineSettings +syntax keyword qmlObjectLiteralType WebEngineView +syntax keyword qmlObjectLiteralType WebSocket +syntax keyword qmlObjectLiteralType WebSocketServer +syntax keyword qmlObjectLiteralType WebView +syntax keyword qmlObjectLiteralType WebViewLoadRequest +syntax keyword qmlObjectLiteralType WeekNumberColumn +syntax keyword qmlObjectLiteralType WheelEvent +syntax keyword qmlObjectLiteralType WheelHandler +syntax keyword qmlObjectLiteralType Window +syntax keyword qmlObjectLiteralType WlScaler +syntax keyword qmlObjectLiteralType WlShell +syntax keyword qmlObjectLiteralType WlShellSurface +syntax keyword qmlObjectLiteralType WorkerScript + +syntax keyword qmlObjectLiteralType XAnimator +syntax keyword qmlObjectLiteralType XdgDecorationManagerV1 +syntax keyword qmlObjectLiteralType XdgOutputManagerV1 +syntax keyword qmlObjectLiteralType XdgPopup +syntax keyword qmlObjectLiteralType XdgPopupV5 +syntax keyword qmlObjectLiteralType XdgPopupV6 +syntax keyword qmlObjectLiteralType XdgShell +syntax keyword qmlObjectLiteralType XdgShellV5 +syntax keyword qmlObjectLiteralType XdgShellV6 +syntax keyword qmlObjectLiteralType XdgSurface +syntax keyword qmlObjectLiteralType XdgSurfaceV5 +syntax keyword qmlObjectLiteralType XdgSurfaceV6 +syntax keyword qmlObjectLiteralType XdgToplevel +syntax keyword qmlObjectLiteralType XdgToplevelV6 +syntax keyword qmlObjectLiteralType XmlListModel +syntax keyword qmlObjectLiteralType XmlRole +syntax keyword qmlObjectLiteralType XYPoint +syntax keyword qmlObjectLiteralType XYSeries + +syntax keyword qmlObjectLiteralType YAnimator + +syntax keyword qmlObjectLiteralType ZoomBlur + +" }}} + +if get(g:, 'qml_fold', 0) + syn match qmlFunction "\" + syn region qmlFunctionFold start="^\z(\s*\)\.*[^};]$" end="^\z1}.*$" transparent fold keepend + + syn sync match qmlSync grouphere qmlFunctionFold "\" + syn sync match qmlSync grouphere NONE "^}" + + setlocal foldmethod=syntax + setlocal foldtext=getline(v:foldstart) +else + syn keyword qmlFunction function + syn match qmlArrowFunction "=>" + syn match qmlBraces "[{}\[\]]" + syn match qmlParens "[()]" +endif + +syn sync fromstart +syn sync maxlines=100 + +if main_syntax == "qml" + syn sync ccomment qmlComment +endif + +hi def link qmlComment Comment +hi def link qmlLineComment Comment +hi def link qmlCommentTodo Todo +hi def link qmlSpecial Special +hi def link qmlStringS String +hi def link qmlStringD String +hi def link qmlStringT String +hi def link qmlCharacter Character +hi def link qmlNumber Number +hi def link qmlConditional Conditional +hi def link qmlRepeat Repeat +hi def link qmlBranch Conditional +hi def link qmlOperator Operator +hi def link qmlJsType Type +hi def link qmlType Type +hi def link qmlObjectLiteralType Type +hi def link qmlStatement Statement +hi def link qmlFunction Function +hi def link qmlArrowFunction Function +hi def link qmlBraces Function +hi def link qmlError Error +hi def link qmlNull Keyword +hi def link qmlBoolean Boolean +hi def link qmlRegexpString String +hi def link qmlNullishCoalescing Operator + +hi def link qmlIdentifier Identifier +hi def link qmlLabel Label +hi def link qmlException Exception +hi def link qmlMessage Keyword +hi def link qmlGlobal Keyword +hi def link qmlReserved Keyword +hi def link qmlDebug Debug +hi def link qmlConstant Label +hi def link qmlBindingProperty Label +hi def link qmlDeclaration Function + +let b:current_syntax = "qml" +if main_syntax == 'qml' + unlet main_syntax +endif -- cgit From 4a36ecd23898e8b4ccbe8fce9bd9300aa69aa834 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Mon, 21 Aug 2023 09:51:38 +0900 Subject: vim-patch:72904d5fda0a Runtime: Add nixInherit matcher in nix.vim syntax Perform the lookahead in `nixInheritAttributeScope`, then hand over to a new region called `nixInheritAttributeSubExpr`, which sets the match start to one char after the opening bracket to avoid a double-match. Finally, only do a lookahead to `)` in `nixInheritAttributeSubExpr` (and thus make sure the region is closed to not get a match of `nixParen` here) and let `nixInheritAttributeScope` close the bracket. https://github.com/vim/vim/commit/72904d5fda0a1bc78f4bc9080c158226e6e90d5c Co-authored-by: James Fleming --- runtime/syntax/nix.vim | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/nix.vim b/runtime/syntax/nix.vim index c07676a4a8..671b269c04 100644 --- a/runtime/syntax/nix.vim +++ b/runtime/syntax/nix.vim @@ -1,11 +1,12 @@ " Vim syntax file " Language: Nix -" Maintainer: James Fleming +" Maintainer: James Fleming +" (Github username: equill) " Original Author: Daiderd Jordan " Acknowledgement: Based on vim-nix maintained by Daiderd Jordan " https://github.com/LnL7/vim-nix " License: MIT -" Last Change: 2022 Dec 06 +" Last Change: 2023 Aug 19 if exists("b:current_syntax") finish @@ -68,7 +69,8 @@ syn match nixAttribute "[a-zA-Z_][a-zA-Z0-9_'-]*\ze\%([^a-zA-Z0-9_'.-]\|$\)" con syn region nixAttributeAssignment start="=" end="\ze;" contained contains=@nixExpr syn region nixAttributeDefinition start=/\ze[a-zA-Z_"$]/ end=";" contained contains=nixComment,nixAttribute,nixInterpolation,nixSimpleString,nixAttributeDot,nixAttributeAssignment -syn region nixInheritAttributeScope start="(" end="\ze)" contained contains=@nixExpr +syn region nixInheritAttributeSubExpr start="("ms=e+1 end="\ze)" contained contains=nixAttributeDot,@nixExpr +syn region nixInheritAttributeScope start="\ze(" end=")" contained contains=nixInheritAttributeSubExpr syn region nixAttributeDefinition matchgroup=nixInherit start="\" end=";" contained contains=nixComment,nixInheritAttributeScope,nixAttribute syn region nixAttributeSet start="{" end="}" contains=nixComment,nixAttributeDefinition -- cgit From 60037feb56c6f03443b93890a2506e290425805a Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Mon, 21 Aug 2023 09:52:33 +0900 Subject: vim-patch:e71e9d9ad368 runtime(javascript): fix default link of javaScriptNumber in syntax file (vim/vim#11788) cool unused matching https://github.com/vim/vim/commit/e71e9d9ad368f83162a9c08217a9faf9bda909a7 Co-authored-by: Meqa <106783764+Meqativ@users.noreply.github.com> --- runtime/syntax/javascript.vim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/javascript.vim b/runtime/syntax/javascript.vim index cb2d16e2a7..e3b4cdf703 100644 --- a/runtime/syntax/javascript.vim +++ b/runtime/syntax/javascript.vim @@ -103,7 +103,7 @@ hi def link javaScriptStringD String hi def link javaScriptStringT String hi def link javaScriptCharacter Character hi def link javaScriptSpecialCharacter javaScriptSpecial -hi def link javaScriptNumber javaScriptValue +hi def link javaScriptNumber Number hi def link javaScriptConditional Conditional hi def link javaScriptRepeat Repeat hi def link javaScriptBranch Conditional -- cgit From 5b78a5c72a1ae8999646ecb268ab47b767c3e709 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Mon, 21 Aug 2023 09:52:53 +0900 Subject: vim-patch:309ded19543c MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit runtime(css): Update pseudo-classes in syntax script (vim/vim#11595) https://github.com/vim/vim/commit/309ded19543c140375b28ef562257e9f22c918c6 Co-authored-by: Adrian Heine né Lang --- runtime/syntax/css.vim | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/css.vim b/runtime/syntax/css.vim index 564dc151bc..f8104ea2c5 100644 --- a/runtime/syntax/css.vim +++ b/runtime/syntax/css.vim @@ -452,12 +452,12 @@ syn match cssAttrComma "," " Pseudo class " https://www.w3.org/TR/selectors-4/ syn match cssPseudoClass ":[A-Za-z0-9_-]*" contains=cssNoise,cssPseudoClassId,cssUnicodeEscape,cssVendor,cssPseudoClassFn -syn keyword cssPseudoClassId contained link visited active hover before after left right -syn keyword cssPseudoClassId contained root empty target enabled disabled checked invalid +syn keyword cssPseudoClassId contained link visited active hover before after left right any-link +syn keyword cssPseudoClassId contained root empty target enabled disabled checked invalid default defined autofill fullscreen host indeterminate in-range modal optional out-of-range picture-in-picture placeholder-shown paused playing read-only read-write required scope syn match cssPseudoClassId contained "\" syn match cssPseudoClassId contained "\<\(first\|last\|only\)-\(of-type\|child\)\>" syn match cssPseudoClassId contained "\" -syn region cssPseudoClassFn contained matchgroup=cssFunctionName start="\<\(not\|is\|lang\|\(nth\|nth-last\)-\(of-type\|child\)\)(" end=")" contains=cssStringQ,cssStringQQ,cssTagName,cssAttributeSelector,cssClassName,cssIdentifier +syn region cssPseudoClassFn contained matchgroup=cssFunctionName start="\<\(where\|has\|host\|not\|is\|lang\|\(nth\|nth-last\)-\(of-type\|child\)\)(" end=")" contains=cssStringQ,cssStringQQ,cssTagName,cssAttributeSelector,cssClassName,cssIdentifier " ------------------------------------ " Vendor specific properties syn match cssPseudoClassId contained "\" -- cgit From 54ddf56589bfe3941987d3fc9242104486aa6a15 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Mon, 21 Aug 2023 09:55:35 +0900 Subject: vim-patch:6d626c41842e MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit runtime(sdc): Add underscore to sdc flags in syntax file (vim/vim#6201) https://github.com/vim/vim/commit/6d626c41842e2c3ab698338bbe5fcfcf0557ecd8 Co-authored-by: Jordi Altayó --- runtime/syntax/sdc.vim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/sdc.vim b/runtime/syntax/sdc.vim index 0ca9becf73..dbfa35eeb6 100644 --- a/runtime/syntax/sdc.vim +++ b/runtime/syntax/sdc.vim @@ -25,7 +25,7 @@ syn keyword sdcNonIdealities set_load set_min_capacitance set_max_capacitance syn keyword sdcCreateOperations create_clock create_timing_netlist update_timing_netlist " command flags highlighting -syn match sdcFlags "[[:space:]]-[[:alpha:]]*\>" +syn match sdcFlags "[[:space:]]-[[:alpha:]_]*\>" " Define the default highlighting. hi def link sdcCollections Repeat -- cgit From b75659c8fbfa2599a7d15d493b47707a0c4fbdcc Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Mon, 21 Aug 2023 20:58:13 +0900 Subject: vim-patch:690963924956 runtime(dosini): save and restore cpo value in syntax script Commit dd0ad2598898c2b4641c4acd5b70b6184fa698ed introduced line-continuation. However, to make sure this does not cause an error when Vim is run in compatible mode, we need to set compatibility mode temporarily and reset it back when finished reading the file. This fixes: https://groups.google.com/g/vim_use/c/9zccgo_RIqM/m/xlUmhBktBgAJ https://github.com/vim/vim/commit/690963924956d800b94bb86076aa9d25f04565ac Co-authored-by: Christian Brabandt --- runtime/syntax/dosini.vim | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/dosini.vim b/runtime/syntax/dosini.vim index 751a12f4b2..66e17ec9af 100644 --- a/runtime/syntax/dosini.vim +++ b/runtime/syntax/dosini.vim @@ -6,7 +6,7 @@ " Current Maintainer: Hong Xu " Homepage: http://www.vim.org/scripts/script.php?script_id=3747 " Repository: https://github.com/xuhdev/syntax-dosini.vim -" Last Change: 2023 Jun 27 +" Last Change: 2023 Aug 20 " quit when a syntax file was already loaded @@ -14,6 +14,10 @@ if exists("b:current_syntax") finish endif +" using of line-continuation requires cpo&vim +let s:cpo_save = &cpo +set cpo&vim + " shut case off syn case ignore @@ -39,4 +43,7 @@ hi def link dosiniValue String let b:current_syntax = "dosini" +let &cpo = s:cpo_save +unlet s:cpo_save + " vim: sts=2 sw=2 et -- cgit From a5565499c8ff49a13ea9aee3ccda62a9e19af97e Mon Sep 17 00:00:00 2001 From: Sean Dewar Date: Sun, 13 Aug 2023 17:00:03 +0100 Subject: vim-patch:1688938dd5ac runtime: Add a few more remarks about Bram and new runtime files https://github.com/vim/vim/commit/1688938dd5ac78ab67e54299b9d5b93499dba762 Co-authored-by: Christian Brabandt --- runtime/syntax/README.txt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/README.txt b/runtime/syntax/README.txt index 8eee0ea20a..756ae41587 100644 --- a/runtime/syntax/README.txt +++ b/runtime/syntax/README.txt @@ -34,9 +34,10 @@ checking a few lines in the file. And please write the file in a portable way, see ":help 44.12". If you have remarks about an existing file, send them to the maintainer of -that file. Only when you get no response send a message to Bram@vim.org. +that file. Only when you get no response send a message to the vim-dev +mailing list: . If you are the maintainer of a syntax file and make improvements, send the new -version to Bram@vim.org. +version to the vim-dev mailing list: For further info see ":help syntax" in Vim. -- cgit From 23cc36bd99a4e16a0d9d24c7fca62554211a5b1d Mon Sep 17 00:00:00 2001 From: Sean Dewar Date: Wed, 23 Aug 2023 20:31:48 +0100 Subject: vim-patch:e8d6f03f6a61 runtime: Remove Brams name from a few more runtime files (vim/vim#12780) syntax/model.vim: minor wording improvement https://github.com/vim/vim/commit/e8d6f03f6a61f60de6893253621d057f63dd6a23 Use the updated "Last Change" date for all. Co-authored-by: Christian Brabandt Co-authored-by: Adri Verhoef --- runtime/syntax/bash.vim | 4 ++-- runtime/syntax/model.vim | 2 +- runtime/syntax/shared/typescriptcommon.vim | 6 +++--- runtime/syntax/typescript.vim | 6 +++--- runtime/syntax/typescriptreact.vim | 6 +++--- runtime/syntax/zimbu.vim | 5 +++-- 6 files changed, 15 insertions(+), 14 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/bash.vim b/runtime/syntax/bash.vim index 75ab99938e..1e565c3022 100644 --- a/runtime/syntax/bash.vim +++ b/runtime/syntax/bash.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: bash -" Maintainer: Bram -" Last Change: 2019 Sep 27 +" Maintainer: The Vim Project +" Last Change: 2023 Aug 13 " quit when a syntax file was already loaded if exists("b:current_syntax") diff --git a/runtime/syntax/model.vim b/runtime/syntax/model.vim index ea661eb5b5..2df380c629 100644 --- a/runtime/syntax/model.vim +++ b/runtime/syntax/model.vim @@ -5,7 +5,7 @@ " Former Maintainer: Bram Moolenaar " very basic things only (based on the vgrindefs file). -" If you use this language, please improve it, and send me the patches! +" If you use this language, please improve it, and send patches! " Quit when a (custom) syntax file was already loaded if exists("b:current_syntax") diff --git a/runtime/syntax/shared/typescriptcommon.vim b/runtime/syntax/shared/typescriptcommon.vim index ef362fc721..cfa4e1433b 100644 --- a/runtime/syntax/shared/typescriptcommon.vim +++ b/runtime/syntax/shared/typescriptcommon.vim @@ -1,9 +1,9 @@ " Vim syntax file " Language: TypeScript and TypeScriptReact -" Maintainer: Bram Moolenaar, Herrington Darkholme -" Last Change: 2021 Sep 22 +" Maintainer: Herrington Darkholme +" Last Change: 2023 Aug 13 " Based On: Herrington Darkholme's yats.vim -" Changes: See https:github.com/HerringtonDarkholme/yats.vim +" Changes: See https://github.com/HerringtonDarkholme/yats.vim " Credits: See yats.vim on github if &cpo =~ 'C' diff --git a/runtime/syntax/typescript.vim b/runtime/syntax/typescript.vim index af71938a8e..5389c21497 100644 --- a/runtime/syntax/typescript.vim +++ b/runtime/syntax/typescript.vim @@ -1,9 +1,9 @@ " Vim syntax file " Language: TypeScript -" Maintainer: Bram Moolenaar, Herrington Darkholme -" Last Change: 2019 Nov 30 +" Maintainer: Herrington Darkholme +" Last Change: 2023 Aug 13 " Based On: Herrington Darkholme's yats.vim -" Changes: Go to https:github.com/HerringtonDarkholme/yats.vim for recent changes. +" Changes: Go to https://github.com/HerringtonDarkholme/yats.vim for recent changes. " Origin: https://github.com/othree/yajs " Credits: Kao Wei-Ko(othree), Jose Elera Campana, Zhao Yi, Claudio Fleiner, Scott Shattuck " (This file is based on their hard work), gumnos (From the #vim diff --git a/runtime/syntax/typescriptreact.vim b/runtime/syntax/typescriptreact.vim index c4c2d45745..1c510459f5 100644 --- a/runtime/syntax/typescriptreact.vim +++ b/runtime/syntax/typescriptreact.vim @@ -1,9 +1,9 @@ " Vim syntax file " Language: TypeScript with React (JSX) -" Maintainer: Bram Moolenaar -" Last Change: 2019 Nov 30 +" Maintainer: The Vim Project +" Last Change: 2023 Aug 13 " Based On: Herrington Darkholme's yats.vim -" Changes: See https:github.com/HerringtonDarkholme/yats.vim +" Changes: See https://github.com/HerringtonDarkholme/yats.vim " Credits: See yats.vim on github if !exists("main_syntax") diff --git a/runtime/syntax/zimbu.vim b/runtime/syntax/zimbu.vim index 1a7a485e6f..472559520e 100644 --- a/runtime/syntax/zimbu.vim +++ b/runtime/syntax/zimbu.vim @@ -1,7 +1,8 @@ " Vim syntax file " Language: Zimbu -" Maintainer: Bram Moolenaar -" Last Change: 2014 Nov 23 +" Maintainer: The·Vim·Project· +" Last Change: 2023 Aug 13 +" Note: Zimbu seems to be dead :( if exists("b:current_syntax") finish -- cgit From 810428c4d5162c8971151a37421d4ae0586e321e Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Wed, 23 Aug 2023 10:09:08 +0900 Subject: vim-patch:c6d533b0ad56 runtime(gp): update gp.vim syntax file for the GP language (version 2.15) (vim/vim#12884) - add missing defaults - add missing control structures (incl. parallelism) - add missing scope declarations - whitespace edits (remove extra tabs) https://github.com/vim/vim/commit/c6d533b0ad565a610a48386b0ad72cc591010fcb Co-authored-by: Karim Belabas --- runtime/syntax/gp.vim | 47 ++++++++++++++++++++++++++--------------------- 1 file changed, 26 insertions(+), 21 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/gp.vim b/runtime/syntax/gp.vim index aecf7df48b..89f2d3f0ff 100644 --- a/runtime/syntax/gp.vim +++ b/runtime/syntax/gp.vim @@ -1,7 +1,7 @@ " Vim syntax file -" Language: gp (version 2.5) +" Language: gp (version 2.15) " Maintainer: Karim Belabas -" Last change: 2012 Jan 08 +" Last change: 2023 Aug 22 " URL: http://pari.math.u-bordeaux.fr " quit when a syntax file was already loaded @@ -14,23 +14,29 @@ set cpo&vim " control statements syntax keyword gpStatement break return next -syntax keyword gpConditional if -syntax keyword gpRepeat until while for fordiv forell forprime -syntax keyword gpRepeat forsubgroup forstep forvec +syntax keyword gpConditional if iferr +syntax keyword gpRepeat until while for forcomposite fordiv +syntax keyword gpRepeat fordivfactored foreach forell forfactored +syntax keyword gpRepeat forpart forperm forprime forprimestep forqfvec +syntax keyword gpRepeat forsquarefree forstep forsubgroup forsubset +syntax keyword gpRepeat forvec +syntax keyword gpRepeat parfor parforeach parforprime parforprimestep +syntax keyword gpRepeat parforvec " storage class -syntax keyword gpScope my local global +syntax keyword gpScope my local global export exportall " defaults syntax keyword gpInterfaceKey breakloop colors compatible -syntax keyword gpInterfaceKey datadir debug debugfiles debugmem -syntax keyword gpInterfaceKey echo factor_add_primes factor_proven format +syntax keyword gpInterfaceKey datadir debug debugfiles debugmem +syntax keyword gpInterfaceKey echo factor_add_primes factor_proven format syntax keyword gpInterfaceKey graphcolormap graphcolors -syntax keyword gpInterfaceKey help histfile histsize -syntax keyword gpInterfaceKey lines linewrap log logfile new_galois_format -syntax keyword gpInterfaceKey output parisize path prettyprinter primelimit -syntax keyword gpInterfaceKey prompt prompt_cont psfile -syntax keyword gpInterfaceKey readline realprecision recover -syntax keyword gpInterfaceKey secure seriesprecision simplify strictmatch -syntax keyword gpInterfaceKey TeXstyle timer +syntax keyword gpInterfaceKey help histfile histsize +syntax keyword gpInterfaceKey lines linewrap log logfile nbthreads +syntax keyword gpInterfaceKey new_galois_format output parisize parisizemax +syntax keyword gpInterfaceKey path plothsizes prettyprinter primelimit prompt +syntax keyword gpInterfaceKey prompt_cont psfile readline realbitprecision +syntax keyword gpInterfaceKey realprecision recover secure seriesprecision +syntax keyword gpInterfaceKey simplify sopath strictmatch TeXstyle +syntax keyword gpInterfaceKey threadsize threadsizemax timer syntax match gpInterface "^\s*\\[a-z].*" syntax keyword gpInterface default @@ -58,24 +64,23 @@ syntax region gpParen transparent start='(' end=')' contains=ALLBUT,gpParenErro syntax match gpParenError ")" syntax match gpInParen contained "[{}]" - -hi def link gpConditional Conditional +hi def link gpConditional Conditional hi def link gpRepeat Repeat hi def link gpError Error -hi def link gpParenError gpError +hi def link gpParenError gpError hi def link gpInParen gpError hi def link gpStatement Statement hi def link gpString String hi def link gpComment Comment hi def link gpInterface Type hi def link gpInput Type -hi def link gpInterfaceKey Statement +hi def link gpInterfaceKey Statement hi def link gpFunction Function hi def link gpScope Type " contained ones hi def link gpSpecial Special -hi def link gpTodo Todo -hi def link gpArgs Type +hi def link gpTodo Todo +hi def link gpArgs Type let b:current_syntax = "gp" let &cpo = s:cpo_save -- cgit From 0b7e1730bcd4c6ec1b55d541bc612445a4ff0c65 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Wed, 23 Aug 2023 10:09:32 +0900 Subject: vim-patch:e34b51e95fd0 runtime(solidity): add new ftplugin (vim/vim#12877) Set undo_{ftplugin,indent} closes vim/vim#11240 https://github.com/vim/vim/commit/e34b51e95fd0ea7b0e34a625db0f9ed7e051e0dd Co-authored-by: dkearns Co-authored-by: cothi --- runtime/syntax/solidity.vim | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/solidity.vim b/runtime/syntax/solidity.vim index e552446e10..a46d041a10 100644 --- a/runtime/syntax/solidity.vim +++ b/runtime/syntax/solidity.vim @@ -1,10 +1,10 @@ " Vim syntax file -" Language: Solidity -" Maintainer: Cothi (jiungdev@gmail.com) -" Original Author: tomlion (https://github.com/tomlion/vim-solidity/blob/master/syntax/solidity.vim) -" Last Changed: 2022 Sep 27 +" Language: Solidity +" Maintainer: Cothi (jiungdev@gmail.com) +" Original Author: tomlion (https://github.com/tomlion/vim-solidity/blob/master/syntax/solidity.vim) +" Last Change: 2022 Sep 27 " -" Additional contributors: +" Contributors: " Modified by thesis (https://github.com/thesis/vim-solidity/blob/main/indent/solidity.vim) if exists("b:current_syntax") -- cgit From 4ca8b90b14b653e30db91d745f8145eab6a9e6f1 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Wed, 23 Aug 2023 10:10:07 +0900 Subject: vim-patch:b0d584d97ab6 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit runtime(go): Update Go syntax file with 1.21 builtins (vim/vim#12876) * Update Go syntax file with 1.21 builtins https://github.com/vim/vim/commit/b0d584d97ab6f5cb070caba3882ba387b81448c1 Co-authored-by: José-Paul D --- runtime/syntax/go.vim | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/go.vim b/runtime/syntax/go.vim index bf967fdcd9..4272e807f3 100644 --- a/runtime/syntax/go.vim +++ b/runtime/syntax/go.vim @@ -5,7 +5,7 @@ " go.vim: Vim syntax file for Go. " Language: Go " Maintainer: Billie Cleek -" Latest Revision: 2023-02-19 +" Latest Revision: 2023-08-21 " License: BSD-style. See LICENSE file in source repository. " Repository: https://github.com/fatih/vim-go @@ -130,8 +130,8 @@ hi def link goFloats Type hi def link goComplexes Type " Predefined functions and values -syn keyword goBuiltins append cap close complex copy delete imag len -syn keyword goBuiltins make new panic print println real recover +syn keyword goBuiltins append cap clear close complex copy delete imag len +syn keyword goBuiltins make max min new panic print println real recover syn keyword goBoolean true false syn keyword goPredefinedIdentifiers nil iota -- cgit From 9ab5fda99eb5a0862e8a213359b17654e99de554 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Wed, 23 Aug 2023 10:10:25 +0900 Subject: vim-patch:cdd934439d08 runtime(crontab): add support for BSD specifics in syntax script (vim/vim#11196) * OpenBSD supports the use of `~` as alias for "random valid value" * FreeBSD supports `@every_{minute,second}` See: * https://man.openbsd.org/crontab.5 * https://www.freebsd.org/cgi/man.cgi?query=crontab&sektion=5 https://github.com/vim/vim/commit/cdd934439d08768235be04817ee214f067e8cf56 Co-authored-by: Moviuro --- runtime/syntax/crontab.vim | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/crontab.vim b/runtime/syntax/crontab.vim index 5e38ffaafe..12daa9b7b8 100644 --- a/runtime/syntax/crontab.vim +++ b/runtime/syntax/crontab.vim @@ -5,7 +5,7 @@ " License: This file can be redistribued and/or modified under the same terms " as Vim itself. " Filenames: /tmp/crontab.* used by "crontab -e" -" Last Change: 2015-01-20 +" Last Change: 2022-09-22 " " crontab line format: " Minutes Hours Days Months Days_of_Week Commands # comments @@ -15,20 +15,20 @@ if exists("b:current_syntax") finish endif -syntax match crontabNick "^\s*@\(reboot\|yearly\|annually\|monthly\|weekly\|daily\|midnight\|hourly\)\>" nextgroup=crontabCmd skipwhite +syntax match crontabNick "^\s*@\(reboot\|yearly\|annually\|monthly\|weekly\|daily\|midnight\|hourly\|every_minute\|every_second\)\>" nextgroup=crontabCmd skipwhite syntax match crontabVar "^\s*\k\w*\s*="me=e-1 syntax case ignore -syntax match crontabMin "^\s*[-0-9/,.*]\+" nextgroup=crontabHr skipwhite -syntax match crontabHr "\s[-0-9/,.*]\+" nextgroup=crontabDay skipwhite contained -syntax match crontabDay "\s[-0-9/,.*]\+" nextgroup=crontabMnth skipwhite contained +syntax match crontabMin "^\s*[-~0-9/,.*]\+" nextgroup=crontabHr skipwhite +syntax match crontabHr "\s[-~0-9/,.*]\+" nextgroup=crontabDay skipwhite contained +syntax match crontabDay "\s[-~0-9/,.*]\+" nextgroup=crontabMnth skipwhite contained -syntax match crontabMnth "\s[-a-z0-9/,.*]\+" nextgroup=crontabDow skipwhite contained +syntax match crontabMnth "\s[-~a-z0-9/,.*]\+" nextgroup=crontabDow skipwhite contained syntax keyword crontabMnth12 contained jan feb mar apr may jun jul aug sep oct nov dec -syntax match crontabDow "\s[-a-z0-9/,.*]\+" nextgroup=crontabCmd skipwhite contained +syntax match crontabDow "\s[-~a-z0-9/,.*]\+" nextgroup=crontabCmd skipwhite contained syntax keyword crontabDow7 contained sun mon tue wed thu fri sat syntax region crontabCmd start="\S" end="$" skipwhite contained keepend contains=crontabPercent -- cgit From 660f9e6857891b24a8358887be2d9373a7188713 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Wed, 23 Aug 2023 10:10:48 +0900 Subject: vim-patch:118f8e9da39e runtime(cmake) Recognize add_compile_definitions in syntax script (vim/vim#10416) https://github.com/vim/vim/commit/118f8e9da39e6cec5ffe644d5b87a7772418ed0c Co-authored-by: MichaWiedenmann --- runtime/syntax/cmake.vim | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/cmake.vim b/runtime/syntax/cmake.vim index f7616e4c6d..7340ac238e 100644 --- a/runtime/syntax/cmake.vim +++ b/runtime/syntax/cmake.vim @@ -335,7 +335,7 @@ syn keyword cmakeGeneratorExpressions contained syn case ignore syn keyword cmakeCommand - \ add_compile_options add_custom_command add_custom_target add_definitions add_dependencies add_executable add_library add_subdirectory add_test aux_source_directory break build_command cmake_host_system_information cmake_minimum_required cmake_parse_arguments cmake_policy configure_file continue create_test_sourcelist ctest_build ctest_configure ctest_coverage ctest_empty_binary_directory ctest_memcheck ctest_read_custom_files ctest_run_script ctest_sleep ctest_start ctest_submit ctest_test ctest_update ctest_upload define_property enable_language enable_testing endfunction endmacro execute_process export file find_file find_library find_package find_path find_program fltk_wrap_ui function get_cmake_property get_directory_property get_filename_component get_property get_source_file_property get_target_property get_test_property include include_directories include_external_msproject include_guard include_regular_expression install link_directories list load_cache load_command macro mark_as_advanced math message option project qt_wrap_cpp qt_wrap_ui remove_definitions return separate_arguments set set_directory_properties set_property set_source_files_properties set_target_properties set_tests_properties site_name source_group string target_compile_definitions target_compile_features target_compile_options target_include_directories target_link_libraries target_sources try_compile try_run unset variable_watch + \ add_compile_options add_compile_definitions add_custom_command add_custom_target add_definitions add_dependencies add_executable add_library add_subdirectory add_test aux_source_directory break build_command cmake_host_system_information cmake_minimum_required cmake_parse_arguments cmake_policy configure_file continue create_test_sourcelist ctest_build ctest_configure ctest_coverage ctest_empty_binary_directory ctest_memcheck ctest_read_custom_files ctest_run_script ctest_sleep ctest_start ctest_submit ctest_test ctest_update ctest_upload define_property enable_language enable_testing endfunction endmacro execute_process export file find_file find_library find_package find_path find_program fltk_wrap_ui function get_cmake_property get_directory_property get_filename_component get_property get_source_file_property get_target_property get_test_property include include_directories include_external_msproject include_guard include_regular_expression install link_directories list load_cache load_command macro mark_as_advanced math message option project qt_wrap_cpp qt_wrap_ui remove_definitions return separate_arguments set set_directory_properties set_property set_source_files_properties set_target_properties set_tests_properties site_name source_group string target_compile_definitions target_compile_features target_compile_options target_include_directories target_link_libraries target_sources try_compile try_run unset variable_watch \ nextgroup=cmakeArguments syn keyword cmakeCommandConditional -- cgit From 1c709f5a61f4a691562597004371174dd9957d9f Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Wed, 23 Aug 2023 11:21:22 +0900 Subject: vim-patch:6e93689bde73 runtime(bindzone): updated syntax file - Add support for APL type in runtime/syntax/bindzone.vim - all values between 0- 4294967295 are valid serials closes: vim/vim#9743 closes: vim/vim#8382 https://github.com/vim/vim/commit/6e93689bde7321ce974ae99ec6c74efb08d78842 vim-patch:544b209a2d4b runtime(scala): Link Scala highlighting groups using 'hi def link' in syntax script (vim/vim#9594) They were linked using 'hi link' which made it impossible for color schemes to override highlight groups. https://github.com/vim/vim/commit/544b209a2d4b10e0a4874c925036def30d33d708 Co-authored-by: Oskar Stenman Co-authored-by: Job Noorman --- runtime/syntax/bindzone.vim | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/bindzone.vim b/runtime/syntax/bindzone.vim index fede3d97d5..dce9974903 100644 --- a/runtime/syntax/bindzone.vim +++ b/runtime/syntax/bindzone.vim @@ -33,7 +33,7 @@ syn match zoneDomain contained /[^[:space:]!"#$%&'()*+,\/:;<=>?@[\]\ syn match zoneSpecial contained /^[@*.]\s/ syn match zoneTTL contained /\s\@<=\d[0-9WwDdHhMmSs]*\(\s\|$\)\@=/ nextgroup=zoneClass,zoneRRType skipwhite syn keyword zoneClass contained IN CHAOS CH HS HESIOD nextgroup=zoneRRType,zoneTTL skipwhite -syn keyword zoneRRType contained A AAAA CAA CERT CNAME DNAME DNSKEY DS HINFO LOC MX NAPTR NS NSEC NSEC3 NSEC3PARAM OPENPGPKEY PTR RP RRSIG SMIMEA SOA SPF SRV SSHFP TLSA TXT nextgroup=zoneRData skipwhite +syn keyword zoneRRType contained A AAAA APL CAA CERT CNAME DNAME DNSKEY DS HINFO LOC MX NAPTR NS NSEC NSEC3 NSEC3PARAM OPENPGPKEY PTR RP RRSIG SMIMEA SOA SPF SRV SSHFP TLSA TXT nextgroup=zoneRData skipwhite syn match zoneRData contained /[^;]*/ contains=zoneDomain,zoneIPAddr,zoneIP6Addr,zoneText,zoneNumber,zoneParen,zoneUnknown syn match zoneIPAddr contained /\<[0-9]\{1,3}\(\.[0-9]\{1,3}\)\{,3}\>/ @@ -60,7 +60,7 @@ syn match zoneIP6Addr contained /\<\(\x\{1,4}:\)\{1,7}:\(\s\|;\|$\)\@= syn match zoneText contained /"\([^"\\]\|\\.\)*"\(\s\|;\|$\)\@=/ syn match zoneNumber contained /\<[0-9]\+\(\s\|;\|$\)\@=/ -syn match zoneSerial contained /\<[0-9]\{9,10}\(\s\|;\|$\)\@=/ +syn match zoneSerial contained /\<[0-9]\{1,10}\(\s\|;\|$\)\@=/ syn match zoneErrParen /)/ syn region zoneParen contained start="(" end=")" contains=zoneSerial,zoneTTL,zoneNumber,zoneComment -- cgit From 327e3fab9e66701334a55dd7893283acb85899a2 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Thu, 24 Aug 2023 09:07:35 +0900 Subject: vim-patch:3fc7a7e44abd MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit runtime: Fix typos in various files closes: vim/vim#12836 https://github.com/vim/vim/commit/3fc7a7e44abda6505ccd39a6d067db6e5173cbf6 Co-authored-by: Viktor Szépe --- runtime/syntax/8th.vim | 2 +- runtime/syntax/a65.vim | 2 +- runtime/syntax/chaiscript.vim | 2 +- runtime/syntax/euphoria4.vim | 2 +- runtime/syntax/flexwiki.vim | 4 ++-- runtime/syntax/gdb.vim | 2 +- runtime/syntax/groovy.vim | 2 +- runtime/syntax/lite.vim | 2 +- runtime/syntax/logtalk.vim | 2 +- runtime/syntax/lss.vim | 2 +- runtime/syntax/pymanifest.vim | 2 +- runtime/syntax/rmd.vim | 2 +- runtime/syntax/sgml.vim | 2 +- runtime/syntax/slrnrc.vim | 2 +- runtime/syntax/spec.vim | 4 ++-- runtime/syntax/sqlinformix.vim | 2 +- runtime/syntax/sqlj.vim | 2 +- runtime/syntax/squid.vim | 2 +- runtime/syntax/tasm.vim | 2 +- runtime/syntax/tf.vim | 2 +- runtime/syntax/tsalt.vim | 6 +++--- 21 files changed, 25 insertions(+), 25 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/8th.vim b/runtime/syntax/8th.vim index ce27d10a44..643c9cb095 100644 --- a/runtime/syntax/8th.vim +++ b/runtime/syntax/8th.vim @@ -363,7 +363,7 @@ syn region eighthComment start="\zs\\" end="$" contains=eighthTodo if !exists("did_eighth_syntax_inits") let did_eighth_syntax_inits=1 - " The default methods for highlighting. Can be overriden later. + " The default methods for highlighting. Can be overridden later. hi def link eighthTodo Todo hi def link eighthOperators Operator hi def link eighthMath Number diff --git a/runtime/syntax/a65.vim b/runtime/syntax/a65.vim index b232e826cd..6445b9438b 100644 --- a/runtime/syntax/a65.vim +++ b/runtime/syntax/a65.vim @@ -118,7 +118,7 @@ syn match a65Section "\(^\|\s\)\.)\($\|\s\)" " Strings syn match a65String "\".*\"" -" Programm Counter +" Program Counter syn region a65PC start="\*=" end="\>" keepend " HI/LO Byte diff --git a/runtime/syntax/chaiscript.vim b/runtime/syntax/chaiscript.vim index 5a64bdb556..9925ba5138 100644 --- a/runtime/syntax/chaiscript.vim +++ b/runtime/syntax/chaiscript.vim @@ -61,7 +61,7 @@ syn region chaiscriptFunc matchgroup=chaiscriptFunc start="`" end="`" " Intentionally leaving out all of the normal, well known operators syn match chaiscriptOperator "\.\." -" Guard seperator as an operator +" Guard separator as an operator syn match chaiscriptOperator ":" " Comments diff --git a/runtime/syntax/euphoria4.vim b/runtime/syntax/euphoria4.vim index 5e668a7d67..baa0e8e7b9 100644 --- a/runtime/syntax/euphoria4.vim +++ b/runtime/syntax/euphoria4.vim @@ -27,7 +27,7 @@ syn keyword euphoria4Debug includes inline warning define " Keywords for conditional compilation - from $EUDIR/include/euphoria/keywords.e: syn keyword euphoria4PreProc elsedef elsifdef ifdef -" Keywords (Statments) - from $EUDIR/include/euphoria/keywords.e: +" Keywords (Statements) - from $EUDIR/include/euphoria/keywords.e: syn keyword euphoria4Keyword and as break by case constant continue do else syn keyword euphoria4Keyword elsif end entry enum exit export syn keyword euphoria4Keyword fallthru for function global goto if include diff --git a/runtime/syntax/flexwiki.vim b/runtime/syntax/flexwiki.vim index 6b15ab2d90..3b5f7ff573 100644 --- a/runtime/syntax/flexwiki.vim +++ b/runtime/syntax/flexwiki.vim @@ -67,10 +67,10 @@ syntax match flexwikiEmoticons /\((.)\|:[()|$@]\|:-[DOPS()\]|$@]\|;)\|:'(\) " Aggregate all the regular text highlighting into flexwikiText syntax cluster flexwikiText contains=flexwikiItalic,flexwikiBold,flexwikiCode,flexwikiDeEmphasis,flexwikiDelText,flexwikiInsText,flexwikiSuperScript,flexwikiSubScript,flexwikiCitation,flexwikiLink,flexwikiWord,flexwikiEmoticons -" single-line WikiPropertys +" single-line WikiProperties syntax match flexwikiSingleLineProperty /^:\?[A-Z_][_a-zA-Z0-9]\+:/ -" TODO: multi-line WikiPropertys +" TODO: multi-line WikiProperties " Header levels, 1-6 syntax match flexwikiH1 /^!.*$/ diff --git a/runtime/syntax/gdb.vim b/runtime/syntax/gdb.vim index c820ba40a9..c15b96de6f 100644 --- a/runtime/syntax/gdb.vim +++ b/runtime/syntax/gdb.vim @@ -30,7 +30,7 @@ syn keyword gdbStatement contained search section set sharedlibrary shell show s syn keyword gdbStatement contained stop target tbreak tdump tfind thbreak thread tp trace tstart tstatus tstop syn keyword gdbStatement contained tty und[isplay] unset until up watch whatis where while ws x syn match gdbFuncDef "\.*" -syn match gdbStatmentContainer "^\s*\S\+" contains=gdbStatement,gdbFuncDef +syn match gdbStatementContainer "^\s*\S\+" contains=gdbStatement,gdbFuncDef syn match gdbStatement "^\s*info" nextgroup=gdbInfo skipwhite skipempty " some commonly used abbreviations diff --git a/runtime/syntax/groovy.vim b/runtime/syntax/groovy.vim index 41495e6682..e48279bd1a 100644 --- a/runtime/syntax/groovy.vim +++ b/runtime/syntax/groovy.vim @@ -362,7 +362,7 @@ exec "syn sync ccomment groovyComment minlines=" . groovy_minlines " Mark these as operators -" Hightlight brackets +" Highlight brackets " syn match groovyBraces "[{}]" " syn match groovyBraces "[\[\]]" " syn match groovyBraces "[\|]" diff --git a/runtime/syntax/lite.vim b/runtime/syntax/lite.vim index a8d26892d4..f6e41e7e18 100644 --- a/runtime/syntax/lite.vim +++ b/runtime/syntax/lite.vim @@ -5,7 +5,7 @@ " Email: Subject: send syntax_vim.tgz " Last Change: 2001 Mai 01 " -" Options lite_sql_query = 1 for SQL syntax highligthing inside strings +" Options lite_sql_query = 1 for SQL syntax highlighting inside strings " lite_minlines = x to sync at least x lines backwards " quit when a syntax file was already loaded diff --git a/runtime/syntax/logtalk.vim b/runtime/syntax/logtalk.vim index a7fe9ce925..bc70ef41b4 100644 --- a/runtime/syntax/logtalk.vim +++ b/runtime/syntax/logtalk.vim @@ -330,7 +330,7 @@ syn match logtalkKeyword "\' "valid options for certain section headers diff --git a/runtime/syntax/sqlinformix.vim b/runtime/syntax/sqlinformix.vim index e01912bc40..71418c556f 100644 --- a/runtime/syntax/sqlinformix.vim +++ b/runtime/syntax/sqlinformix.vim @@ -162,7 +162,7 @@ hi def link sqlNumber Number hi def link sqlBoolean Boolean hi def link sqlString String -" === Statment syntax group === +" === Statement syntax group === hi def link sqlStatement Statement hi def link sqlConditional Conditional hi def link sqlRepeat Repeat diff --git a/runtime/syntax/sqlj.vim b/runtime/syntax/sqlj.vim index c901145c3c..fd0f8f3d76 100644 --- a/runtime/syntax/sqlj.vim +++ b/runtime/syntax/sqlj.vim @@ -16,7 +16,7 @@ endif " Read the Java syntax to start with source :p:h/java.vim -" SQLJ extentions +" SQLJ extensions " The SQL reserved words, defined as keywords. syn case ignore diff --git a/runtime/syntax/squid.vim b/runtime/syntax/squid.vim index a8abd180a0..186be91e61 100644 --- a/runtime/syntax/squid.vim +++ b/runtime/syntax/squid.vim @@ -31,7 +31,7 @@ syn keyword squidConf cache_effective_user cache_host cache_host_acl syn keyword squidConf cache_host_domain cache_log cache_mem syn keyword squidConf cache_mem_high cache_mem_low cache_mgr syn keyword squidConf cachemgr_passwd cache_peer cache_peer_access -syn keyword squidConf cahce_replacement_policy cache_stoplist +syn keyword squidConf cache_replacement_policy cache_stoplist syn keyword squidConf cache_stoplist_pattern cache_store_log cache_swap syn keyword squidConf cache_swap_high cache_swap_log cache_swap_low syn keyword squidConf client_db client_lifetime client_netmask diff --git a/runtime/syntax/tasm.vim b/runtime/syntax/tasm.vim index 1d6e570752..b8b5e6992b 100644 --- a/runtime/syntax/tasm.vim +++ b/runtime/syntax/tasm.vim @@ -1,6 +1,6 @@ " Vim syntax file " Language: TASM: turbo assembler by Borland -" Maintaner: FooLman of United Force +" Maintainer: FooLman of United Force " Last Change: 2012 Feb 03 by Thilo Six, and 2018 Nov 27. " quit when a syntax file was already loaded diff --git a/runtime/syntax/tf.vim b/runtime/syntax/tf.vim index 47775b8637..df6adcf819 100644 --- a/runtime/syntax/tf.vim +++ b/runtime/syntax/tf.vim @@ -27,7 +27,7 @@ syn keyword tfVar bamf bg_output borg clearfull cleardone clock connect contai syn keyword tfVar emulation end_color gag gethostbyname gpri hook hilite contained syn keyword tfVar hiliteattr histsize hpri insert isize istrip kecho contained syn keyword tfVar kprefix login lp lpquote maildelay matching max_iter contained -syn keyword tfVar max_recur mecho more mprefix oldslash promt_sec contained +syn keyword tfVar max_recur mecho more mprefix oldslash prompt_sec contained syn keyword tfVar prompt_usec proxy_host proxy_port ptime qecho qprefix contained syn keyword tfVar quite quitdone redef refreshtime scroll shpause snarf sockmload contained syn keyword tfVar start_color tabsize telopt sub time_format visual contained diff --git a/runtime/syntax/tsalt.vim b/runtime/syntax/tsalt.vim index 8dd2a24df9..6f74ad2eb3 100644 --- a/runtime/syntax/tsalt.vim +++ b/runtime/syntax/tsalt.vim @@ -83,11 +83,11 @@ syn keyword tsaltFunction vGetChrs vGetChrsA vPutChr vPutChrs syn keyword tsaltFunction vPutChrsA vRstrArea vSaveArea " Dynamic Data Exchange (DDE) Operations -syn keyword tsaltFunction DDEExecute DDEInitate DDEPoke DDERequest +syn keyword tsaltFunction DDEExecute DDEInitiate DDEPoke DDERequest syn keyword tsaltFunction DDETerminate DDETerminateAll "END FUNCTIONS -"PREDEFINED VARAIABLES +"PREDEFINED VARIABLES syn keyword tsaltSysVar _add_lf _alarm_on _answerback_str _asc_rcrtrans syn keyword tsaltSysVar _asc_remabort _asc_rlftrans _asc_scpacing syn keyword tsaltSysVar _asc_scrtrans _asc_secho _asc_slpacing @@ -106,7 +106,7 @@ syn keyword tsaltSysVar _scr_chk_key _script_dir _sound_on syn keyword tsaltSysVar _strip_high _swap_bs _telix_dir _up_dir syn keyword tsaltSysVar _usage_fname _zmodauto _zmod_rcrash syn keyword tsaltSysVar _zmod_scrash -"END PREDEFINED VARAIABLES +"END PREDEFINED VARIABLES "TYPE syn keyword tsaltType str int -- cgit From 3a876bd41b235065663c38b0d9f3bdc8868eebc4 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Sun, 27 Aug 2023 10:00:48 +0900 Subject: vim-patch:535b9e12d02f runtime(typescript): Fix highlighting symbols after number literal (vim/vim#12911) fixes vim/vim#12831 https://github.com/vim/vim/commit/535b9e12d02f5fef969fb680d579c586bd5f40db Co-authored-by: Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com> --- runtime/syntax/shared/typescriptcommon.vim | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/shared/typescriptcommon.vim b/runtime/syntax/shared/typescriptcommon.vim index cfa4e1433b..d06525115e 100644 --- a/runtime/syntax/shared/typescriptcommon.vim +++ b/runtime/syntax/shared/typescriptcommon.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: TypeScript and TypeScriptReact " Maintainer: Herrington Darkholme -" Last Change: 2023 Aug 13 +" Last Change: 2023 Aug 24 " Based On: Herrington Darkholme's yats.vim " Changes: See https://github.com/HerringtonDarkholme/yats.vim " Credits: See yats.vim on github @@ -149,7 +149,7 @@ syntax match typescriptNumber /\<0[bB][01][01_]*\>/ nextgroup=@typescript syntax match typescriptNumber /\<0[oO][0-7][0-7_]*\>/ nextgroup=@typescriptSymbols skipwhite skipempty syntax match typescriptNumber /\<0[xX][0-9a-fA-F][0-9a-fA-F_]*\>/ nextgroup=@typescriptSymbols skipwhite skipempty syntax match typescriptNumber /\<\%(\d[0-9_]*\%(\.\d[0-9_]*\)\=\|\.\d[0-9_]*\)\%([eE][+-]\=\d[0-9_]*\)\=\>/ - \ nextgroup=typescriptSymbols skipwhite skipempty + \ nextgroup=@typescriptSymbols skipwhite skipempty syntax region typescriptObjectLiteral matchgroup=typescriptBraces \ start=/{/ end=/}/ -- cgit From 2fad4c0b392bb9d7fbb742be1fd5d214683b8ebb Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Thu, 31 Aug 2023 08:21:25 +0200 Subject: vim-patch:1610528cc305 runtime(forth): Update syntax and ftplugin files (vim/vim#12976) https://github.com/vim/vim/commit/1610528cc3052103e368c4175b09db6f9a6c150c Co-authored-by: dkearns --- runtime/syntax/forth.vim | 571 +++++++++++++++++++++++++++++++---------------- 1 file changed, 380 insertions(+), 191 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/forth.vim b/runtime/syntax/forth.vim index fe98634079..252116a187 100644 --- a/runtime/syntax/forth.vim +++ b/runtime/syntax/forth.vim @@ -1,10 +1,20 @@ " Vim syntax file -" Language: FORTH -" Current Maintainer: Johan Kotlinski -" Previous Maintainer: Christian V. J. Br�ssow -" Last Change: 2023-01-12 -" Filenames: *.fs,*.ft -" URL: https://github.com/jkotlinski/forth.vim +" Language: Forth +" Maintainer: Johan Kotlinski +" Previous Maintainer: Christian V. J. Brüssow +" Last Change: 2023 Aug 13 +" Filenames: *.f,*.fs,*.ft,*.fth,*.4th +" URL: https://github.com/jkotlinski/forth.vim + +" Supports the Forth-2012 Standard. +" +" Removed words from the earlier Forth-79, Forth-83 and Forth-94 standards are +" also included. +" +" These have been organised according to the version in which they were +" initially included and the version in which they were removed (obsolescent +" status is ignored). Words with "experimental" or "uncontrolled" status are +" not included unless they were later standardised. " quit when a syntax file was already loaded if exists("b:current_syntax") @@ -15,19 +25,15 @@ let s:cpo_save = &cpo set cpo&vim " Synchronization method -syn sync ccomment -syn sync maxlines=200 +exe "syn sync minlines=" .. get(g:, "forth_minlines", 50) -" I use gforth, so I set this to case ignore syn case ignore -" Some special, non-FORTH keywords -syn keyword forthTodo contained TODO FIXME XXX - " Characters allowed in keywords " I don't know if 128-255 are allowed in ANS-FORTH -setlocal iskeyword=!,@,33-35,%,$,38-64,A-Z,91-96,a-z,123-126,128-255 +syn iskeyword 33-126,128-255 +" Space errors {{{1 " when wanted, highlight trailing white space if exists("forth_space_errors") if !exists("forth_no_trail_space_error") @@ -38,188 +44,369 @@ if exists("forth_space_errors") endif endif -" Keywords - -" basic mathematical and logical operators -syn keyword forthOperators + - * / MOD /MOD NEGATE ABS MIN MAX -syn keyword forthOperators AND OR XOR NOT LSHIFT RSHIFT INVERT 2* 2/ 1+ -syn keyword forthOperators 1- 2+ 2- 8* UNDER+ -syn keyword forthOperators M+ */ */MOD M* UM* M*/ UM/MOD FM/MOD SM/REM -syn keyword forthOperators D+ D- DNEGATE DABS DMIN DMAX D2* D2/ -syn keyword forthOperators F+ F- F* F/ FNEGATE FABS FMAX FMIN FLOOR FROUND -syn keyword forthOperators F** FSQRT FEXP FEXPM1 FLN FLNP1 FLOG FALOG FSIN -syn keyword forthOperators FCOS FSINCOS FTAN FASIN FACOS FATAN FATAN2 FSINH -syn keyword forthOperators FCOSH FTANH FASINH FACOSH FATANH F2* F2/ 1/F -syn keyword forthOperators F~REL F~ABS F~ -syn keyword forthOperators 0< 0<= 0<> 0= 0> 0>= < <= <> = > >= U< U<= -syn keyword forthOperators U> U>= D0< D0<= D0<> D0= D0> D0>= D< D<= D<> -syn keyword forthOperators D= D> D>= DU< DU<= DU> DU>= WITHIN ?NEGATE -syn keyword forthOperators ?DNEGATE TRUE FALSE - -" various words that take an input and do something with it -syn keyword forthFunction . U. .R U.R - -" stack manipulations -syn keyword forthStack DROP NIP DUP OVER TUCK SWAP ROT -ROT ?DUP PICK ROLL -syn keyword forthStack 2DROP 2NIP 2DUP 2OVER 2TUCK 2SWAP 2ROT 2-ROT -syn keyword forthStack 3DUP 4DUP 5DUP 3DROP 4DROP 5DROP 8DROP 4SWAP 4ROT -syn keyword forthStack 4-ROT 4TUCK 8SWAP 8DUP -syn keyword forthRStack >R R> R@ RDROP 2>R 2R> 2R@ 2RDROP -syn keyword forthRstack 4>R 4R> 4R@ 4RDROP -syn keyword forthFStack FDROP FNIP FDUP FOVER FTUCK FSWAP FROT - -" stack pointer manipulations -syn keyword forthSP SP@ SP! FP@ FP! RP@ RP! LP@ LP! DEPTH - -" address operations -syn keyword forthMemory @ ! +! C@ C! 2@ 2! F@ F! SF@ SF! DF@ DF! -syn keyword forthAdrArith CHARS CHAR+ CELLS CELL+ CELL ALIGN ALIGNED FLOATS -syn keyword forthAdrArith FLOAT+ FLOAT FALIGN FALIGNED SFLOATS SFLOAT+ -syn keyword forthAdrArith SFALIGN SFALIGNED DFLOATS DFLOAT+ DFALIGN DFALIGNED -syn keyword forthAdrArith MAXALIGN MAXALIGNED CFALIGN CFALIGNED -syn keyword forthAdrArith ADDRESS-UNIT-BITS ALLOT ALLOCATE HERE -syn keyword forthMemBlks MOVE ERASE CMOVE CMOVE> FILL BLANK UNUSED - -" conditionals -syn keyword forthCond IF ELSE ENDIF THEN CASE OF ENDOF ENDCASE ?DUP-IF -syn keyword forthCond ?DUP-0=-IF AHEAD CS-PICK CS-ROLL CATCH THROW WITHIN - -" iterations -syn keyword forthLoop BEGIN WHILE REPEAT UNTIL AGAIN -syn keyword forthLoop ?DO LOOP I J K +DO U+DO -DO U-DO DO +LOOP -LOOP -syn keyword forthLoop UNLOOP LEAVE ?LEAVE EXIT DONE FOR NEXT RECURSE - -" new words -syn match forthClassDef '\<:class\s*[^ \t]\+\>' -syn match forthObjectDef '\<:object\s*[^ \t]\+\>' -syn match forthColonDef '\<:m\?\s*[^ \t]\+\>' -syn keyword forthEndOfColonDef ; ;M ;m -syn keyword forthEndOfClassDef ;class -syn keyword forthEndOfObjectDef ;object -syn keyword forthDefine CONSTANT 2CONSTANT FCONSTANT VARIABLE 2VARIABLE -syn keyword forthDefine FVARIABLE CREATE USER VALUE TO DEFER IS IMMEDIATE -syn keyword forthDefine COMPILE-ONLY COMPILE RESTRICT INTERPRET POSTPONE EXECUTE -syn keyword forthDefine LITERAL CREATE-INTERPRET/COMPILE INTERPRETATION> -syn keyword forthDefine INT NAME?INT NAME>COMP -syn keyword forthDefine NAME>STRING STATE C; CVARIABLE BUFFER: MARKER -syn keyword forthDefine , 2, F, C, COMPILE, -syn match forthDefine "\[DEFINED]" -syn match forthDefine "\[UNDEFINED]" -syn match forthDefine "\[IF]" -syn match forthDefine "\[IFDEF]" -syn match forthDefine "\[IFUNDEF]" -syn match forthDefine "\[THEN]" -syn match forthDefine "\[ENDIF]" -syn match forthDefine "\[ELSE]" -syn match forthDefine "\[?DO]" -syn match forthDefine "\[DO]" -syn match forthDefine "\[LOOP]" -syn match forthDefine "\[+LOOP]" -syn match forthDefine "\[NEXT]" -syn match forthDefine "\[BEGIN]" -syn match forthDefine "\[UNTIL]" -syn match forthDefine "\[AGAIN]" -syn match forthDefine "\[WHILE]" -syn match forthDefine "\[REPEAT]" -syn match forthDefine "\[COMP']" -syn match forthDefine "'" -syn match forthDefine '\<\[\>' -syn match forthDefine "\[']" -syn match forthDefine '\[COMPILE]' -syn match forthDefine '\[CHAR]' - -" debugging -syn keyword forthDebug PRINTDEBUGDATA PRINTDEBUGLINE -syn match forthDebug "\<\~\~\>" - -" Assembler -syn keyword forthAssembler ASSEMBLER CODE END-CODE ;CODE FLUSH-ICACHE C, - -" basic character operations -syn keyword forthCharOps (.) CHAR EXPECT FIND WORD TYPE -TRAILING EMIT KEY -syn keyword forthCharOps KEY? TIB CR BL COUNT SPACE SPACES -" recognize 'char (' or '[char] (' correctly, so it doesn't +" Core words {{{1 + +" basic mathematical and logical operators {{{2 +syn keyword forthOperators * */ */MOD + - / /MOD 0< 0= 1+ 1- 2* 2/ < = > ABS +syn keyword forthOperators AND FM/MOD INVERT LSHIFT M* MAX MIN MOD NEGATE OR +syn keyword forthOperators RSHIFT SM/REM U< UM* UM/MOD XOR + " extension words +syn keyword forthOperators 0<> 0> <> U> WITHIN + " Forth-79 +syn keyword forthOperators U* U/ U/MOD + " Forth-79, Forth-83 +syn keyword forthOperators NOT + " Forth-83 +syn keyword forthOperators 2+ 2- + +" non-standard basic mathematical and logical operators +syn keyword forthOperators 0<= 0>= 8* <= >= ?DNEGATE ?NEGATE U<= U>= UNDER+ + +" various words that take an input and do something with it {{{2 +syn keyword forthFunction . U. + " extension words +syn keyword forthFunction .R U.R + +" stack manipulations {{{2 +syn keyword forthStack 2DROP 2DUP 2OVER 2SWAP >R ?DUP DROP DUP OVER R> R@ ROT +syn keyword forthStack SWAP + " extension words +syn keyword forthStack NIP PICK ROLL TUCK +syn keyword forthRStack 2>R 2R> 2R@ + +" non-standard stack manipulations +syn keyword forthStack -ROT 3DROP 3DUP 4-ROT 4DROP 4DUP 4ROT 4SWAP 4TUCK +syn keyword forthStack 5DROP 5DUP 8DROP 8DUP 8SWAP +syn keyword forthRStack 4>R 4R> 4R@ 4RDROP RDROP + +" stack pointer manipulations {{{2 +syn keyword forthSP DEPTH + +" non-standard stack pointer manipulations +syn keyword forthSP FP! FP@ LP! LP@ RP! RP@ SP! SP@ + +" address operations {{{2 +syn keyword forthMemory ! +! 2! 2@ @ C! C@ +syn keyword forthAdrArith ALIGN ALIGNED ALLOT CELL+ CELLS CHAR+ CHARS +syn keyword forthMemBlks FILL MOVE + " extension words +syn keyword forthMemBlks ERASE UNUSED + +" non-standard address operations +syn keyword forthAdrArith ADDRESS-UNIT-BITS CELL CFALIGN CFALIGNED FLOAT +syn keyword forthAdrArith MAXALIGN MAXALIGNED + +" conditionals {{{2 +syn keyword forthCond ELSE IF THEN + " extension words +syn keyword forthCond CASE ENDCASE ENDOF OF + +" non-standard conditionals +syn keyword forthCond ?DUP-0=-IF ?DUP-IF ENDIF + +" iterations {{{2 +syn keyword forthLoop +LOOP BEGIN DO EXIT I J LEAVE LOOP RECURSE REPEAT UNLOOP +syn keyword forthLoop UNTIL WHILE + " extension words +syn keyword forthLoop ?DO AGAIN + +" non-standard iterations +syn keyword forthLoop +DO -DO -LOOP ?LEAVE DONE FOR K NEXT U+DO U-DO + +" new words {{{2 +syn match forthColonDef "\<:\s*[^ \t]\+\>" +syn keyword forthEndOfColonDef ; +syn keyword forthDefine ' , C, CONSTANT CREATE DOES> EXECUTE IMMEDIATE LITERAL +syn keyword forthDefine POSTPONE STATE VARIABLE ] +syn match forthDefine "\<\[']\>" +syn match forthDefine "\<\[\>" + " extension words +syn keyword forthColonDef :NONAME +syn keyword forthDefine BUFFER: COMPILE, DEFER IS MARKER TO VALUE +syn match forthDefine "\<\[COMPILE]\>" + " Forth-79, Forth-83 +syn keyword forthDefine COMPILE + +" non-standard new words +syn match forthClassDef "\<:CLASS\s*[^ \t]\+\>" +syn keyword forthEndOfClassDef ;CLASS +syn match forthObjectDef "\<:OBJECT\s*[^ \t]\+\>" +syn keyword forthEndOfObjectDef ;OBJECT +syn match forthColonDef "\<:M\s*[^ \t]\+\>" +syn keyword forthEndOfColonDef ;M +syn keyword forthDefine 2, COMPILE-ONLY CREATE-INTERPRET/COMPILE +syn keyword forthDefine CVARIABLE F, FIND-NAME INTERPRET INTERPRETATION> +syn keyword forthDefine LASTXT NAME>COMP NAME>INT NAME?INT POSTPONE, RESTRICT +syn keyword forthDefine USER +syn match forthDefine "\<\[COMP']\>" + +" basic character operations {{{2 +syn keyword forthCharOps BL COUNT CR EMIT FIND KEY SPACE SPACES TYPE WORD +" recognize 'char (' or '[CHAR] (' correctly, so it doesn't " highlight everything after the paren as a comment till a closing ')' -syn match forthCharOps '\ #>> #S (NUMBER) (NUMBER?) CONVERT D>F -syn keyword forthConversion D>S DIGIT DPL F>D HLD HOLD NUMBER S>D SIGN >NUMBER -syn keyword forthConversion F>S S>F HOLDS - -" interpreter, wordbook, compiler -syn keyword forthForth (LOCAL) BYE COLD ABORT >BODY >NEXT >LINK CFA >VIEW HERE -syn keyword forthForth PAD WORDS VIEW VIEW> N>LINK NAME> LINK> L>NAME FORGET -syn keyword forthForth BODY> ASSERT( ASSERT0( ASSERT1( ASSERT2( ASSERT3( ) -syn keyword forthForth >IN ACCEPT ENVIRONMENT? EVALUATE QUIT SOURCE ACTION-OF -syn keyword forthForth DEFER! DEFER@ PARSE PARSE-NAME REFILL RESTORE-INPUT -syn keyword forthForth SAVE-INPUT SOURCE-ID -syn region forthForth start=+ABORT"\s+ skip=+\\"+ end=+"+ - -" vocabularies -syn keyword forthVocs ONLY FORTH ALSO ROOT SEAL VOCS ORDER CONTEXT #VOCS -syn keyword forthVocs VOCABULARY DEFINITIONS - -" File keywords -syn keyword forthFileMode R/O R/W W/O BIN -syn keyword forthFileWords OPEN-FILE CREATE-FILE CLOSE-FILE DELETE-FILE -syn keyword forthFileWords RENAME-FILE READ-FILE READ-LINE KEY-FILE -syn keyword forthFileWords KEY?-FILE WRITE-FILE WRITE-LINE EMIT-FILE -syn keyword forthFileWords FLUSH-FILE FILE-STATUS FILE-POSITION -syn keyword forthFileWords REPOSITION-FILE FILE-SIZE RESIZE-FILE -syn keyword forthFileWords SLURP-FILE SLURP-FID STDIN STDOUT STDERR -syn keyword forthFileWords INCLUDE-FILE INCLUDED REQUIRED -syn keyword forthBlocks OPEN-BLOCKS USE LOAD --> BLOCK-OFFSET -syn keyword forthBlocks GET-BLOCK-FID BLOCK-POSITION LIST SCR BLOCK -syn keyword forthBlocks BUFER EMPTY-BUFFERS EMPTY-BUFFER UPDATE UPDATED? -syn keyword forthBlocks SAVE-BUFFERS SAVE-BUFFER FLUSH THRU +LOAD +THRU -syn keyword forthBlocks BLOCK-INCLUDED BLK +syn match forthCharOps '\ #S <# >NUMBER HOLD S>D SIGN + " extension words +syn keyword forthConversion HOLDS + " Forth-79, Forth-83, Forth-93 +syn keyword forthConversion CONVERT + +" non-standard char-number conversion +syn keyword forthConversion #>> (NUMBER) (NUMBER?) <<# DIGIT DPL HLD NUMBER + +" interpreter, wordbook, compiler {{{2 +syn keyword forthForth >BODY >IN ACCEPT ENVIRONMENT? EVALUATE HERE QUIT SOURCE + " extension words +syn keyword forthForth ACTION-OF DEFER! DEFER@ PAD PARSE PARSE-NAME REFILL +syn keyword forthForth RESTORE-INPUT SAVE-INPUT SOURCE-ID + " Forth-79 +syn keyword forthForth 79-STANDARD + " Forth-83 +syn keyword forthForth MARK >RESOLVE ?BRANCH BRANCH FORTH-83 + " Forth-79, Forth-83, Forth-94 +syn keyword forthForth QUERY + " Forth-83, Forth-94 +syn keyword forthForth SPAN + +" non-standard interpreter, wordbook, compiler +syn keyword forthForth ) >LINK >NEXT >VIEW ASSERT( ASSERT0( ASSERT1( ASSERT2( +syn keyword forthForth ASSERT3( BODY> CFA COLD L>NAME LINK> N>LINK NAME> VIEW +syn keyword forthForth VIEW> + +" booleans {{{2 + " extension words +syn match forthBoolean "\<\%(TRUE\|FALSE\)\>" + +" numbers {{{2 +syn keyword forthMath BASE DECIMAL + " extension words +syn keyword forthMath HEX +syn match forthInteger '\<-\=\d\+\.\=\>' +syn match forthInteger '\<#-\=\d\+\.\=\>' +syn match forthInteger '\<\$-\=\x\+\.\=\>' +syn match forthInteger '\<%-\=[01]\+\.\=\>' + +" characters {{{2 +syn match forthCharacter "'\k'" + +" strings {{{2 + +" Words that end with " are assumed to start string parsing. +" This includes standard words: S" ." +syn region forthString matchgroup=forthString start=+\<\S\+"\s+ end=+"+ end=+$+ contains=@Spell + " extension words +syn region forthString matchgroup=forthString start=+\' -syn match forthInteger '\<&-\=[0-9]\+.\=\>' -syn match forthInteger '\<#-\=[0-9]\+.\=\>' -" recognize hex and binary numbers, the '$' and '%' notation is for gforth -syn match forthInteger '\<\$\x*\x\+\>' " *1* --- don't mess -syn match forthInteger '\<\x*\d\x*\>' " *2* --- this order! -syn match forthInteger '\<%[0-1]*[0-1]\+\>' -syn match forthFloat '\<-\=\d*[.]\=\d\+[DdEe]\d\+\>' -syn match forthFloat '\<-\=\d*[.]\=\d\+[DdEe][-+]\d\+\>' - -" XXX If you find this overkill you can remove it. this has to come after the -" highlighting for numbers otherwise it has no effect. -syn region forthComment start='0 \[if\]' end='\[endif\]' end='\[then\]' contains=forthTodo - -" Strings -syn region forthString start=+\.*\"+ end=+"+ end=+$+ contains=@Spell -" XXX -syn region forthString start=+s\"+ end=+"+ end=+$+ contains=@Spell -syn region forthString start=+s\\\"+ end=+"+ end=+$+ contains=@Spell -syn region forthString start=+c\"+ end=+"+ end=+$+ contains=@Spell - -" Comments -syn match forthComment '\\\%(\s.*\)\=$' contains=@Spell,forthTodo,forthSpaceError -syn region forthComment start='\\S\s' end='.*' contains=@Spell,forthTodo,forthSpaceError -syn match forthComment '\.(\s[^)]*)' contains=@Spell,forthTodo,forthSpaceError -syn region forthComment start='\(^\|\s\)\zs(\s' skip='\\)' end=')' contains=@Spell,forthTodo,forthSpaceError -syn region forthComment start='/\*' end='\*/' contains=@Spell,forthTodo,forthSpaceError - -" Include files -syn match forthInclude '^INCLUDE\s\+\k\+' -syn match forthInclude '^REQUIRE\s\+\k\+' +syn keyword forthTodo contained TODO FIXME XXX + +" Some special, non-FORTH keywords +syn match forthTodo contained "\<\%(TODO\|FIXME\|XXX\)\%(\>\|:\@=\)" + +" XXX If you find this overkill you can remove it. This has to come after the +" highlighting for numbers and booleans otherwise it has no effect. +syn region forthComment start='\<\%(0\|FALSE\)\s\+\[IF]' end='\<\[ENDIF]' end='\<\[THEN]' contains=forthTodo + +if get(g:, "forth_no_comment_fold", 0) + syn region forthComment start='\<(\>' end=')' contains=@Spell,forthTodo,forthSpaceError + " extension words + syn match forthComment '\<\\\>.*$' contains=@Spell,forthTodo,forthSpaceError +else + syn region forthComment start='\<(\>' end=')' contains=@Spell,forthTodo,forthSpaceError fold + " extension words + syn match forthComment '\<\\\>.*$' contains=@Spell,forthTodo,forthSpaceError + syn region forthMultilineComment start="^\s*\\\>" end="\n\%(\s*\\\>\)\@!" contains=forthComment transparent fold +endif + + " extension words +syn region forthComment start='\<\.(\>' end=')' end='$' contains=@Spell,forthTodo,forthSpaceError + +" ABORT {{{2 +syn keyword forthForth ABORT +syn region forthForth start=+\+ end=+$+ + +" The optional Block word set {{{1 +" Handled as Core words - REFILL +syn keyword forthBlocks BLK BLOCK BUFFER FLUSH LOAD SAVE-BUFFERS UPDATE + " extension words +syn keyword forthBlocks EMPTY-BUFFERS LIST SCR THRU + +" Non-standard Block words +syn keyword forthBlocks +LOAD +THRU --> BLOCK-INCLUDED BLOCK-OFFSET +syn keyword forthBlocks BLOCK-POSITION EMPTY-BUFFER GET-BLOCK-FID OPEN-BLOCKS +syn keyword forthBlocks SAVE-BUFFER UPDATED? USE + +" The optional Double-Number word set {{{1 +syn keyword forthConversion D>S +syn keyword forthDefine 2CONSTANT 2LITERAL 2VARIABLE +syn keyword forthFunction D. D.R +syn keyword forthOperators D+ D- D0= D2* D2/ D= DABS DMAX DMIN DNEGATE +syn keyword forthOperators D0< D< M+ M*/ + " extension words +syn keyword forthDefine 2VALUE +syn keyword forthOperators DU< +syn keyword forthStack 2ROT + +" Non-standard Double-Number words +syn keyword forthOperators D0<= D0<> D0> D0>= D<= D<> D> D>= DU<= DU> DU>= +syn keyword forthStack 2-ROT 2NIP 2RDROP 2TUCK + +" The optional Exception word set {{{1 +" Handled as Core words - ABORT ABORT" +syn keyword forthCond CATCH THROW + +" The optional Facility word set {{{1 +syn keyword forthCharOps AT-XY KEY? PAGE + " extension words +syn keyword forthCharOps EKEY EKEY>CHAR EKEY>FKEY EKEY? EMIT? K-ALT-MASK +syn keyword forthCharOps K-CTRL-MASK K-DELETE K-DOWN K-END K-F1 K-F10 K-F11 +syn keyword forthCharOps K-F12 K-F2 K-F3 K-F4 K-F5 K-F6 K-F7 K-F8 K-F9 K-HOME +syn keyword forthCharOps K-INSERT K-LEFT K-NEXT K-PRIOR K-RIGHT K-SHIFT-MASK +syn keyword forthCharOps K-UP +syn keyword forthDefine +FIELD BEGIN-STRUCTURE CFIELD: END-STRUCTURE FIELD: +syn keyword forthForth MS TIME&DATE + +" The optional File-Access word set {{{1 +" Handled as Core words - REFILL SOURCE-ID S\" S" ( +syn keyword forthFileMode BIN R/O R/W W/O +syn keyword forthFileWords CLOSE-FILE CREATE-FILE DELETE-FILE FILE-POSITION +syn keyword forthFileWords FILE-SIZE INCLUDE-FILE INCLUDED OPEN-FILE READ-FILE +syn keyword forthFileWords READ-LINE REPOSITION-FILE RESIZE-FILE WRITE-FILE +syn keyword forthFileWords WRITE-LINE + " extension words +syn keyword forthFileWords FILE-STATUS FLUSH-FILE RENAME-FILE REQUIRED +syn match forthInclude '\' + +syn keyword forthConversion >FLOAT D>F F>D +syn keyword forthAdrArith FALIGN FALIGNED FLOAT+ FLOATS +syn keyword forthDefine FCONSTANT FLITERAL FVARIABLE +syn keyword forthFStack FDROP FDUP FOVER FROT FSWAP +syn keyword forthFunction REPRESENT +syn keyword forthMemory F! F@ +syn keyword forthOperators F* F+ F- F/ F0< F0= F< FLOOR FMAX FMIN FNEGATE +syn keyword forthOperators FROUND +syn keyword forthSP FDEPTH + " extension words +syn keyword forthConversion F>S S>F +syn keyword forthAdrArith DFALIGN DFALIGNED DFLOAT+ DFLOATS SFALIGN +syn keyword forthAdrArith SFALIGNED SFLOAT+ SFLOATS +syn keyword forthDefine DFFIELD: FFIELD: FVALUE SFFIELD: +syn keyword forthFunction F. FE. FS. PRECISION SET-PRECISION +syn keyword forthMemory DF! DF@ SF! SF@ +syn keyword forthOperators F** FABS FACOS FACOSH FALOG FASIN FASINH FATAN +syn keyword forthOperators FATAN2 FATANH FCOS FCOSH FEXP FEXPM1 FLN FLNP1 +syn keyword forthOperators FLOG FSIN FSINCOS FSINH FSQRT FTAN FTANH FTRUNC F~ + +" Non-standard Floating-Point words +syn keyword forthOperators 1/F F2* F2/ F~ABS F~REL +syn keyword forthFStack FNIP FTUCK + +" The optional Locals word set {{{1 +syn keyword forthForth (LOCAL) + " extension words +syn region forthLocals start="\<{:\>" end="\<:}\>" +syn region forthLocals start="\" end="\<|\>" + +" Non-standard Locals words +syn region forthLocals start="\<{\>" end="\<}\>" + +" The optional Memory-Allocation word set {{{1 +syn keyword forthMemory ALLOCATE FREE RESIZE + +" The optional Programming-Tools wordset {{{1 +syn keyword forthDebug .S ? DUMP SEE WORDS + " extension words +syn keyword forthAssembler ;CODE ASSEMBLER CODE END-CODE +syn keyword forthCond AHEAD CS-PICK CS-ROLL +syn keyword forthDefine NAME>COMPILE NAME>INTERPRET NAME>STRING SYNONYM +syn keyword forthDefine TRAVERSE-WORDLIST +syn match forthDefine "\<\[DEFINED]\>" +syn match forthDefine "\<\[ELSE]\>" +syn match forthDefine "\<\[IF]\>" +syn match forthDefine "\<\[THEN]\>" +syn match forthDefine "\<\[UNDEFINED]\>" +syn keyword forthForth BYE FORGET +syn keyword forthStack N>R NR> +syn keyword forthVocs EDITOR + +" Non-standard Programming-Tools words +syn keyword forthAssembler FLUSH-ICACHE +syn keyword forthDebug PRINTDEBUGDATA PRINTDEBUGLINE +syn match forthDebug "\<\~\~\>" +syn match forthDefine "\<\[+LOOP]\>" +syn match forthDefine "\<\[?DO]\>" +syn match forthDefine "\<\[AGAIN]\>" +syn match forthDefine "\<\[BEGIN]\>" +syn match forthDefine "\<\[DO]\>" +syn match forthDefine "\<\[ENDIF]\>" +syn match forthDefine "\<\[IFDEF]\>" +syn match forthDefine "\<\[IFUNDEF]\>" +syn match forthDefine "\<\[LOOP]\>" +syn match forthDefine "\<\[NEXT]\>" +syn match forthDefine "\<\[REPEAT]\>" +syn match forthDefine "\<\[UNTIL]\>" +syn match forthDefine "\<\[WHILE]\>" + +" The optional Search-Order word set {{{1 +" Handled as Core words - FIND +syn keyword forthVocs DEFINITIONS FORTH-WORDLIST GET-CURRENT GET-ORDER +syn keyword forthVocs SEARCH-WORDLIST SET-CURRENT SET-ORDER WORDLIST + " extension words +syn keyword forthVocs ALSO FORTH ONLY ORDER PREVIOUS + " Forth-79, Forth-83 +syn keyword forthVocs CONTEXT CURRENT VOCABULARY + +" Non-standard Search-Order words +syn keyword forthVocs #VOCS ROOT SEAL VOCS + +" The optional String word set {{{1 +syn keyword forthFunction -TRAILING /STRING BLANK CMOVE CMOVE> COMPARE SEARCH +syn keyword forthFunction SLITERAL + " extension words +syn keyword forthFunction REPLACES SUBSTITUTE UNESCAPE + +" The optional Extended-Character word set {{{1 +" Handled as Core words - [CHAR] CHAR and PARSE +syn keyword forthAdrArith XCHAR+ +syn keyword forthCharOps X-SIZE XC-SIZE XEMIT XKEY XKEY? +syn keyword forthDefine XC, +syn keyword forthMemory XC!+ XC!+? XC@+ + " extension words +syn keyword forthAdrArith XCHAR- +X/STRING X\\STRING- +syn keyword forthCharOps EKEY>XCHAR X-WIDTH XC-WIDTH +syn keyword forthConversion XHOLD +syn keyword forthString -TRAILING-GARBAGE + +" Define the default highlighting {{{1 +hi def link forthBoolean Boolean +hi def link forthCharacter Character hi def link forthTodo Todo hi def link forthOperators Operator hi def link forthMath Number @@ -243,6 +430,7 @@ hi def link forthCharOps Character hi def link forthConversion String hi def link forthForth Statement hi def link forthVocs Statement +hi def link forthEscape Special hi def link forthString String hi def link forthComment Comment hi def link forthClassDef Define @@ -251,16 +439,17 @@ hi def link forthObjectDef Define hi def link forthEndOfObjectDef Define hi def link forthInclude Include hi def link forthLocals Type " nothing else uses type and locals must stand out -hi def link forthDeprecated Error " if you must, change to Type hi def link forthFileMode Function hi def link forthFunction Function hi def link forthFileWords Statement hi def link forthBlocks Statement hi def link forthSpaceError Error +"}}} let b:current_syntax = "forth" let &cpo = s:cpo_save unlet s:cpo_save -" vim:ts=8:sw=4:nocindent:smartindent: + +" vim:ts=8:sw=4:nocindent:smartindent:fdm=marker:tw=78 -- cgit From 61ccdb2db62481a38604426be530753ad2f9e7cb Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Sat, 2 Sep 2023 10:43:23 +0200 Subject: vim-patch:da16a1b471aa runtime(ruby): Update syntax, indent and ftplugin files While making changes to the ruby ftplugin, slightly change the exepath() conditional from patch 9.0.1833 and move it after the :cd invocation. closes: 12981 closes: 12994 https://github.com/vim/vim/commit/da16a1b471aa717f58909cc6531cb6dbbff14d22 Co-authored-by: Doug Kearns Co-authored-by: Tim Pope --- runtime/syntax/ruby.vim | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/ruby.vim b/runtime/syntax/ruby.vim index c951fcfe1d..e19d61a051 100644 --- a/runtime/syntax/ruby.vim +++ b/runtime/syntax/ruby.vim @@ -3,7 +3,7 @@ " Maintainer: Doug Kearns " URL: https://github.com/vim-ruby/vim-ruby " Release Coordinator: Doug Kearns -" Last Change: 2021 Nov 03 +" Last Change: 2023 Mar 16 " ---------------------------------------------------------------------------- " " Previous Maintainer: Mirko Nasato @@ -145,9 +145,9 @@ syn cluster rubyStringSpecial contains=rubyInterpolation,rubyStringEscape syn cluster rubyStringNotTop contains=@rubyStringSpecial,@rubyNestedBrackets,@rubySingleCharEscape " Regular Expression Metacharacters {{{1 -syn region rubyRegexpComment matchgroup=rubyRegexpSpecial start="(?#" skip="\\\\\|\\)" end=")" contained -syn region rubyRegexpParens matchgroup=rubyRegexpSpecial start="(\(?:\|?<\=[=!]\|?>\|?<[a-z_]\w*>\|?[imx]*-[imx]*:\=\|\%(?#\)\@!\)" skip="\\\\\|\\)" end=")" contained transparent contains=@rubyRegexpSpecial -syn region rubyRegexpBrackets matchgroup=rubyRegexpCharClass start="\[\^\=" skip="\\\\\|\\\]" end="\]" contained transparent contains=rubyRegexpBrackets,rubyStringEscape,rubyRegexpEscape,rubyRegexpCharClass,rubyRegexpIntersection oneline +syn region rubyRegexpComment matchgroup=rubyRegexpSpecial start="(?#" skip="\\\\\|\\)" end=")" contained +syn region rubyRegexpParens matchgroup=rubyRegexpSpecial start="(\%(?:\|?<\=[=!]\|?>\|?<[a-z_]\w*>\|?[imx]*-[imx]*:\=\|\%(?#\)\@!\)" skip="\\\\\|\\)" end=")" contained transparent contains=@rubyRegexpSpecial +syn region rubyRegexpBrackets matchgroup=rubyRegexpCharClass start="\[\^\=" skip="\\\\\|\\\]" end="\]" contained transparent contains=rubyRegexpBrackets,rubyStringEscape,rubyRegexpEscape,rubyRegexpCharClass,rubyRegexpIntersection oneline syn match rubyRegexpCharClass "\\[DdHhRSsWw]" contained display syn match rubyRegexpCharClass "\[:\^\=\%(alnum\|alpha\|ascii\|blank\|cntrl\|digit\|graph\|lower\|print\|punct\|space\|upper\|word\|xdigit\):\]" contained syn match rubyRegexpCharClass "\\[pP]{^\=.\{-}}" contained display @@ -346,7 +346,7 @@ syn cluster rubyDeclaration contains=rubyAliasDeclaration,rubyAliasDeclaration2, syn match rubyControl "\%#=1\<\%(break\|in\|next\|redo\|retry\|return\)\>" syn match rubyKeyword "\%#=1\<\%(super\|yield\)\>" syn match rubyBoolean "\%#=1\<\%(true\|false\)\>[?!]\@!" -syn match rubyPseudoVariable "\%#=1\<\(self\|nil\)\>[?!]\@!" +syn match rubyPseudoVariable "\%#=1\<\%(self\|nil\)\>[?!]\@!" syn match rubyPseudoVariable "\%#=1\<__\%(ENCODING\|dir\|FILE\|LINE\|callee\|method\)__\>" syn match rubyBeginEnd "\%#=1\<\%(BEGIN\|END\)\>" @@ -399,11 +399,6 @@ if !exists("b:ruby_no_expensive") && !exists("ruby_no_expensive") SynFold 'for' syn region rubyRepeatExpression start="\" start="\%(\%(^\|\.\.\.\=\|[{:,;([<>~\*/%&^|+=-]\|\%(\<\%(\h\|[^\x00-\x7F]\)\%(\w\|[^\x00-\x7F]\)*\)\@" matchgroup=rubyRepeat skip="\" nextgroup=rubyMethodDeclaration skipwhite skipnl syn match rubyControl "\" nextgroup=rubyClassDeclaration skipwhite skipnl @@ -412,13 +407,18 @@ else syn match rubyKeyword "\<\%(alias\|undef\)\>" endif +if !exists("ruby_minlines") + let ruby_minlines = 500 +endif +exe "syn sync minlines=" . ruby_minlines + " Special Methods {{{1 if !exists("ruby_no_special_methods") syn match rubyAccess "\<\%(public\|protected\|private\)\>" " use re=2 syn match rubyAccess "\%#=1\<\%(public\|private\)_class_method\>" syn match rubyAccess "\%#=1\<\%(public\|private\)_constant\>" syn match rubyAccess "\%#=1\" - syn match rubyAttribute "\%#=1\%(\%(^\|;\)\s*\)\@<=attr\>\(\s*[.=]\)\@!" " attr is a common variable name + syn match rubyAttribute "\%#=1\%(\%(^\|;\)\s*\)\@<=attr\>\%(\s*[.=]\)\@!" " attr is a common variable name syn match rubyAttribute "\%#=1\" syn match rubyControl "\%#=1\<\%(abort\|at_exit\|exit\|fork\|loop\|trap\)\>" syn match rubyEval "\%#=1\" @@ -435,8 +435,8 @@ syn match rubySharpBang "\%^#!.*" display syn keyword rubyTodo FIXME NOTE TODO OPTIMIZE HACK REVIEW XXX todo contained syn match rubyEncoding "[[:alnum:]-_]\+" contained display syn match rubyMagicComment "\c\%<3l#\s*\zs\%(coding\|encoding\):" contained nextgroup=rubyEncoding skipwhite -syn match rubyMagicComment "\c\%<10l#\s*\zs\%(frozen_string_literal\|warn_indent\|warn_past_scope\):" contained nextgroup=rubyBoolean skipwhite -syn match rubyMagicComment "\c\%<10l#\s*\zs\%(shareable_constant_value\):" contained nextgroup=rubyEncoding skipwhite +syn match rubyMagicComment "\c\%<10l#\s*\zs\%(frozen[-_]string[-_]literal\|warn[-_]indent\|warn[-_]past[-_]scope\):" contained nextgroup=rubyBoolean skipwhite +syn match rubyMagicComment "\c\%<10l#\s*\zs\%(shareable[-_]constant[-_]value\):" contained nextgroup=rubyEncoding skipwhite syn match rubyComment "#.*" contains=@rubyCommentSpecial,rubySpaceError,@Spell syn cluster rubyCommentSpecial contains=rubySharpBang,rubyTodo,rubyMagicComment -- cgit From f02bfb6a2a079fc223db9f941dc917aa06a45b09 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Sat, 2 Sep 2023 10:43:57 +0200 Subject: vim-patch:acb91d3905cf MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit runtime(zserio): add zserio syntax (vim/vim#13005) https://github.com/vim/vim/commit/acb91d3905cfef5eff8edfb76e62a6b6bab1e91e Co-authored-by: Dominique Pellé --- runtime/syntax/zserio.vim | 112 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 112 insertions(+) create mode 100644 runtime/syntax/zserio.vim (limited to 'runtime/syntax') diff --git a/runtime/syntax/zserio.vim b/runtime/syntax/zserio.vim new file mode 100644 index 0000000000..5459915c01 --- /dev/null +++ b/runtime/syntax/zserio.vim @@ -0,0 +1,112 @@ +" Vim syntax file +" Language: Zserio +" Maintainer: Dominique Pellé +" Last Change: 2023 Jun 18 +" +" Zserio is a serialization schema language for modeling binary +" data types, bitstreams or file formats. Based on the zserio +" language it is possible to automatically generate encoders and +" decoders for a given schema in various target languages +" (e.g. Java, C++, Python). +" +" Zserio is an evolution of the DataScript language. +" +" For more information, see: +" - http://zserio.org/ +" - https://github.com/ndsev/zserio + +" quit when a syntax file was already loaded +if exists("b:current_syntax") + finish +endif + +let s:keepcpo= &cpo +set cpo&vim + +syn case match + +syn keyword zserioPackage import package zserio_compatibility_version +syn keyword zserioType bit bool string +syn keyword zserioType int int8 int16 int32 int64 +syn keyword zserioType uint8 uint16 uint32 uint64 +syn keyword zserioType float16 float32 float64 +syn keyword zserioType varint varint16 varint32 varint64 +syn keyword zserioType varuint varsize varuint16 varuint32 varuint64 +syn keyword zserioAlign align +syn keyword zserioLabel case default +syn keyword zserioConditional if condition +syn keyword zserioBoolean true false +syn keyword zserioCompound struct union choice on enum bitmask subtype +syn keyword zserioKeyword function return +syn keyword zserioOperator lengthof valueof instanceof numbits isset +syn keyword zserioRpc service pubsub topic publish subscribe +syn keyword zserioRule rule_group rule +syn keyword zserioStorageClass const implicit packed instantiate +syn keyword zserioTodo contained TODO FIXME XXX +syn keyword zserioSql sql sql_table sql_database sql_virtual sql_without_rowid +syn keyword zserioSql explicit using + +" zserioCommentGroup allows adding matches for special things in comments. +syn cluster zserioCommentGroup contains=zserioTodo + +syn match zserioOffset display "^\s*[a-zA-Z_:\.][a-zA-Z0-9_:\.]*\s*:" + +syn match zserioNumber display "\<\d\+\>" +syn match zserioNumberHex display "\<0[xX]\x\+\>" +syn match zserioNumberBin display "\<[01]\+[bB]\>" contains=zserioBinaryB +syn match zserioBinaryB display contained "[bB]\>" +syn match zserioOctal display "\<0\o\+\>" contains=zserioOctalZero +syn match zserioOctalZero display contained "\<0" + +syn match zserioOctalError display "\<0\o*[89]\d*\>" + +syn match zserioCommentError display "\*/" +syn match zserioCommentStartError display "/\*"me=e-1 contained + +syn region zserioCommentL + \ start="//" skip="\\$" end="$" keepend + \ contains=@zserioCommentGroup,@Spell +syn region zserioComment + \ matchgroup=zserioCommentStart start="/\*" end="\*/" + \ contains=@zserioCommentGroup,zserioCommentStartError,@Spell extend + +syn region zserioString + \ start=+L\="+ skip=+\\\\\|\\"+ end=+"+ contains=@Spell + +syn sync ccomment zserioComment + +" Define the default highlighting. +hi def link zserioType Type +hi def link zserioEndian StorageClass +hi def link zserioStorageClass StorageClass +hi def link zserioAlign Label +hi def link zserioLabel Label +hi def link zserioOffset Label +hi def link zserioSql PreProc +hi def link zserioCompound Structure +hi def link zserioConditional Conditional +hi def link zserioBoolean Boolean +hi def link zserioKeyword Statement +hi def link zserioRpc Keyword +hi def link zserioRule Keyword +hi def link zserioString String +hi def link zserioNumber Number +hi def link zserioNumberBin Number +hi def link zserioBinaryB Special +hi def link zserioOctal Number +hi def link zserioOctalZero Special +hi def link zserioOctalError Error +hi def link zserioNumberHex Number +hi def link zserioTodo Todo +hi def link zserioOperator Operator +hi def link zserioPackage Include +hi def link zserioCommentError Error +hi def link zserioCommentStartError Error +hi def link zserioCommentStart zserioComment +hi def link zserioCommentL zserioComment +hi def link zserioComment Comment + +let b:current_syntax = "zserio" + +let &cpo = s:keepcpo +unlet s:keepcpo -- cgit From 294ded9cf26a1a1cab9071588e41bb3ce9474f18 Mon Sep 17 00:00:00 2001 From: Christian Clason Date: Fri, 8 Sep 2023 23:35:18 +0200 Subject: vim-patch:86cfb39030eb runtime(tohtml): Update TOhtml to version 9.0v2 (vim/vim#13050) Modified behavior: - Change default value of g:html_use_input_for_pc from "fallback" to "none". This means with default settings, only the standards-based method to make special text unselectable is used. The old method relying on unspecified browser behavior for tags is now only used if a user specifically enables it. - Officially deprecate g:use_xhtml option (in favor of g:html_use_xhtml) by issuing a warning message when used. Bugfixes: - Fix issue vim/vim#8547: LineNr and other special highlight groups did not get proper style rules defined when using "hi link". - Fix that diff filler was not properly added for deleted lines at the end of a buffer. Other: - Refactored function definitions from long lists of strings to use :let-heredoc variable assignment instead. - Corrected deprecated "." string concatenation operator to ".." operator in more places. https://github.com/vim/vim/commit/86cfb39030eb557e1a1c7804f9c147556ca5dbf1 Co-authored-by: fritzophrenic --- runtime/syntax/2html.vim | 663 ++++++++++++++++++++++++++--------------------- 1 file changed, 368 insertions(+), 295 deletions(-) (limited to 'runtime/syntax') diff --git a/runtime/syntax/2html.vim b/runtime/syntax/2html.vim index 9f43e91309..5fbdad90f3 100644 --- a/runtime/syntax/2html.vim +++ b/runtime/syntax/2html.vim @@ -1,6 +1,6 @@ " Vim syntax support file " Maintainer: Ben Fritz -" Last Change: 2023 Jan 01 +" Last Change: 2023 Sep 05 " " Additional contributors: " @@ -32,9 +32,9 @@ let s:end=line('$') " Font if exists("g:html_font") if type(g:html_font) == type([]) - let s:htmlfont = "'". join(g:html_font,"','") . "', monospace" + let s:htmlfont = "'".. join(g:html_font,"','") .. "', monospace" else - let s:htmlfont = "'". g:html_font . "', monospace" + let s:htmlfont = "'".. g:html_font .. "', monospace" endif else let s:htmlfont = "monospace" @@ -221,8 +221,8 @@ else endif " Find out the background and foreground color for use later -let s:fgc = s:HtmlColor(synIDattr(hlID("Normal"), "fg#", s:whatterm)) -let s:bgc = s:HtmlColor(synIDattr(hlID("Normal"), "bg#", s:whatterm)) +let s:fgc = s:HtmlColor(synIDattr(hlID("Normal")->synIDtrans(), "fg#", s:whatterm)) +let s:bgc = s:HtmlColor(synIDattr(hlID("Normal")->synIDtrans(), "bg#", s:whatterm)) if s:fgc == "" let s:fgc = ( &background == "dark" ? "#ffffff" : "#000000" ) endif @@ -234,41 +234,43 @@ if !s:settings.use_css " Return opening HTML tag for given highlight id function! s:HtmlOpening(id, extra_attrs) let a = "" - if synIDattr(a:id, "inverse") + let translated_ID = synIDtrans(a:id) + if synIDattr(translated_ID, "inverse") " For inverse, we always must set both colors (and exchange them) - let x = s:HtmlColor(synIDattr(a:id, "fg#", s:whatterm)) - let a = a . '' - let x = s:HtmlColor(synIDattr(a:id, "bg#", s:whatterm)) - let a = a . '' + let x = s:HtmlColor(synIDattr(translated_ID, "fg#", s:whatterm)) + let a = a .. '' + let x = s:HtmlColor(synIDattr(translated_ID, "bg#", s:whatterm)) + let a = a .. '' else - let x = s:HtmlColor(synIDattr(a:id, "bg#", s:whatterm)) + let x = s:HtmlColor(synIDattr(translated_ID, "bg#", s:whatterm)) if x != "" - let a = a . '' + let a = a .. '' elseif !empty(a:extra_attrs) - let a = a . '' + let a = a .. '' endif - let x = s:HtmlColor(synIDattr(a:id, "fg#", s:whatterm)) - if x != "" | let a = a . '' | endif + let x = s:HtmlColor(synIDattr(translated_ID, "fg#", s:whatterm)) + if x != "" | let a = a .. '' | endif endif - if synIDattr(a:id, "bold") | let a = a . "" | endif - if synIDattr(a:id, "italic") | let a = a . "" | endif - if synIDattr(a:id, "underline") | let a = a . "" | endif + if synIDattr(translated_ID, "bold") | let a = a .. "" | endif + if synIDattr(translated_ID, "italic") | let a = a .. "" | endif + if synIDattr(translated_ID, "underline") | let a = a .. "" | endif return a endfun " Return closing HTML tag for given highlight id function! s:HtmlClosing(id, has_extra_attrs) let a = "" - if synIDattr(a:id, "underline") | let a = a . "" | endif - if synIDattr(a:id, "italic") | let a = a . "" | endif - if synIDattr(a:id, "bold") | let a = a . "" | endif - if synIDattr(a:id, "inverse") - let a = a . '' + let translated_ID = synIDtrans(a:id) + if synIDattr(translated_ID, "underline") | let a = a .. "" | endif + if synIDattr(translated_ID, "italic") | let a = a .. "" | endif + if synIDattr(translated_ID, "bold") | let a = a .. "" | endif + if synIDattr(translated_ID, "inverse") + let a = a .. '' else - let x = s:HtmlColor(synIDattr(a:id, "fg#", s:whatterm)) - if x != "" | let a = a . '' | endif - let x = s:HtmlColor(synIDattr(a:id, "bg#", s:whatterm)) - if x != "" || a:has_extra_attrs | let a = a . '' | endif + let x = s:HtmlColor(synIDattr(translated_ID, "fg#", s:whatterm)) + if x != "" | let a = a .. '' | endif + let x = s:HtmlColor(synIDattr(translated_ID, "bg#", s:whatterm)) + if x != "" || a:has_extra_attrs | let a = a .. '' | endif endif return a endfun @@ -286,84 +288,102 @@ if s:settings.use_css " save CSS to a list of rules to add to the output at the end of processing " first, get the style names we need - let wrapperfunc_lines = [ - \ 'function! s:BuildStyleWrapper(style_id, diff_style_id, extra_attrs, text, make_unselectable, unformatted)', - \ '', - \ ' let l:style_name = synIDattr(a:style_id, "name", s:whatterm)' - \ ] + let s:wrapperfunc_lines = [] + call add(s:wrapperfunc_lines, []) + let s:wrapperfunc_lines[-1] =<< trim ENDLET + function! s:BuildStyleWrapper(style_id, diff_style_id, extra_attrs, text, make_unselectable, unformatted) + + let l:style_name = synIDattr(a:style_id, "name", s:whatterm) + ENDLET if &diff - let wrapperfunc_lines += [ - \ ' let l:diff_style_name = synIDattr(a:diff_style_id, "name", s:whatterm)'] - - " Add normal groups and diff groups to separate lists so we can order them to - " allow diff highlight to override normal highlight - - " if primary style IS a diff style, grab it from the diff cache instead - " (always succeeds because we pre-populate it) - let wrapperfunc_lines += [ - \ '', - \ ' if a:style_id == s:DIFF_D_ID || a:style_id == s:DIFF_A_ID ||'. - \ ' a:style_id == s:DIFF_C_ID || a:style_id == s:DIFF_T_ID', - \ ' let l:saved_style = get(s:diffstylelist,a:style_id)', - \ ' else' - \ ] + call add(s:wrapperfunc_lines, []) + let s:wrapperfunc_lines[-1] =<< trim ENDLET + let l:diff_style_name = synIDattr(a:diff_style_id, "name", s:whatterm) + ENDLET + + " Add normal groups and diff groups to separate lists so we can order them to + " allow diff highlight to override normal highlight + + " if primary style IS a diff style, grab it from the diff cache instead + " (always succeeds because we pre-populate it) + call add(s:wrapperfunc_lines, []) + let s:wrapperfunc_lines[-1] =<< trim ENDLET + + if a:style_id == s:DIFF_D_ID || a:style_id == s:DIFF_A_ID || a:style_id == s:DIFF_C_ID || a:style_id == s:DIFF_T_ID + let l:saved_style = get(s:diffstylelist,a:style_id) + else + ENDLET endif " get primary style info from cache or build it on the fly if not found - let wrapperfunc_lines += [ - \ ' let l:saved_style = get(s:stylelist,a:style_id)', - \ ' if type(l:saved_style) == type(0)', - \ ' unlet l:saved_style', - \ ' let l:saved_style = s:CSS1(a:style_id)', - \ ' if l:saved_style != ""', - \ ' let l:saved_style = "." . l:style_name . " { " . l:saved_style . "}"', - \ ' endif', - \ ' let s:stylelist[a:style_id]= l:saved_style', - \ ' endif' - \ ] + call add(s:wrapperfunc_lines, []) + let s:wrapperfunc_lines[-1] =<< trim ENDLET + let l:saved_style = get(s:stylelist,a:style_id) + if type(l:saved_style) == type(0) + unlet l:saved_style + let l:saved_style = s:CSS1(a:style_id) + if l:saved_style != "" + let l:saved_style = "." .. l:style_name .. " { " .. l:saved_style .. "}" + endif + let s:stylelist[a:style_id] = l:saved_style + endif + ENDLET if &diff - let wrapperfunc_lines += [ ' endif' ] + call add(s:wrapperfunc_lines, []) + let s:wrapperfunc_lines[-1] =<< trim ENDLET + endif + ENDLET endif +" Ignore this comment, just bypassing a highlighting issue: if " Build the wrapper tags around the text. It turns out that caching these " gives pretty much zero performance gain and adds a lot of logic. - let wrapperfunc_lines += [ - \ '', - \ ' if l:saved_style == "" && empty(a:extra_attrs)' - \ ] + call add(s:wrapperfunc_lines, []) + let s:wrapperfunc_lines[-1] =<< trim ENDLET + + if l:saved_style == "" && empty(a:extra_attrs) + ENDLET if &diff - let wrapperfunc_lines += [ - \ ' if a:diff_style_id <= 0' - \ ] + call add(s:wrapperfunc_lines, []) + let s:wrapperfunc_lines[-1] =<< trim ENDLET + if a:diff_style_id <= 0 + ENDLET endif " no surroundings if neither primary nor diff style has any info - let wrapperfunc_lines += [ - \ ' return a:text' - \ ] + call add(s:wrapperfunc_lines, []) + let s:wrapperfunc_lines[-1] =<< trim ENDLET + return a:text + ENDLET if &diff " no primary style, but diff style - let wrapperfunc_lines += [ - \ ' else', - \ ' return "".a:text.""', - \ ' endif' - \ ] + call add(s:wrapperfunc_lines, []) + let s:wrapperfunc_lines[-1] =<< trim ENDLET + else + return ''..a:text.."" + endif + ENDLET endif + " Ignore this comment, just bypassing a highlighting issue: if + " open tag for non-empty primary style - let wrapperfunc_lines += [ - \ ' else'] + call add(s:wrapperfunc_lines, []) + let s:wrapperfunc_lines[-1] =<< trim ENDLET + else + ENDLET " non-empty primary style. handle either empty or non-empty diff style. " " separate the two classes by a space to apply them both if there is a diff " style name, unless the primary style is empty, then just use the diff style " name - let diffstyle = - \ (&diff ? '(a:diff_style_id <= 0 ? "" : " ". l:diff_style_name) .' - \ : "") + let s:diffstyle = + \ (&diff ? '(a:diff_style_id <= 0 ? "" : " " .. l:diff_style_name)..' + \ : '') if s:settings.prevent_copy == "" - let wrapperfunc_lines += [ - \ ' return "".a:text.""' - \ ] + call add(s:wrapperfunc_lines, []) + let s:wrapperfunc_lines[-1] =<< trim eval ENDLET + return "'..a:text.."" + ENDLET else " New method: use generated content in the CSS. The only thing needed here @@ -388,59 +408,76 @@ if s:settings.use_css " Note, if maxlength property needs to be added in the future, it will need " to use strchars(), because HTML specifies that the maxlength parameter " uses the number of unique codepoints for its limit. - let wrapperfunc_lines += [ - \ ' if a:make_unselectable', - \ ' return "' + call add(s:wrapperfunc_lines, []) + let s:wrapperfunc_lines[-1] =<< trim eval ENDLET + let return_span ..= '' : '>') + ENDLET endif - let wrapperfunc_lines[-1] .= '"' - let wrapperfunc_lines += [ - \ ' else', - \ ' return "".a:text.""' - \ ] + call add(s:wrapperfunc_lines, []) + let s:wrapperfunc_lines[-1] =<< trim eval ENDLET + return return_span..'' + else + return "'..a:text.."" + endif + ENDLET endif - let wrapperfunc_lines += [ - \ ' endif', - \ 'endfun' - \ ] + call add(s:wrapperfunc_lines, []) + let s:wrapperfunc_lines[-1] =<< trim ENDLET + endif + endfun + ENDLET else " Non-CSS method just needs the wrapper. " " Functions used to get opening/closing automatically return null strings if " no styles exist. if &diff - let wrapperfunc_lines = [ - \ 'function! s:BuildStyleWrapper(style_id, diff_style_id, extra_attrs, text, unusedarg, unusedarg2)', - \ ' return s:HtmlOpening(a:style_id, a:extra_attrs).(a:diff_style_id <= 0 ? "" :'. - \ 's:HtmlOpening(a:diff_style_id, "")).a:text.'. - \ '(a:diff_style_id <= 0 ? "" : s:HtmlClosing(a:diff_style_id, 0)).s:HtmlClosing(a:style_id, !empty(a:extra_attrs))', - \ 'endfun' - \ ] + let s:wrapperfunc_lines =<< trim ENDLET + function! s:BuildStyleWrapper(style_id, diff_style_id, extra_attrs, text, unusedarg, unusedarg2) + if a:diff_style_id <= 0 + let l:diff_opening = s:HtmlOpening(a:diff_style_id, "") + let l:diff_closing = s:HtmlClosing(a:diff_style_id, 0) + else + let l:diff_opening = "" + let l:diff_closing = "" + endif + return s:HtmlOpening(a:style_id, a:extra_attrs)..l:diff_opening..a:text..l:diff_closing..s:HtmlClosing(a:style_id, !empty(a:extra_attrs)) + endfun + ENDLET else - let wrapperfunc_lines = [ - \ 'function! s:BuildStyleWrapper(style_id, diff_style_id, extra_attrs, text, unusedarg, unusedarg2)', - \ ' return s:HtmlOpening(a:style_id, a:extra_attrs).a:text.s:HtmlClosing(a:style_id, !empty(a:extra_attrs))', - \ 'endfun' - \ ] + let s:wrapperfunc_lines =<< trim ENDLET + function! s:BuildStyleWrapper(style_id, diff_style_id, extra_attrs, text, unusedarg, unusedarg2) + return s:HtmlOpening(a:style_id, a:extra_attrs)..a:text..s:HtmlClosing(a:style_id, !empty(a:extra_attrs)) + endfun + ENDLET endif endif " create the function we built line by line above -exec join(wrapperfunc_lines, "\n") +exec join(flatten(s:wrapperfunc_lines), "\n") let s:diff_mode = &diff @@ -471,7 +508,7 @@ function! s:HtmlFormat(text, style_id, diff_style_id, extra_attrs, make_unselect " Replace double spaces, leading spaces, and trailing spaces if needed if ' ' != s:HtmlSpace - let formatted = substitute(formatted, ' ', s:HtmlSpace . s:HtmlSpace, 'g') + let formatted = substitute(formatted, ' ', s:HtmlSpace .. s:HtmlSpace, 'g') let formatted = substitute(formatted, '^ ', s:HtmlSpace, 'g') let formatted = substitute(formatted, ' \+$', s:HtmlSpace, 'g') endif @@ -487,7 +524,7 @@ if s:settings.prevent_copy =~# 'n' if s:settings.line_ids function! s:HtmlFormat_n(text, style_id, diff_style_id, lnr) if a:lnr > 0 - return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, 'id="'.(exists('g:html_diff_win_num') ? 'W'.g:html_diff_win_num : "").'L'.a:lnr.s:settings.id_suffix.'" ', 1) + return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, 'id="'..(exists('g:html_diff_win_num') ? 'W'..g:html_diff_win_num : "")..'L'..a:lnr..s:settings.id_suffix..'" ', 1) else return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, "", 1) endif @@ -503,14 +540,14 @@ if s:settings.prevent_copy =~# 'n' " always be non-zero, however we don't want to use the because that " won't work as nice for empty text function! s:HtmlFormat_n(text, style_id, diff_style_id, lnr) - return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, 'id="'.(exists('g:html_diff_win_num') ? 'W'.g:html_diff_win_num : "").'L'.a:lnr.s:settings.id_suffix.'" ', 0) + return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, 'id="'..(exists('g:html_diff_win_num') ? 'W'..g:html_diff_win_num : "")..'L'..a:lnr..s:settings.id_suffix..'" ', 0) endfun endif else if s:settings.line_ids function! s:HtmlFormat_n(text, style_id, diff_style_id, lnr) if a:lnr > 0 - return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, 'id="'.(exists('g:html_diff_win_num') ? 'W'.g:html_diff_win_num : "").'L'.a:lnr.s:settings.id_suffix.'" ', 0) + return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, 'id="'..(exists('g:html_diff_win_num') ? 'W'..g:html_diff_win_num : "")..'L'..a:lnr..s:settings.id_suffix..'" ', 0) else return s:HtmlFormat(a:text, a:style_id, a:diff_style_id, "", 0) endif @@ -535,8 +572,8 @@ if s:settings.prevent_copy =~# 'f' " Simply space-pad to the desired width inside the generated content (note " that the FoldColumn definition includes a whitespace:pre rule) function! s:FoldColumn_build(char, len, numfill, char2, class, click) - return "" endfun function! s:FoldColumn_fill() @@ -554,35 +591,38 @@ if s:settings.prevent_copy =~# 'f' " " Note, 'exec' commands do not recognize line continuations, so must " concatenate lines rather than continue them. - let build_fun_lines = [ - \ 'function! s:FoldColumn_build(char, len, numfill, char2, class, click)', - \ ' let l:input_open = "" : "''>")' - \ ] + let s:build_fun_lines = [] + call add(s:build_fun_lines, []) + let s:build_fun_lines[-1] =<< trim ENDLET + function! s:FoldColumn_build(char, len, numfill, char2, class, click) + let l:input_open = "" : "'>") + let l:return_span = "" + let l:return_span ..= l:input_open..l:common_attrs..repeat(a:char, a:len)..(a:char2) + let l:return_span ..= l:input_close + ENDLET if s:settings.use_input_for_pc ==# 'fallback' - let build_fun_lines += [ - \ ' let l:gen_content_link ='. - \ ' ""' - \ ] + call add(s:build_fun_lines, []) + let s:build_fun_lines[-1] =<< trim ENDLET + let l:return_span ..= "".'. - \ ' l:input_open.l:common_attrs.repeat(a:char, a:len).(a:char2).'. - \ ' l:input_close.'. - \ (s:settings.use_input_for_pc ==# 'fallback' ? 'l:gen_content_link.' : ""). - \ ' ""', - \ 'endfun' - \ ] + call add(s:build_fun_lines, []) + let s:build_fun_lines[-1] =<< trim ENDLET + let l:return_span ..= "" + return l:return_span + endfun + ENDLET " create the function we built line by line above - exec join(build_fun_lines, "\n") + exec join(flatten(s:build_fun_lines), "\n") function! s:FoldColumn_fill() return s:FoldColumn_build(' ', s:foldcolumn, 0, '', 'FoldColumn', '') @@ -592,8 +632,8 @@ else " For normal fold columns, simply space-pad to the desired width (note that " the FoldColumn definition includes a whitespace:pre rule) function! s:FoldColumn_build(char, len, numfill, char2, class, click) - return "". - \ repeat(a:char, a:len).a:char2.repeat(' ', a:numfill). + return "". + \ repeat(a:char, a:len)..a:char2..repeat(' ', a:numfill). \ "" endfun function! s:FoldColumn_fill() @@ -625,29 +665,30 @@ endif " Return CSS style describing given highlight id (can be empty) function! s:CSS1(id) let a = "" - if synIDattr(a:id, "inverse") + let translated_ID = synIDtrans(a:id) + if synIDattr(translated_ID, "inverse") " For inverse, we always must set both colors (and exchange them) - let x = s:HtmlColor(synIDattr(a:id, "bg#", s:whatterm)) - let a = a . "color: " . ( x != "" ? x : s:bgc ) . "; " - let x = s:HtmlColor(synIDattr(a:id, "fg#", s:whatterm)) - let a = a . "background-color: " . ( x != "" ? x : s:fgc ) . "; " + let x = s:HtmlColor(synIDattr(translated_ID, "bg#", s:whatterm)) + let a = a .. "color: " .. ( x != "" ? x : s:bgc ) .. "; " + let x = s:HtmlColor(synIDattr(translated_ID, "fg#", s:whatterm)) + let a = a .. "background-color: " .. ( x != "" ? x : s:fgc ) .. "; " else - let x = s:HtmlColor(synIDattr(a:id, "fg#", s:whatterm)) - if x != "" | let a = a . "color: " . x . "; " | endif - let x = s:HtmlColor(synIDattr(a:id, "bg#", s:whatterm)) + let x = s:HtmlColor(synIDattr(translated_ID, "fg#", s:whatterm)) + if x != "" | let a = a .. "color: " .. x .. "; " | endif + let x = s:HtmlColor(synIDattr(translated_ID, "bg#", s:whatterm)) if x != "" - let a = a . "background-color: " . x . "; " + let a = a .. "background-color: " .. x .. "; " " stupid hack because almost every browser seems to have at least one font " which shows 1px gaps between lines which have background - let a = a . "padding-bottom: 1px; " - elseif (a:id == s:FOLDED_ID || a:id == s:LINENR_ID || a:id == s:FOLD_C_ID) && !empty(s:settings.prevent_copy) + let a = a .. "padding-bottom: 1px; " + elseif (translated_ID == s:FOLDED_ID || translated_ID == s:LINENR_ID || translated_ID == s:FOLD_C_ID) && !empty(s:settings.prevent_copy) " input elements default to a different color than the rest of the page - let a = a . "background-color: " . s:bgc . "; " + let a = a .. "background-color: " .. s:bgc .. "; " endif endif - if synIDattr(a:id, "bold") | let a = a . "font-weight: bold; " | endif - if synIDattr(a:id, "italic") | let a = a . "font-style: italic; " | endif - if synIDattr(a:id, "underline") | let a = a . "text-decoration: underline; " | endif + if synIDattr(translated_ID, "bold") | let a = a .. "font-weight: bold; " | endif + if synIDattr(translated_ID, "italic") | let a = a .. "font-style: italic; " | endif + if synIDattr(translated_ID, "underline") | let a = a .. "text-decoration: underline; " | endif return a endfun @@ -720,7 +761,7 @@ if exists("g:loaded_2html_plugin") let s:pluginversion = g:loaded_2html_plugin else if !exists("g:unloaded_tohtml_plugin") - let s:main_plugin_path = expand(":p:h:h")."/plugin/tohtml.vim" + let s:main_plugin_path = expand(":p:h:h").."/plugin/tohtml.vim" if filereadable(s:main_plugin_path) let s:lines = readfile(s:main_plugin_path, "", 20) call filter(s:lines, 'v:val =~ "loaded_2html_plugin = "') @@ -743,12 +784,12 @@ let s:orgbufnr = winbufnr(0) let s:origwin_stl = &l:stl if expand("%") == "" if exists('g:html_diff_win_num') - exec 'new Untitled_win'.g:html_diff_win_num.'.'.(s:settings.use_xhtml ? 'x' : '').'html' + exec 'new Untitled_win'..g:html_diff_win_num..'.'.(s:settings.use_xhtml ? 'xhtml' : 'html') else - exec 'new Untitled.'.(s:settings.use_xhtml ? 'x' : '').'html' + exec 'new Untitled.'..(s:settings.use_xhtml ? 'xhtml' : 'html') endif else - exec 'new %.'.(s:settings.use_xhtml ? 'x' : '').'html' + exec 'new %.'..(s:settings.use_xhtml ? 'xhtml' : 'html') endif " Resize the new window to very small in order to make it draw faster @@ -795,7 +836,7 @@ let s:lines = [] if s:settings.use_xhtml if s:settings.encoding != "" - call add(s:lines, "") + call add(s:lines, "") else call add(s:lines, "") endif @@ -808,9 +849,9 @@ let s:HtmlSpace = ' ' let s:LeadingSpace = ' ' let s:HtmlEndline = '' if s:settings.no_pre - let s:HtmlEndline = '".expand("%:p:~").""), - \ (""..expand("%:p:~")..""), + \ ("", + \ "", \ s:settings.use_xhtml ? "" : "