Files
Johnothan King 56033b9df3 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: #19383

Signed-off-by: Johnothan King <johnothanking@protonmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
2026-02-12 18:18:44 +01:00

21 lines
1.3 KiB
Plaintext
Generated

|w+0#af5f00255#ffffff0|c| +0#0000000&@72
|x+0#af5f00255&|a|r|g|s| +0#0000000&@10|#+0#0000e05&| |9|3|v|-| +0#0000000&@52
|x|g|r|e|p| @10|#+0#0000e05&| |O|b|s|o|l|e|s|c|e|n|t|;| |o|n|l|y| |9|3|v|-| |a|l@1|o|w|s| |i|n|v|o|k|i|n|g| |'|g|r|e|p| |-|X|'| |a|s| |'|x|g|r|e
|p|'| +0#0000000&@72
@75
>#+0#0000e05&| |S|H|A| |c|o|m@1|a|n|d| |n|o|t| |p|r|o|v|i|d|e|d| |a|s| |a| |b|u|i|l|t|i|n| |b|u|t| |i|n|c|l|u|d|e|d| |h|e|r|e| |f|o|r| |c|o|m|p|l|e|t|e|n|e|s@1| +0#0000000&
|s+0#af5f00255&|h|a|2@1|4|s|u|m| +0#0000000&@65
@75
|#+0#0000e05&| |p|o|l@1| |b|u|i|l|t|i|n| |(|9|3|v|-|)| +0#0000000&@53
|p|o|l@1| |-+0#e000e06&@1|m|a|n| +0#0000000&@64
@75
|#+0#0000e05&| |m|k|s|e|r|v|i|c|e| |a|n|d| |e|l|o@1|p| |(|r|a|r|e|l|y| |p|r|o|v|i|d|e|d|;| |r|e|q|u|i|r|e|s| |S|H|O|P|T|_|M|K|S|E|R|V|I|C|E|)| +0#0000000&@9
|m|k|s|e|r|v|i|c|e| |-+0#e000e06&@1|m|a|n|;+0#0000000&| |e|l|o@1|p| |-+0#e000e06&@1|h|e|l|p| +0#0000000&@45
@75
|#+0#0000e05&| |s|o|m|e| |m|k|s|h| |b|u|i|l|t|i|n|s|,| |r|e|n|a|m|e| |s|h|o|u|l|d| |b|e| |h|i|g|h|l|i|g|h|t|e|d| |a|s| |a|n| |e|x|t|e|r|n|a|l| |c|o|m@1|a|n|d| +0#0000000&@1
|b|i|n|d|;| |r+0#af5f00255&|e|n|a|m|e| +0#0000000&@62
@75
|#+0#0000e05&| |;|&| |a|n|d| |;@1|&| |i|n| |c|a|s|e| |s|t|a|t|e|m|e|n|t|s| +0#0000000&@43
|c+0#af5f00255&|a|s|e| +0#0000000&|x| |i+0#af5f00255&|n| +0#0000000&@65
@57|8|2|,|1| @9|4|0|%|