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:
committed by
Christian Brabandt
parent
da5b6007fb
commit
11bde1f169
File diff suppressed because it is too large
Load Diff
@@ -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|
|
||||
|
20
runtime/syntax/testdir/dumps/sh_09_01.dump
Normal file
20
runtime/syntax/testdir/dumps/sh_09_01.dump
Normal 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|
|
20
runtime/syntax/testdir/dumps/sh_bash_alias_00.dump
Normal file
20
runtime/syntax/testdir/dumps/sh_bash_alias_00.dump
Normal 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|
|
@@ -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
|
||||
|
@@ -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
|
||||
|
@@ -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
|
||||
|
@@ -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
|
||||
|
@@ -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|%|
|
||||
|
@@ -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|%|
|
||||
|
@@ -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|
|
||||
|
@@ -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
|
||||
|
3
runtime/syntax/testdir/input/sh_bash_alias.sh
Normal file
3
runtime/syntax/testdir/input/sh_bash_alias.sh
Normal file
@@ -0,0 +1,3 @@
|
||||
#!/usr/bin/bash
|
||||
|
||||
alias ls='ls --color=auto'
|
@@ -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
|
||||
|
@@ -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
|
||||
|
@@ -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
|
||||
|
@@ -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
|
||||
|
@@ -54,4 +54,5 @@ uname
|
||||
uniq
|
||||
wc
|
||||
xargs
|
||||
# xgrep is neither a builtin for bash nor an external program
|
||||
xgrep
|
||||
|
Reference in New Issue
Block a user