6962 Commits
Author SHA1 Message Date
Mao-Yining 311b1cfe83 patch 9.2.1249: filetype: Intel ISPC files are not recognized
Problem:  filetype: Intel Implicit SPMD Program Compiler files are not
          recognized
Solution: Detect *.ispc and *.isph files as ispc filetype
          (Mao-Yining)

Reference:
https://ispc.github.io/

closes: #21597

Signed-off-by: Mao-Yining <mao.yining@outlook.com>
Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-27 15:04:01 +00:00
Fabian Wermelinger f9c9094276 patch 9.2.1239: file name completion does not consult 'path'
Problem:  As stated in :help i_CTRL-X_CTRL-F, 'path' is not yet used for
          filename completion.
Solution: Add EW_PATH flag in expand_wildcards of
          get_next_filename_completion() (Fabian Wermelinger).

* Add new "pathopt" in 'completeopt' to enable 'path' consultation during
  filename completion (not enabled by default).
* Add a new Test_ins_complete_files_in_path case for test_ins_complete.
* Update corresponding runtime/doc files.

closes: #21445

Signed-off-by: Fabian Wermelinger <fabian@git.0xfab.ch>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-25 17:15:17 +00:00
Doug Kearns cbdc820a05 runtime(doc): Hyperlink remaining +feature references
- Hyperlink remaining +feature references (excluding patch lists).
- Fix typos in the +timers, +mbyte_byte_ime and +xfontset feature
  references.

closes: #21580

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-25 10:20:10 +00:00
Julien Voisin 1a2eac612e runtime(doc): add some tips to speedup syntax highlighting
Problem:  Vim syntax highlighting can sometimes be a bit slow, and it
          might be unclear as to why.
Solution: Document a couple of tips to speed up syntax highlighting.

related: #21513
closes:  #21572

Signed-off-by: jvoisin <julien.voisin@dustri.org>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-25 10:16:23 +00:00
g8r-b8 1258391cbc runtime(doc): clarify that <Esc> executes the cmdline when not typed
closes: #21553

Assisted-by: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: g8r-b8 <43860314+g8r-b8@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-25 09:42:18 +00:00
Nagato Yuzuru 648ef1820e patch 9.2.1233: d<C-V> deletes nothing in a one-column block
Problem:  After a forced blockwise exclusive motion that makes a
          one-column block, such as "d<C-V>`x" with the mark at the
          cursor, "d" and "c" do nothing.
Solution: Do not use the inclusive flag to find an empty region for a
          block, because "oap->end" is already the last column of the
          block (Nagato Yuzuru).

fixes:   #21547
related: #21540
related: neovim/neovim#24613
closes:  #21548

Assisted-by: Claude
Signed-off-by: Nagato Yuzuru <nagato@yuzuru.me>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-25 09:38:44 +00:00
Christian Brabandt 766d08b836 patch 9.2.1232: Vim9: duplicate error number
Problem:  Error E1016 is used for 2 different things
          (Ivan Pešić)
Solution: Use E1000 for the environment variable error.

fixes:  #21522
closes: #21538

Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-25 09:35:37 +00:00
Yoko DavisandClaude Opus 5.5 7a5211d6b1 runtime(netrw): "O" in a local listing fails on MS-Windows
Problem:  On MS-Windows, "O" in a local listing does not copy the file,
          Test_netrw_obtain_local() fails with E484.  "cmd /c copy" does
          not handle the composed source and target paths.
Solution: Use filecopy() for each file, as s:NetrwMarkFileCopy() does.

closes: #21534

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Yoko Davis <56965728+revesis@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-21 15:58:11 +00:00
Yoko DavisandClaude Opus 5.5 98106548d0 runtime(netrw): "O" in a local listing does not copy the file
Problem:  Pressing "O" in a local listing reports "cannot determine
          method" instead of copying the file to the current directory
          as documented in |netrw-O|.
Solution: Use the islocal argument of netrw#Obtain() instead of
          b:netrw_islocal, and copy the files from b:netrw_curdir.

b:netrw_islocal is only set when a file is marked while other files are
already marked, so without marks netrw#Obtain() took the remote branch.
The names in the listing are relative to b:netrw_curdir, which is not
vim's current directory when netrw obtains a file, so the local copy
command could not find them.

related: #21534

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Yoko Davis <56965728+revesis@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-21 15:57:34 +00:00
Yoko DavisandClaude Opus 5.5 b6e28306e3 runtime(netrw): E118 when netrw#Obtain() rejects a hostname
Problem:  netrw#Obtain() passes the hostname to netrw#msg#Notify() as a
          third argument, so instead of "Rejecting invalid hostname"
          the user gets E118: Too many arguments for function.
Solution: Format the message with printf() first, as the other
          "Rejecting invalid hostname" messages in netrw already do.

related: #21534

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Yoko Davis <56965728+revesis@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-21 15:55:57 +00:00
Aliaksei Budavei 92d4e9beb1 runtime(syntax-tests): Clarify the naming scheme for test files
Similar to "sh.vim", there are a handful of other filetypes
whose names (assigned to "b:current_syntax") are different
from the base names of their syntax plugins, e.g. "python2"
and "elsa".  Two scripts, "testdir/tools/maketestdeps" and
"testdir/runtest.vim", currently assume that the base name
of a syntax plugin can be derived from the name of a syntax
test.  Prescribe using the base name of the syntax plugin,
instead of its filetype, for a test filename prefix so that
existing files are listed in Make targets ("maketestdeps")
and name correspondence is kept between the syntax plugin
and optional test settings for it ("runtest.vim").  Add a CI
check for name verification.

closes: #21414

Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-21 15:10:49 +00:00
Yegappan Lakshmanan 3c8672b032 patch 9.2.1211: Vim9: crash when a type is nested very deeply
Problem:  Vim9: crash when a type is nested very deeply, e.g.
          "list<list<...>>" nested 100000 times, either directly or by
          using type aliases, because of running out of stack space.
Solution: Give an error when a type is nested more than 1000 times,
          including nesting through type aliases (Yegappan Lakshmanan).

fixes:  #21566
closes: #21498

Assisted-by: Claude
Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-20 14:17:04 +00:00
Yegappan Lakshmanan ebfc20aa0b patch 9.2.1210: Vim9: type arguments of nested generic function not used
Problem:  Vim9: when a nested generic function is called with type
          arguments, the type arguments are not used, e.g. the argument
          types are not checked.  Using it in a lambda gives a wrong
          error and a type variable with the name of the function is not
          rejected.
Solution: Create the function with the type arguments in the context of
          the function where it is defined, also when used in a closure
          or in a recursive call.  Skip over type arguments of a
          function name in an expression that is not evaluated. Check
          the type variable names of a nested generic function
          (Yegappan Lakshmanan).

When used in a closure or in a recursive call, the partial for the
function with the type arguments uses the context of the function where
the generic function is defined, which is found by going up the outer
partials.

fixes:  #21565
closes: #21496

Assisted-by: Claude
Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-20 14:08:49 +00:00
Yegappan Lakshmanan eaef6760b8 patch 9.2.1209: Vim9: number of type variables of interface method not checked
Problem:  Vim9: when a class implements a generic method of an
          interface, the number of type variables is not checked, unlike
          when a method is overridden in a child class.
Solution: Give an error when the number of type variables differs
          (Yegappan Lakshmanan).

fixes:  #21564
closes: #21495

Assisted-by: Claude
Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-19 16:29:18 +00:00
Aliaksei Budavei 0b9075e785 runtime(syntax-tests): Follow the convention in naming test-case files
Test-case filenames should always begin with the associated
filetype name, properly delimited from the remaining part of
the filename.  As of v9.2.0636~1, a convenience function
"DeferRenamingTestFileTo" is provided in "VIM_TEST_SETUP"
aware contexts to temporarily give the file under test
another, arbitrary name before executing ":syntax on".

closes: #21352

Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-19 15:43:51 +00:00
Christian Brabandt b93c000ddf patch 9.2.1201: [security]: code injection via cargo quickfix plugin
Problem:  [security]: code injection via cargo quickfix plugin
          (Daniel Dalvelac)
Solution: Use chdir() instead of string executing a cd command

Github Security Advisory:
https://github.com/vim/vim/security/advisories/GHSA-x2w5-pj55-7hpc

fyi @gpanders

Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-15 20:24:51 +00:00
Fionn Fitzmaurice 4eae1d03e8 runtime(gitrevlist): prevent interpreting keywords as options
Problem:  gitrevlist's keywordprg "git show" doesn't realise that input
          should never be interpreted as an option. (Note that it is in
          practice impossible to pass a value that is interpreted as an
          option, but this expresses intent and is defensive.)
Solution: pass --end-of-options to force input to be interpreted as
          arguments.

related: #20702
closes:  #21472

Signed-off-by: Fionn Fitzmaurice <git@fionn.computer>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-15 19:03:21 +00:00
Yasuhiro Matsumoto 26d8c85188 runtime(gnat): Use shellescape to prevent code injection via filename
While at it, also fix E716 when calling gnat.Get_Command('Find')
by renaming the key from 'Find_Program' to the expected 'Find_Command'.

Signed-off-by: Yasuhiro Matsumoto <mattn.jp@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-14 18:34:02 +00:00
Yasuhiro Matsumoto abb6f3ea4c runtime(compiler): escape paths for cppcheck compiler
Signed-off-by: Yasuhiro Matsumoto <mattn.jp@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-14 17:41:39 +00:00
Christian Brabandt 7c271dc66c patch 9.2.1184: the dry run feature not well received
Problem:  The dry run feature received negative feedback
Solution: Revert patches 9.2.1140 and 9.2.1084.

This reverts commit v9.2.1140 (6175ce8762) and
v9.2.1084 (e376846379).

Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-13 20:05:41 +00:00
Maxim Kim d628382623 runtime(colors): update colorschemes
- all: Better handling of termguicolors in GUI
- desert: update Visual, make LineNr darkgray, distinct PmenuThumb and VertSplit/StatusLine

fixes:  #21428
closes: #21500

Signed-off-by: Maxim Kim <habamax@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-13 18:04:19 +00:00
Christian Brabandt 7670338d8b patch 9.2.1178: [security]: code injection via rmd syntax pattern
Problem:  [security]: code injection via rmd syntax pattern for fenced
          languages (ylerni7-ant)
Solution: Keep only the leading word characters of the language name
          in the syntax script.

Github Security Advisory:
https://github.com/vim/vim/security/advisories/GHSA-x2w5-pj55-7hpc

Assisted-by: Claude Opus
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-12 20:31:49 +00:00
Christian Brabandt 05d704d285 patch 9.2.1177: [security]: possible code injection via rubycomplete
Problem:  [security]: possible code injection via rubycomplete
          (tnshima)
Solution: Do not use eval() for arbitrary buffer text

Github Security Advisory:
https://github.com/vim/vim/security/advisories/GHSA-4xgr-vqh2-xfx8

Assisted-by: Opus
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-12 19:59:40 +00:00
Christian Brabandt 52ce28a4ad runtime(systemd): use script-local function for keyword lookup
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-12 18:53:27 +00:00
Christian Brabandt 0fa670400b runtime(sshconfig): correctly escape search pattern for keywordprg
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-12 18:52:30 +00:00
Christian Brabandt 40295c92be runtime(go): prevent code injection with keywordprg
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-12 18:50:58 +00:00
Christian Brabandt 4247723abe runtime(c): correctly escape arguments for keywordprg
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-12 18:50:12 +00:00
Hirohito Higashi 99b9dd00cd runtime(doc): Fix documentation for getinfo()
Problem:  The documentation for getinfo() is hard to understand.
Solution: fix it.

closes: #21475

Signed-off-by: Hirohito Higashi <h.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-11 17:31:08 +00:00
Doug KearnsandJanis Papanagnou b114ec4791 runtime(algol68): Update syntax
- Remove duplicate STRUCT definition.
- Add Genie NEW, alias for HEAP.

closes: #21435

Co-authored-by: Janis Papanagnou <janis_papanagnou@hotmail.com>
Signed-off-by: Janis Papanagnou <janis_papanagnou@hotmail.com>
Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-06 17:41:14 +00:00
Doug Kearns cff1d9e4e7 runtime(typescript): Update syntax, fix pattern memory usage with re=1
- Fix typescriptArrowFuncDef pattern memory errors when regexpegine=1.
- Add a test.

fixes:   #17247
related: #21400
closes:  #21423

Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-06 17:35:58 +00:00
Christian Brabandt f5f6d12a28 runtime(doc): Fix error introduced in 7c16e2127f
related: #21367

Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-03 14:41:50 +00:00
Luca Del Re c5e83c9cd7 runtime(doc): Explain how to use manpager.vim with mandoc
Problem:  Following the instructions manpager.vim's help does not work
          for mandoc's man frontend
Solution: Explain how to set up MANPAGER for mandoc (Luca Del Re)

closes: #21424

Signed-off-by: Luca Del Re <v.commit@ldr.name>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-01 18:15:03 +00:00
Antonio Giovanni Colombo 8f6625a6b0 translation(it): Update Italian manpage
Signed-off-by: Antonio Giovanni Colombo <azc100@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-10-01 18:12:24 +00:00
Foxe Chen 86cfe56b30 patch 9.2.1161: the image feature can be improved
Problem:  the image feature can be improved
Solution: Refactor the image feature, make use of the pixman library if
          possible, add image_info(), image_add() and image_discard()
          functions and the 'imageprotocol' option (Foxe Chen)

closes: #21234

Assisted-by: Claude
Signed-off-by: Foxe Chen <chen.foxe@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-09-30 21:57:39 +00:00
Hirohito Higashi 89c0f36163 patch 9.2.1160: no way to get the definition of item from Vim script
Problem:  There is no way to get the definition of a builtin or a user
          defined function, of an Ex command, of an option or of a v:
          variable from Vim script.  A language server has to parse the
          help text or the output of ":function" and ":command" for it.
Solution: Add getinfo({kind}, {name} [, {opts}]), which returns a Dict
          with the definition of {name}: a function, an Ex command, an
          option or a v: variable.  Keep the names of the arguments of
          the builtin functions in their table and report them in
          "args" (Hirohito Higashi).

closes: #21293

Assisted-by: Claude
Signed-off-by: Hirohito Higashi <h.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-09-30 20:57:50 +00:00
Hirohito Higashi ae8837c19d patch 9.2.1159: :append in a block that is not executed reads its text as commands
Problem:  In a block that is not executed, the text lines of :append,
          :insert and :change are parsed as commands, so e.g. a text
          line "endif" ends the block
Solution: Read and discard the text up to "." while skipping.  Add the
          commands to the ":help :bar" list.

closes: #21331

Assisted-by: Claude
Signed-off-by: Hirohito Higashi <h.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-09-30 20:31:07 +00:00
RestorerZ badf1e4eba translation(ru): updated Vim manpages
closes: #21394

Signed-off-by: RestorerZ <restorer@mail2k.ru>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-09-30 20:03:30 +00:00
S0AndS0 43725acce6 runtime(css): Add additional CSS pseudo-classes and functions
Problem:  Other than `state()` these are widely supported CSS features
Solution: Add :host, :host-context(), slotted(), and state() CSS
          pseudo-classes and functions (S0AndS0).

Reference:
- https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Selectors/:host
- https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Selectors/:host_function
- https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Selectors/::slotted
- https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Selectors/:state

TLDR: `host` and `host-context()` are useful for shadowDom stuff,
`::slotted()` enables targeting elements passed/injected into a
`<template>` and `state()` enables targeting custom identifiers.

For example, currently I'm (ab)using `:host` as a drop-in replacement
for `:root` when defining variables that are intended to be shared
across custom/template elements;

- `./assets/css/host.css`
   ```css
   :host {
     --default__margin-block: 0.25rem;
   }
   ```
- `./custom-elements/example.html`
   ```html
   <template>
     <link rel="stylesheet" href="/assets/css/host.css">

     <style>
       header {
         margin-block-start: calc(var(--default__margin-block) * 2);
       }
     </style>

     <header></header>
   </template>
   ```

closes: #21404

Signed-off-by: S0AndS0 <strangerthanbland@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-09-30 19:46:40 +00:00
Yegappan Lakshmanan aceaa79254 patch 9.2.1155: Vim9: no unreachable error when every branch returns
Problem:  Vim9: no unreachable error when every branch returns
Solution: Track termination for all branches and give E1095.
          (Yegappan Lakshmanan).

closes: #21407

Assisted-by: GitHub Copilot
Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-09-30 19:06:19 +00:00
Christian BrabandtandIvan Krasilnikov 4505de4391 runtime(rmd): fix typo in code block delimiter pattern, add test
Test file taken from
https://github.com/rstudio/rmarkdown/blob/main/inst/rmarkdown/templates/github_document/skeleton/skeleton.Rmd

fixes: #21328

Co-authored-by: Ivan Krasilnikov <ivank@ivank.me>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-09-29 18:50:48 +00:00
Christian Brabandt 85720c4e52 patch 9.2.1150: Lua: negative Blob index is not handled
Problem:  luaV_blob_index() and luaV_blob_newindex() only check the upper
          bound of the index (Yuyao Jiang).
Solution: Handle a negative index as relative to the end, like Vim does.

related: #21373

Assisted-by: Claude Opus
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-09-29 18:20:06 +00:00
Miura YasuyukiandClaude Opus 5.5 bb1d7bc637 runtime(typescript): fix exponential backtracking in typescriptArrowFuncDef
Problem:  The paren-based typescriptArrowFuncDef patterns contain a nested
          quantifier, \%(\_[^()]\+\|...\)*, which backtracks exponentially
          with the old regexp engine when the match fails.
Solution: Drop the inner \+; the matched language is unchanged.

closes: #21400
related: HerringtonDarkholme/yats.vim#306

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Miura Yasuyuki <kokosabu@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-09-28 21:33:29 +00:00
ghubstat 3e270064ab runtime(doc): Update vim.1 to include --remote-tab options
closes: #21383

Signed-off-by: ghubstat <xerographician@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-09-28 20:36:40 +00:00
Hirohito Higashi 6175ce8762 patch 9.2.1140: Vim9: :def in legacy script can create a script variable
Problem:  A :def function in a legacy script can create a script-local
          variable by assigning to it, while declaring one with "var"
          gives E1101.
Solution: Give E1089 for assigning to an unknown script-local variable
          in any :def function, not only in one defined in a Vim9
          script.  Remove uf_script_ctx_version, which was only used
          for this check.  Do not give it with ":source ++dryrun".

runtime/menu.vim created s:bmenu_short, s:bmenu_count, s:suglist,
s:fromword, s:changeitem, s:additem and s:ignoreitem this way, define
them at the script level.

":source ++dryrun" does not execute ":let" in a legacy script, thus
every script variable would be unknown when compiling.  Document that
reading or calling such a variable without "s:" still gives an error,
and separate the paragraphs of ":source-dryrun" with blank lines.

Test_unlet() created s:somevar this way, define it at the script level
instead.  Test_using_s_var_in_function() checks that assigning to
s:scriptlevel in a :def function of a legacy script gives E1089 when
the variable does not exist.  Test_source_dryrun() checks that
assigning to a script variable with "s:" in a :def function of a
legacy script gives no error with ":source ++dryrun".

closes: #21379

Assisted-by: Claude
Signed-off-by: Hirohito Higashi <h.east.727@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-09-28 19:22:15 +00:00
Eisuke Kawashima 10d1ef03fe runtime(sshknownhosts): update syntax script and add syntax test
closes: #21387

Signed-off-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-09-28 18:46:16 +00:00
Eisuke Kawashima ca0610c14f runtime(sshpublickey): update syntax script and add syntax test
related: #21387

Signed-off-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-09-28 18:46:12 +00:00
Eisuke Kawashima ce07f0187a runtime(sshdconfig): update syntax script
related: #21387

Signed-off-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-09-28 18:28:43 +00:00
Eisuke Kawashima 607da33212 runtime(sshconfig): update syntax script and add syntax test
related: #21387

Signed-off-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-09-28 18:28:42 +00:00
Eisuke Kawashima a3f2359af7 runtime(sshauthorizedkeys): update syntax and add syntax test
related: #21387

Signed-off-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-09-28 18:28:41 +00:00
Eisuke Kawashima f4eeed11a5 runtime(sshallowedsigners): update syntax script
related: #21387

Signed-off-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-09-28 18:28:29 +00:00