1162 Commits

Author SHA1 Message Date
zeertzjq f39f6f72a7 vim-patch:1903020: runtime(autopkgtest): update syntax script (#39616)
Fix some typos, and move a deprecated keyword where it belongs

closes: vim/vim#20141

https://github.com/vim/vim/commit/1903020b82eb49c26c8f83ad29f7f2d1d317a81e

Co-authored-by: Arnaud Rebillout <elboulangero@gmail.com>
2026-05-06 08:19:16 +08:00
zeertzjq 41146f9972 vim-patch:e4413c5: runtime(algol68): Update syntax file, match symbolic identity relators (#39551)
closes: vim/vim#20109

https://github.com/vim/vim/commit/e4413c5df76d353251be53edfbd7718ff18dc36b

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2026-05-02 10:52:18 +08:00
zeertzjq 858cd3d106 vim-patch:7da90de: runtime(cabal): add missing haskell language editions (#39533)
closes: vim/vim#20097

https://github.com/vim/vim/commit/7da90de1cb6df8f2dcbab97d3c7b8b83fa0de13d

Co-authored-by: Léana 江 <leana.jiang+git@icloud.com>
2026-04-30 23:36:00 +00:00
zeertzjq 4ba8e05dae vim-patch:c5de823: runtime(qml): Add optional chaining to QML syntax (#39494)
"obj?.prop" was wrongly parsed as ternary operator.

closes: vim/vim#19988

https://github.com/vim/vim/commit/c5de8231f436d47ca5daf4f4d5d91c55632f52ce

Co-authored-by: ii14 <ii14@users.noreply.github.com>
2026-04-29 06:16:06 +00:00
zeertzjq 9505dfb9ed vim-patch:076366b: runtime(javascript): Fix regex highlighting after (
- Fix regex highlighting after opening parens, javascriptParens was
  matching later.  Fixes issue vim/vim#20069.
- Add missing regex flags.
- Mark the file as unmaintained.  Thanks Claudio for all your work.

closes: vim/vim#20076

https://github.com/vim/vim/commit/076366bd4e8b89e722efc72a1b62d5b3d2ba62e0

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2026-04-27 06:21:25 +08:00
zeertzjq f0ad84366a vim-patch:3cc7d50: runtime(algol68): Add new syntax file, ftplugin and filetype detection
- Add a syntax file update to Neville Dempsey's long-serving version
- Add a new rudimentary ftplugin
- Add filetype detection

Changes to the syntax file include:
- improved prelude, number and symbol highlighting
- prelude highlighting tests
- updated boiler plate

Note that these runtime files currently target Algol 68 Genie employing
the default UPPER stropping regime.  Support for GNU Algol 68 should
also be usable with the UPPER stropping regime, although somewhat less
complete.  Full support for the SUPPER stropping regime in GNU Algol 68
is also planned.

closes: vim/vim#19818

https://github.com/vim/vim/commit/3cc7d5071619f30bba2ae4ccfa992dccb8fd5e51

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2026-04-27 06:21:25 +08:00
zeertzjq 736b28630e vim-patch:1ce03d6: runtime(dockerfile): Update syntax, fix RUN command highlighting
Allow for docker comments to be interspersed in a multiline (continued)
RUN command argument.

fixes:  vim/vim#8364
closes: vim/vim#19829

https://github.com/vim/vim/commit/1ce03d674a5a91f62769a6dcc2f9b8f249b90761

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2026-04-27 06:21:25 +08:00
zeertzjq 9593ca249e vim-patch:10040bc: runtime(sh): allow "#" in special derefs
Code like ${!#} flags the "#" as shDerefWordError [1]; the "!prefix"
syntax region delegates to one of the shDerefSpecial handlers via
@shDerefList, but it misses the "#" case as valid for ${##} and ${!#}.

[1]: https://vi.stackexchange.com/q/48617/10604

Correct that. Indirection is only valid in Bash in Ksh, so rearrange the
"!" handling to be conditional.

closes: vim/vim#20016

Helped-by: Christian Brabandt <cb@256bit.org>

https://github.com/vim/vim/commit/10040bc9cde340c52b5093cacb1d60fd2e621883

Co-authored-by: D. Ben Knoble <ben.knoble+github@gmail.com>
2026-04-22 09:44:53 +08:00
zeertzjq f0facb8fa4 vim-patch:16d2854: runtime(graphql): Update syntax script to September 2025 spec
A new graphqlEscape syntax graph has been introduced to represent escape
sequences within strings, including the braced unicode form (\u{H+})
added in the September 2025 specification.

See: https://spec.graphql.org/September2025/

closes: vim/vim#20030

https://github.com/vim/vim/commit/16d28548d2d3c49733750b6ab7a50bc05ab65e0c

Co-authored-by: Jon Parise <jon@indelible.org>
2026-04-22 09:44:53 +08:00
zeertzjq 7d3e275b07 vim-patch:1c88aee: runtime: Remove wrong syn oneline keyword from a few syntax files (#39266)
Also:
- drop a few trailing whitespaces
- mark the oneline keyword for :syn keyword as error in the
  Vim syntax script, add tests for it.

closes: vim/vim#20018

https://github.com/vim/vim/commit/1c88aee1fa720aea07e133f32645914dcddd3435

Co-authored-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
2026-04-21 10:19:17 +08:00
zeertzjq 09821bc04e vim-patch:68d3129: runtime(django): Removed unsupported template statements and filters by current LTS.
Removed djangoStatement:

- ifequal: Depricated version 4.0.
- endifequal: Depricated version 4.0.
- ifnotequal: Depricated version 4.0.
- endifnotequal: Depricated version 4.0.
- parsed
- trans: Renamed to `translate` in version 4.0.
- blocktrans: Renamed to `blocktranslate` in version 4.0.
- endblocktrans: Renamed to `endblocktranslate` in version 4.0.

Removed djangoFilter:

- fix_ampersands: Removed in version 1.8.
- length_is: Removed in version 5.1.

sources:

- Current LTS is version [5.2](https://www.djangoproject.com/download/#supported-versions).
- Documentation template builtins [5.2](https://docs.djangoproject.com/en/5.2/ref/templates/builtins/#truncatechars-html).
- Documentation template builtins [6](https://docs.djangoproject.com/en/6.0/ref/templates/builtins).
- [Django Deprecation Timeline](https://docs.djangoproject.com/en/6.0/internals/deprecation)

closes: vim/vim#19994

https://github.com/vim/vim/commit/68d3129a05f0c97682126e51dcd7122fc6c2fbba

Co-authored-by: tecis <67809811+tecis@users.noreply.github.com>
2026-04-18 08:08:20 +08:00
zeertzjq 54eefd420d vim-patch:8bcae3c: runtime(django): Add missing djangoStatement get_language_info.
Source: [get_language_info](https://docs.djangoproject.com/en/6.0/topics/i18n/translation/#get-language-info) .

related: vim/vim#19994

https://github.com/vim/vim/commit/8bcae3ca5d26218b2f9f3b4b33faedc2b4026d1b

Co-authored-by: tecis <67809811+tecis@users.noreply.github.com>
2026-04-18 08:08:04 +08:00
zeertzjq 26b43af26c vim-patch:6b26afe: runtime(django): Add missing statements and filters.
Added the fallowing.

djangoStatement:

- querystring: Added in version Django 5.2.
- lorem: Added in version Django 1.8.
- verbatim: Added in version Django 1.10.

djangoFilter:

- force_escape: Added in version Django 1.8.
- iriencode: Added in version Django 1.8.
- json_script: Added in version 2.1.
- truncatechars_html: Added in version 1.7.

> According to current documentation the added keywords are supported [Django version 6](https://docs.djangoproject.com/en/6.0/ref/templates/builtins).

related: vim/vim#19994

https://github.com/vim/vim/commit/6b26afea3b95fc9f5af9b0c0c6700007f8a6ae5e

Co-authored-by: tecis <67809811+tecis@users.noreply.github.com>
2026-04-18 08:07:51 +08:00
zeertzjq eb569a695f vim-patch:450895d: runtime(make): fix wrong highlighting with $ inside double quotes (#39177)
fixes: vim/vim#19986

https://github.com/vim/vim/commit/450895d86b7b22fb730c27dbd3dfe089b66c7d5c

Co-authored-by: Christian Brabandt <cb@256bit.org>
Co-authored-by: Anton Khirnov <anton@khirnov.net>
2026-04-18 00:06:56 +00:00
zeertzjq e7f83fad39 vim-patch:2041478: runtime(bitbake): support forward-slashes in bitbake varflags
Enable syntax highlighting for forward-slashes in Bitbake variables with
varflags. Bitbake allows for forward-slashes in both the variable name
and their potential varflags. E.g. the following should match:

    FOO_BAR[baz] = "foobar"
    FOO_BAR_foo/bar[baz] = "foobar"
    FOO_BAR_foo/bar[baz/bazzer] = "foobar"

Also allow plus-signs in variable names, to be in line with normal
variable names.

related: vim/vim#19983

https://github.com/vim/vim/commit/2041478e2a4f58269847551f4a9e0206364ae121

Co-authored-by: Martin Schwan <m.schwan@phytec.de>
2026-04-16 10:28:00 +08:00
zeertzjq 938c1e2194 vim-patch:86dcb18: Revert "runtime(jjdescription): allow to configure summary width" (#39011)
This reverts commit 86ae6858ababe1f80476368c617dc1812df5b781.

related: vim/vim#19905

https://github.com/vim/vim/commit/86dcb1878cdbd0a8af61664b14f034398e319026

Co-authored-by: Christian Brabandt <cb@256bit.org>
2026-04-13 22:26:56 +08:00
zeertzjq fa22a78d2a vim-patch:86ae685: runtime(jjdescription): allow to configure summary width (#38972)
Allow to configure max length for the summary line and fall back to gits
setting.

closes: vim/vim#19905

https://github.com/vim/vim/commit/86ae6858ababe1f80476368c617dc1812df5b781

Co-authored-by: Emilia <emilia@bewitching.dev>
2026-04-12 08:00:51 +08:00
zeertzjq d8aafb20e1 vim-patch:f554a7c: runtime(jjdescription): Add highlighting for 'Renamed' status lines
`jj status` output uses the 'R' prefix for renamed files.

closes: vim/vim#19879

https://github.com/vim/vim/commit/f554a7c7090ea37a4437c7d27389ecb8a9069d6a

Co-authored-by: Joël Stemmer <jstemmer@google.com>
2026-04-10 09:59:37 +08:00
zeertzjq 08118fe6f2 vim-patch:9598174: runtime(jjdescription): Anchor status matches to start of line
The regex for status line highlighting was too broad, `jjComment` lines
containing e.g. the letter 'A' followed by a space anywhere in the line
were highlighted.

related: vim/vim#19879

https://github.com/vim/vim/commit/959817472dd64bae17c8db47e82097533e088013

Co-authored-by: Joël Stemmer <jstemmer@google.com>
2026-04-10 09:59:19 +08:00
zeertzjq 87947a4e96 vim-patch:15e9888: runtime(bitbake): Update syntax script
1) add syntax for include_all

The include_all directive was introduced in [1]. It uses the same syntax
as include or require, taking one or more paths as argument.

2) add syntax for inherit_defer

The inherit_defer directive was introduced in [2]. It uses the same syntax
as inherit, taking one or more class name as argument.

3) add syntax for addpylib

The addpylib directive was introduced in [3]. It uses a syntax similar
to addtask or addhandler, taking a directory and python namespace as
argument.

[1]: https://git.openembedded.org/bitbake/commit/?id=d01d5593e7829ac60f37bc23cb87dc6917026471
[2]: https://git.openembedded.org/bitbake/commit/?id=5c2e840eafeba1f0f754c226b87bfb674f7bea29
[3]: https://git.openembedded.org/bitbake/commit/?id=afb8478d3853f6edf3669b93588314627d617d6b

https://github.com/vim/vim/commit/15e988810e7fcf56f757793f750ade47816d76b7

Co-authored-by: Antonin Godard <antonin@godard.cc>
2026-04-08 07:22:58 +08:00
zeertzjq 595e58f47f vim-patch:f1dbca2: runtime(log): clean up and modernize log syntax (#38827)
- Rename groups to consistent log* naming (LogString→logString, etc.)
- Remove redundant logOperator/logBrackets, use logSymbol for special chars
- Simplify level keywords by removing case variants
- Consolidate syslog column patterns into logSysColumn
- Move custom highlights to portable ctermfg/guifg names
- Update maintainer email address

closes: vim/vim#19917

https://github.com/vim/vim/commit/f1dbca200c497ea8b48784ca8fea8c47d68c7d7e

Co-authored-by: Mao-Yining <mao.yining@outlook.com>
2026-04-06 13:50:33 +00:00
zeertzjq c62f8538a6 vim-patch:5943c57: runtime(zathurarc): Update page-padding, wrap the zathurarcOption keywords (#38759)
page-padding was split in page-v-padding and page-h-padding

closes: vim/vim#19899

https://github.com/vim/vim/commit/5943c57173e78ce5b5d82d3e908542b010a31134

Co-authored-by: Carlo Klapproth <6682561+elcarlosIII@users.noreply.github.com>
2026-04-04 20:50:16 +08:00
zeertzjq 2a4d666637 vim-patch:ff6f277: runtime(swayconfig): add additional criteria and hdr (#38728)
Sway 1.11 added `security_context_v1` metadata as criteria:
 - `sandbox_engine`
 - `sandbox_app_id`
 - `sandbox_instance_id`

Sway 1.12 will add the `tag` criteria for `xdg_toplevel_tag_v1`, as
well as the `hdr` output option (with options `on`, `off`, and
`toggle`).

closes: vim/vim#19884

https://github.com/vim/vim/commit/ff6f277a4dbbc1fec75c9a9d29fb85ba55127618

Co-authored-by: Felix Pehla <29adc1fd92@gmail.com>
2026-04-03 17:55:35 +08:00
zeertzjq 3cb79189f3 vim-patch:12f6f20: runtime(sh): Keep function name patterns engine neutral (#38719)
Request less backtracking to function-name candidates for
nonlinear patterns with any regexp engine BUT force using
the old engine with these patterns to avoid incurring an
additional penalty, according to ":syntime report", when the
new regexp engine is preferred.

fixes:  vim/vim#19847
closes: vim/vim#19849

https://github.com/vim/vim/commit/12f6f20552187432ac67e3bd83a285a1e608b457

Co-authored-by: Aliaksei Budavei <0x000c70@gmail.com>
2026-04-03 07:00:47 +08:00
zeertzjq fa51f5502f vim-patch:12c6417: runtime(sshconfig): Add missing kex algorithm (#38656)
These are available already with openssh 10.2p1.

closes: vim/vim#19864

https://github.com/vim/vim/commit/12c641758753bf143b50fb94039e2b0305681c9e

Co-authored-by: Thomas Braun <thomas.braun@byte-physics.de>
2026-04-01 10:00:31 +08:00
zeertzjq ec1bea9c05 vim-patch:e551e71: runtime(tera): use fnameescape() when loading separate syntax files
https://github.com/vim/vim/commit/e551e71d7e47c233d55272162bc3e9160bc9d102

Co-authored-by: Christian Brabandt <cb@256bit.org>
2026-04-01 07:58:14 +08:00
zeertzjq 925e9e8722 vim-patch:c84526d: runtime(amiga): revamp syntax highlighting and add new maintainer (#38503)
closes: vim/vim#19825

https://github.com/vim/vim/commit/c84526dd296edbd1cc31e24e43fa2f5f5501d507

Co-authored-by: Ola Söder <rolfkopman@gmail.com>
2026-03-27 09:17:47 +08:00
zeertzjq ecc2414eae vim-patch:955c02d: runtime(sh): Distinguish parts of function definitions
- Highlight keywords "function" and "namespace" with
  the "Keyword" group ("shFunctionKey").
- Highlight function body delimiters "{" and "}" with the
  "Delimiter" group ("shFunctionExprRegion").
- Highlight function body delimiters "(" and ")" with the
  "Operator" group ("shFunctionSubShRegion").
- Also, follow one style in folding all supported variants
  of function bodies for grouping commands too by enclosing
  a delimited function body, e.g. "{" and "}", in a fold and
  leaving its function header, e.g. "function f()", out of
  it when the header is written on a separate line.

To restore previous colouring, add to "after/syntax/sh.vim":
------------------------------------------------------------
hi link shFunctionKey Function
hi link shFunctionExprRegion Function
hi link shFunctionSubShRegion Function
------------------------------------------------------------

fixes:  https://github.com/vim/vim/pull/19638#issuecomment-4052635546
closes: vim/vim#19638

https://github.com/vim/vim/commit/955c02dff76e097fc40344a4fbb0af9b9796208d

Co-authored-by: Aliaksei Budavei <0x000c70@gmail.com>
2026-03-25 07:38:22 +08:00
zeertzjq cedafc86df vim-patch:9c0d057: runtime(sh): Improve the matching of function definitions
- Drop the remaining undefined "shFunctionStart" references
  (gone in v7.2b.000, c236c16d0).
- Revise nestable contexts where function definitions are
  supported:
  * Stop looking for function definitions in arithmetic
    expressions.
  * Recognise function definitions enclosing other function
    definitions.
- In addition to grouping commands "{}" and "()", also match
  other compound commands (e.g. "if"; see "shFunctionCmd*")
  whenever these commands are supported as complete function
  bodies.
- Balance body delimiters "(" and ")" for "shFunctionFour"
  in Bash; match such function bodies whenever the use of
  the function parameter list "()" token is optional, i.e.
  when the "function" reserved word is present.
- Enable the use of "shFunctionFour" definitions.
- Do not claim optional leading whitespace characters before
  a matched function definition.
- Prefer patterns with ASCII atoms (e.g. "\h") to equivalent
  collections (e.g. "[A-Za-z_]") for speed.
- Accommodate word-boundary assertions in function name
  patterns to names that may start and/or end with supported
  non-word characters, e.g. "@test:".
- Match more valid function names in Bash: non-ASCII names,
  non-word names.
- Allow for function names with "do", "done", etc. prefixes;
  confine these name checks to "shDoError" and "shIfError".

fixes:   vim/vim#19619
related: vim/vim#19638

References:
https://pubs.opengroup.org/onlinepubs/9799919799/utilities/V3_chap02.html#tag_19_09_04
https://gitweb.git.savannah.gnu.org/gitweb/?p=bash.git;a=blob_plain;f=doc/bash.html;hb=637f5c8696a6adc9b4519f1cd74aa78492266b7f
https://web.archive.org/web/20151105130220/http://www.research.att.com/sw/download/man/man1/ksh88.html
https://web.archive.org/web/20151025145158/http://www2.research.att.com/sw/download/man/man1/ksh.html
http://www.mirbsd.org/htman/i386/man1/mksh.htm

https://github.com/vim/vim/commit/9c0d057e3d5a456b2f2879860e5e57bcdf130017

Co-authored-by: Aliaksei Budavei <0x000c70@gmail.com>
Co-authored-by: Johnothan King <johnothanking@protonmail.com>
Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2026-03-25 07:38:21 +08:00
zeertzjq 929f03fa8c vim-patch:c9eaff0: runtime(java): Make changes for JDK 26 (#38452)
Reintroduce supported syntax-preview-feature numbers 455,
488, and 507 as _a new number_ 530.

Reference:
https://openjdk.org/jeps/530 (Primitive Types in Patterns etc.)

closes: vim/vim#19793

https://github.com/vim/vim/commit/c9eaff0a8ac7d8c38878361b53343348d93afff5

Co-authored-by: Aliaksei Budavei <0x000c70@gmail.com>
2026-03-24 00:01:43 +00:00
Anakin Childerhose 1de1c08210 vim-patch:9.2.0235: filetype: wks files are not recognized (#38451)
Problem:  filetype: wks files are not recognized.
Solution: Detect *.wks, *.wks.in and *.wks.inc as wks filetype,
          include a filetype and syntax plugin (Anakin Childerhose)

The OpenEmbedded Image Creation tool, `wic` uses wic kickstarter files
to define image partition and bootloader layouts.
wks files can end with .wks, .wks.in for templated wks files, and
.wks.inc for including in other .wks files.

The autocmd for *.wks.inc needs to come before *.inc in
runtime/ftdetect.vim

Reference:
https://docs.yoctoproject.org/ref-manual/kickstart.html#openembedded-kickstart-wks-reference
https://git.openembedded.org/openembedded-core/tree/scripts/lib/wic/canned-wks

closes: vim/vim#19796

https://github.com/vim/vim/commit/8c116bbe79eab7337bb5c979468d3b0cb5933d07
2026-03-23 23:40:03 +00:00
zeertzjq 957eb1fde0 vim-patch:3697c6b: runtime(ssh): ignore case in 'keywordprg', update syntax script (#38277)
- ftplugin(sshdconfig): use "-I" for 'keywordprg' to search
  case-insensitive in the man page
- syntax(sshdconfig,sshconfig): Mark "lowdelay", "throughput", and
  "reliability" as deprecated for IPQoS, highlighting them as
  errors/warnings to reflect OpenSSH 10.1p1 release

Reference:
https://www.openssh.org/releasenotes.html#10.1p1

closes: vim/vim#19636

https://github.com/vim/vim/commit/3697c6b020e6b5899a13e7c7cb105708ba2eb9d9

Co-authored-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
2026-03-12 23:45:04 +00:00
zeertzjq 99a0b2f7b8 vim-patch:2cf18fc: runtime(python): Update syntax, improve pythonNumber pattern performance (#38263)
- Improve the performance of all pythonNumber patterns by unrolling
  digit/underscore sequence loops.
- Split the float literal pattern into two simpler patterns.

fixes:  vim/vim#19625 (Reported by James McCoy)
closes: vim/vim#19630

https://github.com/vim/vim/commit/2cf18fcc240030880bbd138e5174e436a3f20823

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2026-03-12 07:55:00 +08:00
zeertzjq 4558fc02de vim-patch:8f2cd47: runtime(sudoers): update filetype plugin and syntax script (#38262)
- remove `set isk+=-` to highlight `-=` operator correctly
- implement highlighting of GID
- fix highlight of hostname and add special value ALL
- fix highlight of IP address
- update include and includedir patterns
- remove duplicate syntax rules
- add missing options
- fix highlight of parameter assignment (limit operators to list
  parameters)
- fix highlight of string and list parameters with trailing whitespaces
- implement highlight of permission (octal)
- implement highlight of floating point numbers
- implement highlight of timeout-specific options
- support highlight of negatable options (integer, mode, float, timeout,
  string)
- allow sudoersListParameter to be negated
- fix highlight of comma-separated parameter list used as boolean
- fix highlight of parameter negation (prevent highlighting ill-formed `! !`)
- fix highlight of Tag_Spec
- allow empty Runas spec: `()` and `(:)`
- fix highlight of comma-concatenated commands, hosts, and users
- check word boundaries for special value ALL
- implement highlight of Option_Spec
- fix highlight in User_Spec (specifically for Host position)
- fix highlight of `Default!` command
- support highlight of digests (sha224, etc.)
- add syntax test and update header

closes: vim/vim#19634

https://github.com/vim/vim/commit/8f2cd474048302ee1d919a45707e8b1f5db7ea57

Co-authored-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
2026-03-12 07:54:48 +08:00
zeertzjq ddccf882ff vim-patch:c6f6f16: runtime(toml): update syntax script and fix highlight of dates and escapes (#38239)
From upstream:
https://github.com/cespare/vim-toml/pull/69
https://github.com/cespare/vim-toml/pull/70

closes: vim/vim#19591

https://github.com/vim/vim/commit/c6f6f1602dcd63d0e175f826b12bbe58be878d58

Co-authored-by: Martin Tournoij <martin@arp242.net>
2026-03-11 08:16:14 +08:00
zeertzjq 60389e1c0e vim-patch:e948fea: runtime(sed): Update syntax, support more GNU address extensions (#38193)
- Support all GNU address extensions.
- Fix some bugs related to erroneous matching of pattern delimiters in
  bracket expressions.

closes: vim/vim#19587

https://github.com/vim/vim/commit/e948fea6402e18f01ac597c49185f9a4d62462b5

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2026-03-07 19:02:29 +08:00
zeertzjq 2926668f29 vim-patch:75decb4: runtime(glimmer): add syntax support for glimmer files
In commit cdf717283 ("patch 8.2.4424: ".gts" and ".gjs" files are not
recognized", 2022-02-19) support for the glimmer file types were added.

Problem:  Syntax hilighting suppoprt was missing.
Solution: Added a glimmer syntax file that will leverage the base
          syntaxs (javascript/typescript) and include handlebars syntax
          for .gjs/.gts files.

closes: vim/vim#19569

https://github.com/vim/vim/commit/75decb4a8d10c2e529add1f0e7e0a545576de2ea

Co-authored-by: Devin Weaver <suki@tritarget.org>
2026-03-06 07:59:43 +08:00
zeertzjq aa9ab2e728 vim-patch:99ea2b5: runtime(handlebars): adds handlebars template syntax & indent support
The runtime had support to detect handlebars (*.hbs) files as filetype
handlebars but was lacking any indent or syntax highlighting for that
filetype.

The handlebars syntax file is also a prerequisite for the glimmer
syntax.

Permission was granted by the original author to retrofit these into the
Vim runtime. Original License (MIT) maintained in code comments.

related: vim/vim#19569

https://github.com/vim/vim/commit/99ea2b5b062edcb22ac0cd92c5ae317cc663a7ca

Co-authored-by: Devin Weaver <suki@tritarget.org>
2026-03-06 07:59:15 +08:00
zeertzjq 62135f5a57 vim-patch:b901fa9: runtime(vim): Update base syntax, improve :syntax group list arg matching (#38112)
Attempt to match all variations of group name and comma separator across
continuation lines.

Fixes issues:
- vim/vim#18491 (Two ")"s are incorrectly colored 'vimOperError' in
  syntax/mail.vim), reported by @lkintact
- vim/vim#19366 (highlight error for contains elements in a new line), reported
  by Maxim Kim

fixes: vim/vim#18491
fixes: vim/vim#19366

https://github.com/vim/vim/commit/b901fa9a6adbc0b1404b1e6c19f83941820b1d91

Co-authored-by: Doug Kearns <dougkearns@gmail.com>
2026-03-01 08:13:19 +08:00
zeertzjq 6d73bf4886 vim-patch:29b5938: runtime(sshconfig): Add 3 additional keywords to syntax script (#38050)
closes: vim/vim#19488

https://github.com/vim/vim/commit/29b5938d7917bdb97e22953e7daddb14049257c9

Co-authored-by: James Roberts-Thomson <jamesrt@gmail.com>
2026-02-25 08:09:09 +08:00
zeertzjq 93a8acb1b8 vim-patch:9.2.0033: filetype: sh filetype used for env files
Problem:  filetype: sh filetype used for env files
Solution: Detect *.env and .env.* files as env filetype,
          detect .envrc and .envrc.* as sh filetype,
          include a simple env syntax script (DuckAfire)

Previously, .env files were handled by the shell syntax. While
functional, this limited the ability to support specific .env
implementations, such as CodeIgniter4 which allows dots in keys
(e.g., "foo.bar=0").

The new dedicated 'env' filetype and syntax script improves legibility
and prevents highlighting from breaking when encountering spaces.
Currently, the syntax does not support indentation; fields, variables,
and comments must start at the beginning of the line.

closes: vim/vim#19260

https://github.com/vim/vim/commit/d0fa375629b1bfdb8dc054894ca81d7473268455

Co-authored-by: DuckAfire <155199080+duckafire@users.noreply.github.com>
2026-02-20 09:26:07 +08:00
zeertzjq 595b4cc48e vim-patch:4611f7b: runtime(apache): Add 'SSLVHostSNIPolicy' declaration to syntax script
The declaration 'SSLVHostSNIPolicy' has bee introduced in version 2.4.66.

closes: vim/vim#19452

https://github.com/vim/vim/commit/4611f7b65693d6c2e89f1fa02057be718cef6e78

Co-authored-by: Michael Osipov <michael.osipov@innomotics.com>
2026-02-20 09:18:13 +08:00
zeertzjq c67248988b vim-patch:342ae5f: runtime(progress): Use setlocal for expandtab
The Progress syntax file gained `set expandtab` in 4c3f536f4 (updated
for version 7.0d01, 2006-04-11). The Progress language itself doesn't
distinguish between tabs and spaces for indentation, so this seems like
something that should be left to user preference; but the setting is
accompanied by the comment "The Progress editor doesn't cope with tabs
very well", so there may be reason to keep it.

However, using `set` means that any new buffers created after editing a
Progress file will also have `expandtab` turned on, which is likely
contrary to a user's expectations. We should use `setlocal` instead to
avoid this.

closes: vim/vim#19458

https://github.com/vim/vim/commit/342ae5f8aa612179f9390c21a8129a393a995b1a

Co-authored-by: Daniel Smith <daniel@rdnlsmith.com>
2026-02-20 09:17:57 +08:00
zeertzjq 4c35d0d762 vim-patch:0435abf: runtime(fstab): Add cgroup2 to valid device types
closes: vim/vim#19403

https://github.com/vim/vim/commit/0435abfaa1f0833f4540d50acde1d2be838e87fc

Co-authored-by: Radu Dineiu <radu.dineiu@gmail.com>
2026-02-16 09:11:02 +08:00
zeertzjq 4b0654db25 vim-patch:3794d9b: runtime(vim): Error codes should not be highlighed with vim9CommentTitle
closes: vim/vim#19390

https://github.com/vim/vim/commit/3794d9b33ce32492b84565d55a538bcfc1fcfbb6

Co-authored-by: Peter Kenny <github.com@k1w1.cyou>
2026-02-16 09:11:02 +08:00
zeertzjq fdf20f32ee vim-patch:c68e64d: runtime(sh): fix spurious nextgroup=shComment on shEscape
Remove `nextgroup=shComment` from the `shEscape` syntax pattern.
This was causing `#` characters after escape sequences inside
double-quoted strings to be misinterpreted as comments, breaking
highlighting for the rest of the file.

Add a test case for escaped characters followed by # in double quotes.

fixes:  vim/vim#19053
closes: vim/vim#19414

https://github.com/vim/vim/commit/c68e64dac3eaa48d65bb333c66b3d34707dd6acc

Co-authored-by: Bozhidar Batsov <bozhidar@batsov.dev>
2026-02-16 09:11:02 +08:00
zeertzjq 3432d87ce0 vim-patch:a39d7c2: runtime(sudoers): highlight usernames with hyphens, digits, underscores
The username/group/netgroup patterns used \l\+ which only matched
lowercase letters. Linux usernames commonly contain hyphens, digits,
and underscores (e.g. www-data, deploy01, test_user).

Update the pattern to \l[-a-z0-9_]* to allow matching the additional
characters "-_" and numbers.

fixes:  vim/vim#18963
closes: vim/vim#19396

https://github.com/vim/vim/commit/a39d7c26171d1629628788e80a7b062f8c5103e1

Co-authored-by: Bozhidar Batsov <bozhidar@batsov.dev>
2026-02-14 07:59:51 +08:00
zeertzjq 1ed064625c vim-patch:1cf38bf: runtime(css): Add missing numeric units (#37843)
- Add missing numeric units to css syntax script
  (baseline 2015, 2020, 2022, 2023, 2026):
    dvb, dvh, dvi, dvmax, dvmin, dvw ic,
    lvb, lvh, lvi, lvmax, lvmin, lvw, svb, svh,
    svi, svmax, svmin, svw, vb, vi, x, cap, lh,
    rlh, rcap, rch, rex, ric

closes: vim/vim#19325

https://github.com/vim/vim/commit/1cf38bfebeeb322a8437a7c1fd12506661bbfa82

Co-authored-by: DuckAfire <155199080+duckafire@users.noreply.github.com>
2026-02-13 17:11:49 +08:00
zeertzjq 844a683641 vim-patch:56033b9: runtime(sh): Fix some ksh-specific deficiencies in syntax script
- Amend syntax highlighting to allow for ksh93 discipline function names
  (e.g. 'foo.get()') and mksh's odd function naming idiosyncrasies
  (shNamespaceOne was introduced to enforce stricter naming rules for
  ksh93 namespaces).
- Remove 'bind' from ksh93 syntax (such a builtin has never been
  implemented in ksh93).
- 'xgrep' is only available in ksh93v- as an alternative way to
  invoke the builtin 'grep -X', so reflect that in the syntax
  highlighting.
- Forbid bash-style 'function name() {' syntax when highlighting
  ksh88 and ksh93 scripts.
- Fix bug causing ' ()' to be incorrectly validated in mksh scripts.
- Add the many ksh93/ksh2020 .sh.* variables to the list of special
  variables.
- Amend iskeyword to allow '.' so that '.sh.tilde.get' and such are
  valid function names/variable names. (For mksh functions starting
  with odd characters like '%' and '@' this would probably have too
  many bad side effects, so I've omitted such a change for that shell.)
- Add new syntax tests and regenerate syntax dump files

closes: vim/vim#19383

https://github.com/vim/vim/commit/56033b9df3ef56d8e37b7927521baf621fd88ab7

Co-authored-by: Johnothan King <johnothanking@protonmail.com>
2026-02-13 08:29:18 +08:00
zeertzjq ca701ad947 vim-patch:04c3c68: runtime(sshdconfig): Update syntax
We add new key exchange algorithms and new enums for PubkeyAuthOptions.

We also add new keywords from sshd_config.5 not present here and remove
keywords present here that are not present in the official
documentation, with the exception of those patched in by Debian and
Fedora, as well as ChallengeResponseAuthentication which is deprecated
but still functional.

closes: vim/vim#19347

https://github.com/vim/vim/commit/04c3c6871e640b29199cf1e7d3757103f9b16264

Co-authored-by: Fionn Fitzmaurice <fionn@github.com>
2026-02-13 08:29:18 +08:00