diff options
author | Eisuke Kawashima <e-kwsm@users.noreply.github.com> | 2022-11-24 10:58:10 +0000 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2022-11-24 10:58:10 +0000 |
commit | 24482fbfd599d2273c48951df7d00d62f3e66c85 (patch) | |
tree | 7867cb0859f5758b3a3d8e9635bd210f93a97144 | |
parent | 24fe33a83a5130a5369f06d88000a3a0590a59ec (diff) | |
download | vim-git-24482fbfd599d2273c48951df7d00d62f3e66c85.tar.gz |
patch 9.0.0935: when using dash it may not be recognize as filetype "sh"v9.0.0935
Problem: When using dash it may not be recognize as filetype "sh".
Solution: Add checks for "dash". (Eisuke Kawashima,closes #11600)
-rw-r--r-- | runtime/autoload/dist/ft.vim | 3 | ||||
-rw-r--r-- | runtime/autoload/dist/script.vim | 4 | ||||
-rw-r--r-- | src/testdir/test_filetype.vim | 7 | ||||
-rw-r--r-- | src/version.c | 2 |
4 files changed, 13 insertions, 3 deletions
diff --git a/runtime/autoload/dist/ft.vim b/runtime/autoload/dist/ft.vim index 8f744457c..c40e0c84d 100644 --- a/runtime/autoload/dist/ft.vim +++ b/runtime/autoload/dist/ft.vim @@ -712,7 +712,8 @@ export def SetFileTypeSH(name: string) if exists("b:is_sh") unlet b:is_sh endif - elseif name =~ '\<sh\>' + elseif name =~ '\<sh\>' || name =~ '\<dash\>' + # Ubuntu links "sh" to "dash", thus it is expected to work the same way b:is_sh = 1 if exists("b:is_kornshell") unlet b:is_kornshell diff --git a/runtime/autoload/dist/script.vim b/runtime/autoload/dist/script.vim index 9e4196977..8c5441cc8 100644 --- a/runtime/autoload/dist/script.vim +++ b/runtime/autoload/dist/script.vim @@ -53,8 +53,8 @@ def DetectFromHashBang(firstline: string) name = 'wish' endif - # Bourne-like shell scripts: bash bash2 ksh ksh93 sh - if name =~ '^\(bash\d*\|\|ksh\d*\|sh\)\>' + # Bourne-like shell scripts: bash bash2 dash ksh ksh93 sh + if name =~ '^\(bash\d*\|dash\|ksh\d*\|sh\)\>' call dist#ft#SetFileTypeSH(line1) # csh scripts diff --git a/src/testdir/test_filetype.vim b/src/testdir/test_filetype.vim index c7c494aaa..765ee8920 100644 --- a/src/testdir/test_filetype.vim +++ b/src/testdir/test_filetype.vim @@ -704,6 +704,13 @@ let s:script_checks = { \ ['__libc_start_main and something']], \ 'clojure': [['#!/path/clojure']], \ 'scala': [['#!/path/scala']], + \ 'sh': [['#!/path/sh'], + \ ['#!/path/bash'], + \ ['#!/path/bash2'], + \ ['#!/path/dash'], + \ ['#!/path/ksh'], + \ ['#!/path/ksh93']], + \ 'csh': [['#!/path/csh']], \ 'tcsh': [['#!/path/tcsh']], \ 'zsh': [['#!/path/zsh']], \ 'tcl': [['#!/path/tclsh'], diff --git a/src/version.c b/src/version.c index 55f363fb1..42a7e46b6 100644 --- a/src/version.c +++ b/src/version.c @@ -696,6 +696,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 935, +/**/ 934, /**/ 933, |