0
0
mirror of https://github.com/vim/vim.git synced 2025-09-24 03:44:06 -04:00

runtime(sh): refactored sh.vim syntax script

- unified bashStatement, kshStatement and shStatement as much as
  possible
- separated builtin commands from external programs
- cleaned up kornshell flavor logic
- fixed alias syntax highlighting
- added test for bash alias syntax highlighting
- removed daemon keyword

closes: #18355

Signed-off-by: Bjoern Foersterling <bjoern.foersterling@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
Bjoern Foersterling
2025-09-23 19:47:29 +00:00
committed by Christian Brabandt
parent da5b6007fb
commit 11bde1f169
18 changed files with 555 additions and 539 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -16,5 +16,5 @@
|(+0#e000e06&| |c+0#af5f00255&|d| +0#e000e06&|$|{|H|O|M|E|}| |;+0#af5f00255&| +0#e000e06&|$|p|w|d| |)| +0#0000000&||| |w+0#af5f00255&|c| +0#0000000&|-+0#e000e06&|c| +0#0000000&@45
|(+0#e000e06&| |c+0#af5f00255&|d| +0#e000e06&|$|{|H|O|M|E|}| |)| +0#0000000&||| |w+0#af5f00255&|c| +0#0000000&|-+0#e000e06&|c| +0#0000000&@52
|(|(+0#e000e06&|n+0#00e0e07&|=+0#0000000&|1+0#e000002&|+|2|)+0#e000e06&|)+0#ffffff16#ff404010| +0#0000000#ffffff0@65
|l+0#af5f00255&|e|t| +0#0000000&|n+0#00e0e07&|=+0#0000000&|1+0#e000002&|++0#0000000&|2+0#e000002&| +0#0000000&@65
|i|s|_|d|a|s|h|:| |1|,| |i|s|_|p|o|s|i|x|:| |1|,| |i|s|_|s|h|:| |1|,| @22|1|,|1| @10|A|l@1|
|#+0#0000e05&| |t|h|i|s| |i|s| |a| |s|y|n|t|a|x| |e|r@1|o|r|,| |"|l|e|t|"| |i|s| |n|o|t| |a| |k|e|y|w|o|r|d| |i|n| |d|a|s|h| +0#0000000&@18
|i|s|_|d|a|s|h|:| |1|,| |i|s|_|p|o|s|i|x|:| |1|,| |i|s|_|s|h|:| |1|,| @22|1|,|1| @10|T|o|p|

View File

@@ -0,0 +1,20 @@
|(+0#e000e06#ffffff0| |c+0#af5f00255&|d| +0#e000e06&|;+0#af5f00255&| +0#e000e06&|$|p|w|d| |)| +0#0000000&||| |w+0#af5f00255&|c| +0#0000000&|-+0#e000e06&|c| +0#0000000&@53
|(+0#e000e06&| |c+0#af5f00255&|d| +0#e000e06&|$|H|O|M|E| |;+0#af5f00255&| +0#e000e06&|$|p|w|d| |)| +0#0000000&||| |w+0#af5f00255&|c| +0#0000000&|-+0#e000e06&|c| +0#0000000&@47
|(+0#e000e06&| |c+0#af5f00255&|d| +0#e000e06&|$|{|H|O|M|E|}| |;+0#af5f00255&| +0#e000e06&|$|p|w|d| |)| +0#0000000&||| |w+0#af5f00255&|c| +0#0000000&|-+0#e000e06&|c| +0#0000000&@45
|(+0#e000e06&| |c+0#af5f00255&|d| +0#e000e06&|$|{|H|O|M|E|}| |)| +0#0000000&||| |w+0#af5f00255&|c| +0#0000000&|-+0#e000e06&|c| +0#0000000&@52
|(|(+0#e000e06&|n+0#00e0e07&|=+0#0000000&|1+0#e000002&|+|2|)+0#e000e06&|)+0#ffffff16#ff404010| +0#0000000#ffffff0@65
>#+0#0000e05&| |t|h|i|s| |i|s| |a| |s|y|n|t|a|x| |e|r@1|o|r|,| |"|l|e|t|"| |i|s| |n|o|t| |a| |k|e|y|w|o|r|d| |i|n| |d|a|s|h| +0#0000000&@18
|l|e|t| |n+0#00e0e07&|=+0#0000000&|1+0#e000002&|++0#0000000&|2+0#e000002&| +0#0000000&@65
|~+0#4040ff13&| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
| +0#0000000&@56|1|9|,|1| @9|B|o|t|

View File

@@ -0,0 +1,20 @@
>#+0#0000e05#ffffff0|!|/|u|s|r|/|b|i|n|/|b|a|s|h| +0#0000000&@59
@75
|a+0#af5f00255&|l|i|a|s| |l+0#00e0e07&|s|=+0#af5f00255&|'|l+0#e000002&|s| |-@1|c|o|l|o|r|=|a|u|t|o|'+0#af5f00255&| +0#0000000&@48
|~+0#4040ff13&| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|~| @73
|i+0#0000000&|s|_|b|a|s|h|:| |1|,| @45|1|,|1| @10|A|l@1|

View File

@@ -11,8 +11,8 @@
|#+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| +0#0000000&@54
|b|i|n|d|;| |r|e|n|a|m|e| @62
|#+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| |e|x|t|e|r|n|a|l| |p|r|o|g|r|a|m| +0#0000000&@4
|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

View File

@@ -11,8 +11,8 @@
|#+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| +0#0000000&@54
|b|i|n|d|;| |r|e|n|a|m|e| @62
|#+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| |e|x|t|e|r|n|a|l| |p|r|o|g|r|a|m| +0#0000000&@4
|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

View File

@@ -11,8 +11,8 @@
|#+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| +0#0000000&@54
|b|i|n|d|;| |r|e|n|a|m|e| @62
|#+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| |e|x|t|e|r|n|a|l| |c|o|m@1|a|n|d| +0#0000000&@4
|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

View File

@@ -11,8 +11,8 @@
|#+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| +0#0000000&@54
|b|i|n|d|;| |r|e|n|a|m|e| @62
|#+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| |e|x|t|e|r|n|a|l| |p|r|o|g|r|a|m| +0#0000000&@4
|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

View File

@@ -17,4 +17,4 @@
|m+0#af5f00255&|k|f|i|f|o| +0#0000000&@68
|m+0#af5f00255&|k|t|e|m|p| +0#0000000&@68
|m+0#af5f00255&|v| +0#0000000&@72
@57|1|9|,|1| @9|3|4|%|
@57|1|9|,|1| @9|3@1|%|

View File

@@ -17,4 +17,4 @@
|s+0#af5f00255&|y|n|c| +0#0000000&@70
|t+0#af5f00255&|a|i|l| +0#0000000&@70
|t+0#af5f00255&|e@1| +0#0000000&@71
@57|3|7|,|1| @9|8|1|%|
@57|3|7|,|1| @9|7|9|%|

View File

@@ -5,7 +5,8 @@
|u+0#af5f00255&|n|i|q| +0#0000000&@70
>w+0#af5f00255&|c| +0#0000000&@72
|x+0#af5f00255&|a|r|g|s| +0#0000000&@69
|x+0#af5f00255&|g|r|e|p| +0#0000000&@69
|#+0#0000e05&| |x|g|r|e|p| |i|s| |n|e|i|t|h|e|r| |a| |b|u|i|l|t|i|n| |f|o|r| |b|a|s|h| |n|o|r| |a|n| |e|x|t|e|r|n|a|l| |p|r|o|g|r|a|m| +0#0000000&@13
|x|g|r|e|p| @69
|~+0#4040ff13&| @73
|~| @73
|~| @73
@@ -16,5 +17,4 @@
|~| @73
|~| @73
|~| @73
|~| @73
| +0#0000000&@56|5@1|,|1| @9|B|o|t|

View File

@@ -16,4 +16,5 @@
( cd ${HOME} ; $pwd ) | wc -c
( cd ${HOME} ) | wc -c
((n=1+2))
# this is a syntax error, "let" is not a keyword in dash
let n=1+2

View File

@@ -0,0 +1,3 @@
#!/usr/bin/bash
alias ls='ls --color=auto'

View File

@@ -88,7 +88,7 @@ poll --man
# mkservice and eloop (rarely provided; requires SHOPT_MKSERVICE)
mkservice --man; eloop --help
# some mksh builtins
# some mksh builtins, rename should be highlighted as external program
bind; rename
# ;& and ;;& in case statements

View File

@@ -88,7 +88,7 @@ poll --man
# mkservice and eloop (rarely provided; requires SHOPT_MKSERVICE)
mkservice --man; eloop --help
# some mksh builtins
# some mksh builtins, rename should be highlighted as external program
bind; rename
# ;& and ;;& in case statements

View File

@@ -88,7 +88,7 @@ poll --man
# mkservice and eloop (rarely provided; requires SHOPT_MKSERVICE)
mkservice --man; eloop --help
# some mksh builtins
# some mksh builtins, rename should be highlighted as external command
bind; rename
# ;& and ;;& in case statements

View File

@@ -88,7 +88,7 @@ poll --man
# mkservice and eloop (rarely provided; requires SHOPT_MKSERVICE)
mkservice --man; eloop --help
# some mksh builtins
# some mksh builtins, rename should be highlighted as external program
bind; rename
# ;& and ;;& in case statements

View File

@@ -54,4 +54,5 @@ uname
uniq
wc
xargs
# xgrep is neither a builtin for bash nor an external program
xgrep