]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
runtime: Remove wrong syn oneline keyword from a few syntax files
authorEisuke Kawashima <e-kwsm@users.noreply.github.com>
Mon, 20 Apr 2026 15:14:31 +0000 (15:14 +0000)
committerChristian Brabandt <cb@256bit.org>
Mon, 20 Apr 2026 15:14:31 +0000 (15:14 +0000)
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: #20018

Signed-off-by: Eisuke Kawashima <e-kwsm@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
24 files changed:
runtime/syntax/autohotkey.vim
runtime/syntax/cabal.vim
runtime/syntax/generator/vim.vim.base
runtime/syntax/monk.vim
runtime/syntax/shared/typescriptcommon.vim
runtime/syntax/testdir/dumps/vim_ex_syntax_06.dump
runtime/syntax/testdir/dumps/vim_ex_syntax_07.dump
runtime/syntax/testdir/dumps/vim_ex_syntax_08.dump
runtime/syntax/testdir/dumps/vim_ex_syntax_09.dump
runtime/syntax/testdir/dumps/vim_ex_syntax_10.dump
runtime/syntax/testdir/dumps/vim_ex_syntax_11.dump
runtime/syntax/testdir/dumps/vim_ex_syntax_12.dump
runtime/syntax/testdir/dumps/vim_ex_syntax_13.dump
runtime/syntax/testdir/dumps/vim_ex_syntax_14.dump
runtime/syntax/testdir/dumps/vim_ex_syntax_15.dump
runtime/syntax/testdir/dumps/vim_ex_syntax_16.dump
runtime/syntax/testdir/dumps/vim_ex_syntax_17.dump
runtime/syntax/testdir/dumps/vim_ex_syntax_18.dump
runtime/syntax/testdir/dumps/vim_ex_syntax_19.dump
runtime/syntax/testdir/dumps/vim_ex_syntax_20.dump
runtime/syntax/testdir/dumps/vim_ex_syntax_21.dump
runtime/syntax/testdir/dumps/vim_ex_syntax_22.dump [new file with mode: 0644]
runtime/syntax/testdir/input/vim_ex_syntax.vim
runtime/syntax/vim.vim

index a8883949231cfc0402c7623136dc49aa32a90623..db3c26ec0a97f9827dc2f7c51441c07db81cf21b 100644 (file)
@@ -3,6 +3,8 @@
 " Maintainer:       Michael Wong
 "                   https://github.com/mmikeww/autohotkey.vim
 " Latest Revision:  2022-07-25
+" Last Change:
+" 2026 Apr 20 by Vim project: remove wrong oneline keyword #20018
 " Previous Maintainers:       SungHyun Nam <goweol@gmail.com>
 "                             Nikolai Weibull <now@bitwi.se>
 
@@ -35,7 +37,6 @@ syn region autohotkeyString
 
 syn match autohotkeyVariable
       \ display
-      \ oneline
       \ contains=autohotkeyBuiltinVariable
       \ keepend
       \ '%\S\{-}%'
@@ -123,7 +124,7 @@ syn keyword autohotkeyCommand
 
 syn keyword autohotkeyFunction
       \ InStr RegExMatch RegExReplace StrLen SubStr Asc Chr Func
-      \ DllCall VarSetCapacity WinActive WinExist IsLabel OnMessage 
+      \ DllCall VarSetCapacity WinActive WinExist IsLabel OnMessage
       \ Abs Ceil Exp Floor Log Ln Mod Round Sqrt Sin Cos Tan ASin ACos ATan
       \ FileExist GetKeyState NumGet NumPut StrGet StrPut RegisterCallback
       \ IsFunc Trim LTrim RTrim IsObject Object Array FileOpen
index 74cda51266fd1d5fd36dd14685978810c63671a6..a1db25034a87de6a5ec51cb405af93cc5ef3acfd 100644 (file)
@@ -5,8 +5,10 @@
 " Previous Maintainer: Vincent Berthoux <twinside@gmail.com>
 " File Types:   .cabal
 " Last Change:  22 Oct 2022
+" 2026 Apr 20 by Vim project: remove wrong oneline keyword #20018
+"
 " v1.6: Added support for foreign-libraries
-"       Added highlighting for various fields 
+"       Added highlighting for various fields
 " v1.5: Incorporated changes from
 "       https://github.com/sdiehl/haskell-vim-proto/blob/master/vim/syntax/cabal.vim
 "       Use `syn keyword` instead of `syn match`.
@@ -25,7 +27,7 @@
 "       Cabal known compiler are highlighted too.
 "
 " V1.2: Added cpp-options which was missing. Feature implemented
-"       by GHC, found with a GHC warning, but undocumented. 
+"       by GHC, found with a GHC warning, but undocumented.
 "       Whatever...
 "
 " v1.1: Fixed operator problems and added ftdetect file
@@ -186,7 +188,7 @@ syn match cabalVersionRegionA
        \ contains=cabalVersionOperator,cabalVersion
        \ keepend
        \ /\%(==\|\^\?>=\|<=\|<\|>\)\s*\d\+\%(\.\d\+\)*\%(\.\*\)\?\>/
-" version inside `version: ...` 
+" version inside `version: ...`
 syn match cabalVersionRegionB
        \ contains=cabalStatementRegion,cabalVersionOperator,cabalVersion
        \ /^\s*\%(cabal-\)\?version\s*:.*$/
@@ -198,7 +200,6 @@ syn match cabalName contained /:\@<=.*/
 syn match cabalNameRegion
        \ contains=cabalStatementRegion,cabalName
        \ nextgroup=cabalStatementRegion
-       \ oneline
        \ /^\c\s*name\s*:.*$/
 
 " author region
@@ -206,7 +207,6 @@ syn match cabalAuthor contained /:\@<=.*/
 syn match cabalAuthorRegion
        \ contains=cabalStatementRegion,cabalStatement,cabalAuthor
        \ nextgroup=cabalStatementRegion
-       \ oneline
        \ /^\c\s*author\s*:.*$/
 
 " maintainer region
@@ -214,7 +214,6 @@ syn match cabalMaintainer contained /:\@<=.*/
 syn match cabalMaintainerRegion
        \ contains=cabalStatementRegion,cabalStatement,cabalMaintainer
        \ nextgroup=cabalStatementRegion
-       \ oneline
        \ /^\c\s*maintainer\s*:.*$/
 
 " license region
@@ -222,7 +221,6 @@ syn match cabalLicense contained /:\@<=.*/
 syn match cabalLicenseRegion
        \ contains=cabalStatementRegion,cabalStatement,cabalLicense
        \ nextgroup=cabalStatementRegion
-       \ oneline
        \ /^\c\s*license\s*:.*$/
 
 " license-file region
@@ -230,7 +228,6 @@ syn match cabalLicenseFile contained /:\@<=.*/
 syn match cabalLicenseFileRegion
        \ contains=cabalStatementRegion,cabalStatement,cabalLicenseFile
        \ nextgroup=cabalStatementRegion
-       \ oneline
        \ /^\c\s*license-file\s*:.*$/
 
 " tested-with region with compilers and versions
@@ -238,7 +235,6 @@ syn keyword cabalCompiler contained ghc nhc yhc hugs hbc helium jhc lhc
 syn match cabalTestedWithRegion
        \ contains=cabalStatementRegion,cabalStatement,cabalCompiler,cabalVersionRegionA
        \ nextgroup=cabalStatementRegion
-       \ oneline
        \ /^\c\s*tested-with\s*:.*$/
 
 " build type keywords
index d73688927ac68dedfed335543f6f4e3b799cee51..24a51167ac9c32db7d1ffc21a2a8bc6da9717b16 100644 (file)
@@ -1860,10 +1860,11 @@ syn keyword     vimSynType              contained       include skipwhite nextgroup=vimSynIncludeClust
 syn match      vimSynIncludeCluster    contained       "@[_a-zA-Z0-9]\+\>"
 
 " Syntax: keyword {{{2
-syn cluster    vimSynKeyGroup  contains=@vimContinue,vimSynCchar,vimSynNextgroup,vimSynKeyOpt,vimSynContainedin
+syn cluster    vimSynKeyGroup  contains=@vimContinue,vimSynCchar,vimSynNextgroup,vimSynKeyOpt,vimSynContainedin,vimSynKeyError
 syn keyword    vimSynType      contained       keyword skipwhite nextgroup=vimSynKeyRegion
 syn region     vimSynKeyRegion contained         keepend       matchgroup=vimGroupName start="\h\w*\>" skip=+\\\\\|\\|\|\n\s*\%(\\\|"\\ \)+ matchgroup=vimCmdSep end="|\|$" contains=@vimSynKeyGroup
 syn match      vimSynKeyOpt    contained       "\%#=1\<\%(conceal\|contained\|transparent\|skipempty\|skipwhite\|skipnl\)\>"
+syn match      vimSynKeyError  contained       "\<oneline\>"
 
 " Syntax: match {{{2
 syn cluster    vimSynMtchGroup contains=@vimContinue,vimSynCchar,vimSynContains,vimSynContainedin,vimSynError,vimSynMtchOpt,vimSynNextgroup,vimSynRegPat,vimNotation,vimMtchComment
@@ -2431,6 +2432,7 @@ if !exists("skip_vim_syntax_inits")
   hi def link vimSyncError     vimError
   hi def link vimSynConcealError       vimError
   hi def link vimSynError      vimError
+  hi def link vimSynKeyError   vimError
   hi def link vimSynFoldlevelError     vimError
   hi def link vimSynIskeywordError     vimError
   hi def link vimSynSpellError vimError
index 3af810173aa1c4d0bcceb4badb2ca4d914f8fa78..22c91417a90ef78bb9ea1166e4cf1eb609229892 100644 (file)
@@ -2,6 +2,7 @@
 " Language: Monk (See-Beyond Technologies)
 " Maintainer: Mike Litherland <litherm@ccf.org>
 " Last Change: 2012 Feb 03 by Thilo Six
+" 2026 Apr 20 by Vim project: remove wrong oneline keyword #20018
 
 " This syntax file is good enough for my needs, but others
 " may desire more features.  Suggestions and bug reports
@@ -33,8 +34,8 @@ syn case ignore
 
 " Fascist highlighting: everything that doesn't fit the rules is an error...
 
-syn match      monkError       oneline    ![^ \t()";]*!
-syn match      monkError       oneline    ")"
+syn match      monkError       ![^ \t()";]*!
+syn match      monkError       ")"
 
 " Quoted and backquoted stuff
 
@@ -131,51 +132,51 @@ syn keyword monkFunc valid-integer? verify-type
 " using variables is a day's work for a trained secretary...
 " This is a useful lax approximation:
 
-syn match      monkNumber      oneline    "[-#+0-9.][-#+/0-9a-f@i.boxesfdl]*"
-syn match      monkError       oneline    ![-#+0-9.][-#+/0-9a-f@i.boxesfdl]*[^-#+/0-9a-f@i.boxesfdl \t()";][^ \t()";]*!
+syn match      monkNumber      "[-#+0-9.][-#+/0-9a-f@i.boxesfdl]*"
+syn match      monkError       ![-#+0-9.][-#+/0-9a-f@i.boxesfdl]*[^-#+/0-9a-f@i.boxesfdl \t()";][^ \t()";]*!
 
-syn match      monkOther       oneline    ![+-][ \t()";]!me=e-1
-syn match      monkOther       oneline    ![+-]$!
+syn match      monkOther       ![+-][ \t()";]!me=e-1
+syn match      monkOther       ![+-]$!
 " ... so that a single + or -, inside a quoted context, would not be
 " interpreted as a number (outside such contexts, it's a monkFunc)
 
-syn match      monkDelimiter   oneline    !\.[ \t()";]!me=e-1
-syn match      monkDelimiter   oneline    !\.$!
+syn match      monkDelimiter   !\.[ \t()";]!me=e-1
+syn match      monkDelimiter   !\.$!
 " ... and a single dot is not a number but a delimiter
 
 " Simple literals:
 
-syn match      monkBoolean     oneline    "#[tf]"
-syn match      monkError       oneline    !#[tf][^ \t()";]\+!
+syn match      monkBoolean     "#[tf]"
+syn match      monkError       !#[tf][^ \t()";]\+!
 
-syn match      monkChar        oneline    "#\\"
-syn match      monkChar        oneline    "#\\."
-syn match      monkError       oneline    !#\\.[^ \t()";]\+!
-syn match      monkChar        oneline    "#\\space"
-syn match      monkError       oneline    !#\\space[^ \t()";]\+!
-syn match      monkChar        oneline    "#\\newline"
-syn match      monkError       oneline    !#\\newline[^ \t()";]\+!
+syn match      monkChar        "#\\"
+syn match      monkChar        "#\\."
+syn match      monkError       !#\\.[^ \t()";]\+!
+syn match      monkChar        "#\\space"
+syn match      monkError       !#\\space[^ \t()";]\+!
+syn match      monkChar        "#\\newline"
+syn match      monkError       !#\\newline[^ \t()";]\+!
 
 " This keeps all other stuff unhighlighted, except *stuff* and <stuff>:
 
-syn match      monkOther       oneline    ,[a-z!$%&*/:<=>?^_~][-a-z!$%&*/:<=>?^_~0-9+.@]*,
-syn match      monkError       oneline    ,[a-z!$%&*/:<=>?^_~][-a-z!$%&*/:<=>?^_~0-9+.@]*[^-a-z!$%&*/:<=>?^_~0-9+.@ \t()";]\+[^ \t()";]*,
+syn match      monkOther       ,[a-z!$%&*/:<=>?^_~][-a-z!$%&*/:<=>?^_~0-9+.@]*,
+syn match      monkError       ,[a-z!$%&*/:<=>?^_~][-a-z!$%&*/:<=>?^_~0-9+.@]*[^-a-z!$%&*/:<=>?^_~0-9+.@ \t()";]\+[^ \t()";]*,
 
-syn match      monkOther       oneline    "\.\.\."
-syn match      monkError       oneline    !\.\.\.[^ \t()";]\+!
+syn match      monkOther       "\.\.\."
+syn match      monkError       !\.\.\.[^ \t()";]\+!
 " ... a special identifier
 
-syn match      monkConstant    oneline    ,\*[-a-z!$%&*/:<=>?^_~0-9+.@]*\*[ \t()";],me=e-1
-syn match      monkConstant    oneline    ,\*[-a-z!$%&*/:<=>?^_~0-9+.@]*\*$,
-syn match      monkError       oneline    ,\*[-a-z!$%&*/:<=>?^_~0-9+.@]*\*[^-a-z!$%&*/:<=>?^_~0-9+.@ \t()";]\+[^ \t()";]*,
+syn match      monkConstant    ,\*[-a-z!$%&*/:<=>?^_~0-9+.@]*\*[ \t()";],me=e-1
+syn match      monkConstant    ,\*[-a-z!$%&*/:<=>?^_~0-9+.@]*\*$,
+syn match      monkError       ,\*[-a-z!$%&*/:<=>?^_~0-9+.@]*\*[^-a-z!$%&*/:<=>?^_~0-9+.@ \t()";]\+[^ \t()";]*,
 
-syn match      monkConstant    oneline    ,<[-a-z!$%&*/:<=>?^_~0-9+.@]*>[ \t()";],me=e-1
-syn match      monkConstant    oneline    ,<[-a-z!$%&*/:<=>?^_~0-9+.@]*>$,
-syn match      monkError       oneline    ,<[-a-z!$%&*/:<=>?^_~0-9+.@]*>[^-a-z!$%&*/:<=>?^_~0-9+.@ \t()";]\+[^ \t()";]*,
+syn match      monkConstant    ,<[-a-z!$%&*/:<=>?^_~0-9+.@]*>[ \t()";],me=e-1
+syn match      monkConstant    ,<[-a-z!$%&*/:<=>?^_~0-9+.@]*>$,
+syn match      monkError       ,<[-a-z!$%&*/:<=>?^_~0-9+.@]*>[^-a-z!$%&*/:<=>?^_~0-9+.@ \t()";]\+[^ \t()";]*,
 
 " Monk input and output structures
-syn match      monkSyntax      oneline    "\(\~input\|\[I\]->\)[^ \t]*"
-syn match      monkFunc        oneline    "\(\~output\|\[O\]->\)[^ \t]*"
+syn match      monkSyntax      "\(\~input\|\[I\]->\)[^ \t]*"
+syn match      monkFunc        "\(\~output\|\[O\]->\)[^ \t]*"
 
 " Non-quoted lists, and strings:
 
index 9a909c675586b1b34403b8579ed98a97804ee57c..1cb1740f8ed1d8d77dbdcb43ccb07ac05f9b3448 100644 (file)
@@ -306,13 +306,13 @@ syntax keyword typescriptRepeat                do while for nextgroup=typescript
 syntax keyword typescriptRepeat                for nextgroup=typescriptLoopParen,typescriptAsyncFor skipwhite skipempty
 syntax keyword typescriptBranch                break continue containedin=typescriptBlock
 syntax keyword typescriptCase                  case nextgroup=@typescriptPrimitive skipwhite containedin=typescriptBlock
-syntax keyword typescriptDefault               default containedin=typescriptBlock nextgroup=@typescriptValue,typescriptClassKeyword,typescriptInterfaceKeyword skipwhite oneline
+syntax keyword typescriptDefault               default containedin=typescriptBlock nextgroup=@typescriptValue,typescriptClassKeyword,typescriptInterfaceKeyword skipwhite
 syntax keyword typescriptStatementKeyword      with
 syntax keyword typescriptStatementKeyword      yield skipwhite nextgroup=@typescriptValue containedin=typescriptBlock
 
 syntax keyword typescriptTry                   try
 syntax keyword typescriptExceptions            throw finally
-syntax keyword typescriptExceptions            catch nextgroup=typescriptCall skipwhite skipempty oneline
+syntax keyword typescriptExceptions            catch nextgroup=typescriptCall skipwhite skipempty
 syntax keyword typescriptDebugger              debugger
 
 syntax keyword typescriptAsyncFor              await nextgroup=typescriptLoopParen skipwhite skipempty contained
@@ -1766,9 +1766,9 @@ endif
 " patch
 " patch for generated code
 syntax keyword typescriptGlobal Promise
-  \ nextgroup=typescriptGlobalPromiseDot,typescriptFuncCallArg,typescriptTypeArguments oneline
+  \ nextgroup=typescriptGlobalPromiseDot,typescriptFuncCallArg,typescriptTypeArguments
 syntax keyword typescriptGlobal Map WeakMap
-  \ nextgroup=typescriptGlobalPromiseDot,typescriptFuncCallArg,typescriptTypeArguments oneline
+  \ nextgroup=typescriptGlobalPromiseDot,typescriptFuncCallArg,typescriptTypeArguments
 
 syntax keyword typescriptConstructor           contained constructor
   \ nextgroup=@typescriptCallSignature
index 67ba95814ced96b0a65ebbe681df4ab1001cc837..3bcb86e4e3e80077deff565615331821601f8b9b 100644 (file)
@@ -17,4 +17,4 @@
 @6|\+0#e000e06&| +0#0000000&|c+0#e000e06&|o|n|t|a|i|n|e|d| +0#0000000&@57
 @6|"+0#0000e05&|\| |c|o|n|t|a|i|n|e|d|i|n| |o|p|t|i|o|n| +0#0000000&@47
 @6|\+0#e000e06&| +0#0000000&|c+0#e000e06&|o|n|t|a|i|n|e|d|i|n|=|t+0#0000001#ffff4012|e|s|t|C|o|n|t|a|i|n|e|r| +0#0000000#ffffff0@41
-@57|1|0|5|,|0|-|1| @6|2|7|%| 
+@57|1|0|5|,|0|-|1| @6|2|6|%| 
index 696f88cb0729d2b3395dacb234f7f90a67e02305..a4be8bb7d6f21cbd5cbd8ac1bbb44f2ff879dd46 100644 (file)
@@ -17,4 +17,4 @@
 @6|"+0#0000e05&|\| |k|e|y|w|o|r|d| |3| +0#0000000&@56
 @6|\+0#e000e06&| +0#0000000&|k|e|y|w|o|r|d|3| @58
 @75
-@57|1|2@1|,|7| @8|3|2|%| 
+@57|1|2@1|,|7| @8|3|1|%| 
index 156ff01e59b4852348a07b6c34ebbae4d4185811..744f23d907e68f1cf0cb3cd0465453ea74a03352 100644 (file)
@@ -17,4 +17,4 @@
 @6|"+0#0000e05&|\| |c@1|h|a|r| |o|p|t|i|o|n| +0#0000000&@53
 @6|\+0#e000e06&| +0#0000000&|c+0#e000e06&@1|h|a|r|=|&+0#e000002&| +0#0000000&@59
 @6|"+0#0000e05&|\| |c|o|n|t|a|i|n|e|d| |o|p|t|i|o|n| +0#0000000&@49
-@57|1|4|0|,|7| @8|3|7|%| 
+@57|1|4|0|,|7| @8|3|6|%| 
index a7ed5c811e60f55bf07a41a274c78246095e4b05..e42e016cc48d1c3cdea38f7a6cfce4c1331deefc 100644 (file)
@@ -17,4 +17,4 @@
 @6|"+0#0000e05&|\| +0#0000000&|f+0#0000e05&|o|l|d| +0#0000000&|o+0#0000e05&|p|t|i|o|n| +0#0000000&@54
 @6|\+0#e000e06&| +0#0000000&|f+0#e000e06&|o|l|d| +0#0000000&@62
 @6|"+0#0000e05&|\| |d|i|s|p|l|a|y| |o|p|t|i|o|n| +0#0000000&@51
-@57|1|5|8|,|7| @8|4|2|%| 
+@57|1|5|8|,|7| @8|4|1|%| 
index 7031132d74019bb4fac2e158cd40114b666f40e9..983f1d5faf6756ecf8bda846f663c1c7192dfc4d 100644 (file)
@@ -17,4 +17,4 @@
 @6|\+0#e000e06&| +0#0000000&|e+0#00e0003&|n|d|=|"+0#e000002&|e|n|d|-|p|a|t@1|e|r|n|"| +0#0000000&@49
 @6|"+0#0000e05&|\| |c|o|n|c|e|a|l| |o|p|t|i|o|n| +0#0000000&@51
 @6|\+0#e000e06&| +0#0000000&|c+0#e000e06&|o|n|c|e|a|l| +0#0000000&@59
-@57|1|7|6|,|7| @8|4|7|%| 
+@57|1|7|6|,|7| @8|4|5|%| 
index c14f06636a04b1e37151d436d4af5f21075f5336..1e7ba636405548851d5407e2c012821feca724f7 100644 (file)
@@ -17,4 +17,4 @@
 @6|\+0#e000e06&| +0#0000000&|s+0#e000e06&|k|i|p|n|l| +0#0000000&@60
 @6|"+0#0000e05&|\| |c|o|n|t|a|i|n|s| |o|p|t|i|o|n| +0#0000000&@50
 @6|\+0#e000e06&| +0#0000000&|c+0#e000e06&|o|n|t|a|i|n|s|=|t+0#0000001#ffff4012|e|s|t|C|o|n|t|a|i|n|e|d|1|,|t|e|s|t|C|o|n|t|a|i|n|e|d|2| +0#0000000#ffffff0@28
-@57|1|9|4|,|7| @8|5|2|%| 
+@57|1|9|4|,|7| @8|5|0|%| 
index 28a905a8f845dc2d3c2eaf81bd9323ddf5616371..a7489b56532bbfcacf592f9226edb5cc2714fbf5 100644 (file)
@@ -17,4 +17,4 @@
 |s+0#af5f00255&|y|n| +0#0000000&|c+0#00e0003&|l|u|s|t|e|r| +0#0000000&|t|e|s|t|C|l|u|s|t|e|r| @51
 @6|"+0#0000e05&|\| |O|P|T|I|O|N|S| +0#0000000&@58
 @6|"+0#0000e05&|\| |c|o|n|t|a|i|n|s| |o|p|t|i|o|n| +0#0000000&@50
-@57|2|1|2|,|7| @8|5|7|%| 
+@57|2|1|2|,|7| @8|5@1|%| 
index e828336806042c940e52cd94113f8d85bb96054e..c9068bdb5f3a76139575af503e4329a265b0bd06 100644 (file)
@@ -17,4 +17,4 @@
 |s+0#af5f00255&|y|n| +0#0000000&|k+0#00e0003&|e|y|w|o|r|d| +0#0000000&|t|e|s|t|N|e|x|t|3| |k|e|y|w|o|r|d| @45
 |s+0#af5f00255&|y|n| +0#0000000&|k+0#00e0003&|e|y|w|o|r|d| +0#0000000&|t|e|s|t|N|e|x|t|4| |k|e|y|w|o|r|d| @45
 |s+0#af5f00255&|y|n| +0#0000000&|k+0#00e0003&|e|y|w|o|r|d| +0#0000000&|t|e|s|t|N|e|x|t|5| |k|e|y|w|o|r|d| @45
-@57|2|3|0|,|7| @8|6|2|%| 
+@57|2|3|0|,|7| @8|6|0|%| 
index f648fee7581958d950d06f852fb98eb07dff4000..13cf00d22496d858cef03eefdbfd74b3ba3a0742 100644 (file)
@@ -17,4 +17,4 @@
 @6|\+0#e000e06&| +0#0000000&|k|e|y|w|o|r|d|4| @58
 @6|\+0#e000e06&| +0#0000000&|k|e|y|w|o|r|d|5| @58
 @6|\+0#e000e06&| +0#0000000&|k|e|y|w|o|r|d|6| @58
-@57|2|4|8|,|0|-|1| @6|6|7|%| 
+@57|2|4|8|,|0|-|1| @6|6|5|%| 
index 6945ec2c621ecef4e1405124d32ceadbc96d509d..4bec90ecb3c7a0d196d263b245637d34756639d3 100644 (file)
@@ -17,4 +17,4 @@
 @6|\+0#e000e06&| +0#0000000&|t+0#0000001#ffff4012|e|x|t|N|e|x|t|6|,+0#0000000#ffffff0| @56
 @6|"+0#0000e05&|\| +0#0000000&|c+0#0000e05&|o|m@1|e|n|t| +0#0000000&@58
 @6|\+0#e000e06&| +0#0000000&|t+0#0000001#ffff4012|e|x|t|N|e|x|t|7| +0#0000000#ffffff0|,| @55
-@57|2|6@1|,|7| @8|7|2|%| 
+@57|2|6@1|,|7| @8|7|0|%| 
index 3d1a002d69580a374657dba917d54bae5014eb62..8d668d55a154f8d735742442ce78bcd0e8fb8ba0 100644 (file)
@@ -17,4 +17,4 @@
 @6|\+0#e000e06&| +0#0000000&|,| |t+0#0000001#ffff4012|e|x|t|N|e|x|t|1|7| +0#0000000#ffffff0|,| |t+0#0000001#ffff4012|e|x|t|N|e|x|t|1|8| +0#0000000#ffffff0|,| @39
 @6|"+0#0000e05&|\| +0#0000000&|c+0#0000e05&|o|m@1|e|n|t| +0#0000000&@58
 @6|\+0#e000e06&| +0#0000000&|t+0#0000001#ffff4012|e|x|t|N|e|x|t|1|9|,+0#0000000#ffffff0| |@+0#0000001#ffff4012|t|e|s|t|C|l|u|s|t|e|r| +0#0000000#ffffff0@42
-@57|2|8|4|,|7| @8|7@1|%| 
+@57|2|8|4|,|7| @8|7|5|%| 
index c923c00d4532cd6a254ab3631599f220078e8994..056116d2a6f02723231ab318126a1586ee82e59c 100644 (file)
@@ -17,4 +17,4 @@
 |f+0#af5f00255&|u|n|c|t|i|o|n|!| +0#0000000&|s+0#e000e06&|:|C+0#0000000&|o|n|t|a|i|n|e|d|G|r|o|u|p|(+0#e000e06&|)| +0#0000000&@46
 @2|"+0#0000e05&| |.@2| +0#0000000&@67
 @2|f+0#af5f00255&|o|r| +0#0000000&|c+0#00e0e07&|l|u|s|t|e|r| +0#0000000&|i+0#af5f00255&|n| +0#0000000&|[+0#e000e06&|'+0#e000002&|m|a|r|k|d|o|w|n|H|i|g|h|l|i|g|h|t|_|z|s|h|'|,+0#0000000&| |'+0#e000002&|z|s|h|'|]+0#e000e06&| +0#0000000&@25
-@57|3|0|2|,|7| @8|8|2|%| 
+@57|3|0|2|,|7| @8|8|0|%| 
index 605dc0cba1356885387bc4dae6f03f98b3d4cdf6..e96cf04d384d0919a24366c280090dffaad20862 100644 (file)
@@ -17,4 +17,4 @@
 |"+0#0000e05&| |I|s@1|u|e| |#|1|8|4|9|1| |(|T|w|o| |"+0#e000002&|)|"|s+0#0000e05&| |a|r|e| |i|n|c|o|r@1|e|c|t|l|y| |c|o|l|o|r|e|d| |'|v|i|m|O|p|e|r|E|r@1|o|r|'| |i|n| |s|y|n|t|a|x|/|m
 |a|i|l|.|v|i|m|)| +0#0000000&@66
 @75
-@57|3|2|0|,|0|-|1| @6|8|7|%| 
+@57|3|2|0|,|0|-|1| @6|8|4|%| 
index 3dbd5826bf175a42963774875bdf2892c240e656..34b80d9e2eebbb45056eec2c521cade455c98824 100644 (file)
@@ -17,4 +17,4 @@
 @75
 |"+0#0000e05&| |C|o|d|e| |>| |K|e|y|w|o|r|d|s| |{@2|2| +0#0000000&@52
 |s+0#af5f00255&|y|n|t|a|x| +0#0000000&|c+0#00e0003&|l|u|s|t|e|r| +0#0000000&|t|y|p|s|t|C|o|d|e|K|e|y|w|o|r|d|s| @42
-@57|3@1|6|,|1| @8|9|2|%| 
+@57|3@1|6|,|1| @8|8|9|%| 
index e05dc9912761016f6a5f30825e03b359ac4a958a..ed355d795cdd0b6d941a7e3aeb2f64e3fc8a7a33 100644 (file)
@@ -17,4 +17,4 @@
 @4|\+0#e000e06&| +0#0000000&|c+0#e000e06&|o|n|t|a|i|n|s|=| +0#0000000&@59
 @12|"+0#0000e05&|\| +0#0000000&|c+0#0000e05&|o|m@1|e|n|t| +0#0000000&@52
 @12|\+0#e000e06&| +0#0000000&@1|t+0#0000001#ffff4012|y|p|s|t|C|o|d|e|C|o|n|d|i|t|i|o|n|a|l| +0#0000000#ffffff0@39
-@57|3|5|4|,|0|-|1| @6|9|7|%| 
+@57|3|5|4|,|0|-|1| @6|9|4|%| 
index e0746ea9d691733d890802679bfdeaec3ce963bc..20477577ec24308c10dcf056a02700246047c891 100644 (file)
 |s+0#af5f00255&|y|n| +0#0000000&|r+0#00e0003&|e|g|i|o|n| +0#0000000&@1|s|l|r|n|r|c|C|m|d|L|i|n|e| @6|m+0#e000e06&|a|t|c|h|g|r|o|u|p|=|s+0#0000000&|l|r|n|r|c|C|m|d| |s+0#00e0003&|t|a|r|t|=|"+0#e000002&|\|<|\+0#e000e06&|(|a+0#e000002&|u|t|o|b|a|u|d|\+0#e000e06&|||.+0#e000002&
 @2|\+0#e000e06&|||v+0#e000002&|i|s|i|b|l|e|_|h|e|a|d|e|r|s|\+0#e000e06&|)|\+0#e000002&|>|"| +0#0000000&|e+0#00e0003&|n|d|=|"+0#e000002&|$|"| +0#0000000&|o+0#e000e06&|n|e|l|i|n|e| +0#0000000&|c+0#e000e06&|o|n|t|a|i|n|s|=|s+0#0000001#ffff4012|l|r|n|r|c|\|(|S|t|r|i|n|g|\|||C|o|m@1|e|n|t|\|)
 | +0#0000000#ffffff0@74
-|~+0#4040ff13&| @73
-|~| @73
-|~| @73
-|~| @73
-|~| @73
-|~| @73
-| +0#0000000&@56|3|7|2|,|0|-|1| @6|B|o|t
+|"+0#0000e05&| |:|s|y|n|t|a|x| |k|e|y|w|o|r|d| |—| |o|n|e|l|i|n|e| |a|c@1|e|p|t|e|d| |b|u|t| |m|e|a|n|i|n|g|l|e|s@1| +0#0000000&@22
+|s+0#af5f00255&|y|n|t|a|x| +0#0000000&|k+0#00e0003&|e|y|w|o|r|d| +0#0000000&|T|e|s|t|K|w| |f|o@1| |b|a|r| |o+0#ffffff16#ff404010|n|e|l|i|n|e| +0#0000000#ffffff0@37
+|s+0#af5f00255&|y|n|t|a|x| +0#0000000&|k+0#00e0003&|e|y|w|o|r|d| +0#0000000&|T|e|s|t|K|w|2| |o+0#ffffff16#ff404010|n|e|l|i|n|e| +0#0000000#ffffff0|b|a|z| |q|u@1|x| @35
+@75
+|"+0#0000e05&| |:|s|y|n|t|a|x| |m|a|t|c|h| |—| |o|n|e|l|i|n|e| |a|c@1|e|p|t|e|d| |b|u|t| |m|e|a|n|i|n|g|l|e|s@1| +0#0000000&@24
+|s+0#af5f00255&|y|n|t|a|x| +0#0000000&|m+0#00e0003&|a|t|c|h| +0#0000000&|T|e|s|t|M|a|t|c|h| |/+0#e000002&|\|<|f|o@1|\|>|/| +0#0000000&|o+0#ffffff16#ff404010|n|e|l|i|n|e| +0#0000000#ffffff0@34
+@57|3|7|2|,|0|-|1| @6|9|8|%
diff --git a/runtime/syntax/testdir/dumps/vim_ex_syntax_22.dump b/runtime/syntax/testdir/dumps/vim_ex_syntax_22.dump
new file mode 100644 (file)
index 0000000..7c1765f
--- /dev/null
@@ -0,0 +1,20 @@
+|s+0#af5f00255#ffffff0|y|n|t|a|x| +0#0000000&|m+0#00e0003&|a|t|c|h| +0#0000000&|T|e|s|t|M|a|t|c|h| |/+0#e000002&|\|<|f|o@1|\|>|/| +0#0000000&|o+0#ffffff16#ff404010|n|e|l|i|n|e| +0#0000000#ffffff0@34
+|s+0#af5f00255&|y|n|t|a|x| +0#0000000&|m+0#00e0003&|a|t|c|h| +0#0000000&|T|e|s|t|M|a|t|c|h|2| |o+0#ffffff16#ff404010|n|e|l|i|n|e| +0#0000000#ffffff0|/+0#e000002&|\|<|b|a|r|\|>|/| +0#0000000&@33
+@75
+|"+0#0000e05&| |:|s|y|n|t|a|x| |r|e|g|i|o|n| |—| |o|n|e|l|i|n|e| |i|s| |m|e|a|n|i|n|g|f|u|l| |h|e|r|e| +0#0000000&@29
+|s+0#af5f00255&|y|n|t|a|x| +0#0000000&|r+0#00e0003&|e|g|i|o|n| +0#0000000&|T|e|s|t|R|e|g|i|o|n| |s+0#00e0003&|t|a|r|t|=|/+0#e000002&|{|/| +0#0000000&|e+0#00e0003&|n|d|=|/+0#e000002&|}|/| +0#0000000&|o+0#e000e06&|n|e|l|i|n|e| +0#0000000&@24
+>s+0#af5f00255&|y|n|t|a|x| +0#0000000&|r+0#00e0003&|e|g|i|o|n| +0#0000000&|T|e|s|t|R|e|g|i|o|n|2| |o+0#e000e06&|n|e|l|i|n|e| +0#0000000&|s+0#00e0003&|t|a|r|t|=|/+0#e000002&|"|/| +0#0000000&|e+0#00e0003&|n|d|=|/+0#e000002&|"|/| +0#0000000&@23
+|s+0#af5f00255&|y|n|t|a|x| +0#0000000&|r+0#00e0003&|e|g|i|o|n| +0#0000000&|T|e|s|t|R|e|g|i|o|n|3| |s+0#00e0003&|t|a|r|t|=|/+0#e000002&|\|/|\|*|/| +0#0000000&|e+0#00e0003&|n|d|=|/+0#e000002&|\|*|\|/@1| +0#0000000&|o+0#e000e06&|n|e|l|i|n|e| +0#0000000&|c+0#e000e06&|o|n|t|a|i|n|e|d|i|n|=|A|L@1| +0#0000000&@1
+|~+0#4040ff13&| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+| +0#0000000&@56|3|8@1|,|1| @8|B|o|t| 
index 851931206c2f01e089db3bcb80ab265029bdad26..f8412446bab734a1e05dee103fd51f19ad0b965e 100644 (file)
@@ -375,3 +375,15 @@ syntax cluster typstCodeKeywords
 syn match   slrnrcColorInit    contained "^\s*color\s\+\S\+" skipwhite nextgroup=slrnrcColorVal\(Str\)\= contains=slrnrcColor\(Obj\|ObjStr\)\=
 syn region  slrnrcCmdLine       matchgroup=slrnrcCmd start="\<\(autobaud\|...\|visible_headers\)\>" end="$" oneline contains=slrnrc\(String\|Comment\)
 
+" :syntax keyword — oneline accepted but meaningless
+syntax keyword TestKw foo bar oneline
+syntax keyword TestKw2 oneline baz quux
+
+" :syntax match — oneline accepted but meaningless
+syntax match TestMatch /\<foo\>/ oneline
+syntax match TestMatch2 oneline /\<bar\>/
+
+" :syntax region — oneline is meaningful here
+syntax region TestRegion start=/{/ end=/}/ oneline
+syntax region TestRegion2 oneline start=/"/ end=/"/
+syntax region TestRegion3 start=/\/\*/ end=/\*\// oneline containedin=ALL
index a390df78ed5a17a9295ce7273831139c6b2d7f45..0780f8695e0d39a80f8a9874de359f1672a0fdb0 100644 (file)
@@ -2,7 +2,7 @@
 " Language:       Vim script
 " Maintainer:     Hirohito Higashi <h.east.727 ATMARK gmail.com>
 "         Doug Kearns <dougkearns@gmail.com>
-" Last Change:    2026 Apr 15
+" Last Change:    2026 Apr 20
 " Former Maintainer: Charles E. Campbell
 
 " DO NOT CHANGE DIRECTLY.
@@ -1923,10 +1923,11 @@ syn keyword     vimSynType              contained       include skipwhite nextgroup=vimSynIncludeClust
 syn match      vimSynIncludeCluster    contained       "@[_a-zA-Z0-9]\+\>"
 
 " Syntax: keyword {{{2
-syn cluster    vimSynKeyGroup  contains=@vimContinue,vimSynCchar,vimSynNextgroup,vimSynKeyOpt,vimSynContainedin
+syn cluster    vimSynKeyGroup  contains=@vimContinue,vimSynCchar,vimSynNextgroup,vimSynKeyOpt,vimSynContainedin,vimSynKeyError
 syn keyword    vimSynType      contained       keyword skipwhite nextgroup=vimSynKeyRegion
 syn region     vimSynKeyRegion contained         keepend       matchgroup=vimGroupName start="\h\w*\>" skip=+\\\\\|\\|\|\n\s*\%(\\\|"\\ \)+ matchgroup=vimCmdSep end="|\|$" contains=@vimSynKeyGroup
 syn match      vimSynKeyOpt    contained       "\%#=1\<\%(conceal\|contained\|transparent\|skipempty\|skipwhite\|skipnl\)\>"
+syn match      vimSynKeyError  contained       "\<oneline\>"
 
 " Syntax: match {{{2
 syn cluster    vimSynMtchGroup contains=@vimContinue,vimSynCchar,vimSynContains,vimSynContainedin,vimSynError,vimSynMtchOpt,vimSynNextgroup,vimSynRegPat,vimNotation,vimMtchComment
@@ -2494,6 +2495,7 @@ if !exists("skip_vim_syntax_inits")
   hi def link vimSyncError     vimError
   hi def link vimSynConcealError       vimError
   hi def link vimSynError      vimError
+  hi def link vimSynKeyError   vimError
   hi def link vimSynFoldlevelError     vimError
   hi def link vimSynIskeywordError     vimError
   hi def link vimSynSpellError vimError