diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index a44b6f6..fe6865e 100644
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt*	For Vim version 9.1.  Last change: 2025 Mar 15
+*syntax.txt*	For Vim version 9.1.  Last change: 2025 Mar 21
 
 
 		  VIM REFERENCE MANUAL	  by Bram Moolenaar
@@ -3512,25 +3512,25 @@
 /bin/sh  /bin/ksh  /bin/bash).  If the first line specifies a shelltype, then
 that shelltype is used.  However some files (ex. .profile) are known to be
 shell files but the type is not apparent.  Furthermore, on many systems sh is
-symbolically linked to "bash" (Linux, Windows+cygwin) or "ksh" (Posix).
+symbolically linked to "bash" (Linux, Windows+cygwin) or "ksh" (POSIX).
 
 One may specify a global default by instantiating one of the following
 variables in your <.vimrc>:
 
    ksh: >
 	let g:is_kornshell = 1
-<   posix:  (using this is nearly the same as setting g:is_kornshell to 1) >
+<   posix: (default) >
 	let g:is_posix     = 1
 <   bash: >
 	let g:is_bash	   = 1
-<   sh: (default) Bourne shell >
+<   dash: >
+	let g:is_dash	   = 1
+<   sh: Bourne shell >
 	let g:is_sh	   = 1
 
-<   (dash users should use posix)
-
 If there's no "#! ..." line, and the user hasn't availed himself/herself of a
 default sh.vim syntax setting as just shown, then syntax/sh.vim will assume
-the Bourne shell syntax.  No need to quote RFCs or market penetration
+the POSIX shell syntax.  No need to quote RFCs or market penetration
 statistics in error reports, please -- just select the default version of the
 sh your system uses and install the associated "let..." in your <.vimrc>.
 
diff --git a/runtime/syntax/sh.vim b/runtime/syntax/sh.vim
index 67268cd..37d1c0a 100644
--- a/runtime/syntax/sh.vim
+++ b/runtime/syntax/sh.vim
@@ -7,6 +7,7 @@
 "		2024 Nov 03 by Aliaksei Budavei <0x000c70 AT gmail DOT com> (improved bracket expressions, #15941)
 "		2025 Jan 06 add $PS0 to bashSpecialVariables (#16394)
 "		2025 Jan 18 add bash coproc, remove duplicate syn keywords (#16467)
+"		2025 Mar 21 update shell capability detection (#16939)
 " Version:		208
 " Former URL:		http://www.drchip.org/astronaut/vim/index.html#SYNTAX_SH
 " For options and settings, please use:      :help ft-sh-syntax
@@ -17,6 +18,9 @@
   finish
 endif
 
+" Ensure this is set unless we find another shell
+let b:is_sh = 1
+
 " If the shell script itself specifies which shell to use, use it
 if getline(1) =~ '\<ksh\>'
  let b:is_kornshell = 1
@@ -24,55 +28,45 @@
  let b:is_bash      = 1
 elseif getline(1) =~ '\<dash\>'
  let b:is_dash      = 1
-elseif !exists("g:is_kornshell") && !exists("g:is_bash") && !exists("g:is_posix") && !exists("g:is_sh") && !exists("g:is_dash")
- " user did not specify which shell to use, and
- " the script itself does not specify which shell to use. FYI: /bin/sh is ambiguous.
- " Assuming /bin/sh is executable, and if its a link, find out what it links to.
- let s:shell = ""
- if executable("/bin/sh")
-  let s:shell = resolve("/bin/sh")
- elseif executable("/usr/bin/sh")
-  let s:shell = resolve("/usr/bin/sh")
- endif
- if     s:shell =~ '\<ksh\>'
-  let b:is_kornshell= 1
- elseif s:shell =~ '\<bash\>'
-  let b:is_bash = 1
- elseif s:shell =~ '\<dash\>'
-  let b:is_dash = 1
- endif
- unlet s:shell
-endif
-
 " handling /bin/sh with is_kornshell/is_sh {{{1
 " b:is_sh will be set when "#! /bin/sh" is found;
 " However, it often is just a masquerade by bash (typically Linux)
 " or kornshell (typically workstations with Posix "sh").
-" So, when the user sets "g:is_bash", "g:is_kornshell",
-" or "g:is_posix", a b:is_sh is converted into b:is_bash/b:is_kornshell,
-" respectively.
-if !exists("b:is_kornshell") && !exists("b:is_bash") && !exists("b:is_dash")
-  if exists("g:is_posix") && !exists("g:is_kornshell")
-   let g:is_kornshell= g:is_posix
+" So, when the user sets "g:is_kornshell", "g:is_bash",
+" "g:is_posix" or "g:is_dash", a b:is_sh is converted into
+" b:is_kornshell/b:is_bash/b:is_posix/b:is_dash, respectively.
+elseif !exists("b:is_kornshell") && !exists("b:is_bash") && !exists("b:is_posix") && !exists("b:is_dash")
+ if exists("g:is_kornshell")
+  let b:is_kornshell= 1
+ elseif exists("g:is_bash")
+  let b:is_bash= 1
+ elseif exists("g:is_dash")
+  let b:is_dash= 1
+ elseif exists("g:is_posix")
+  let b:is_posix= 1
+ elseif exists("g:is_sh")
+  let b:is_sh= 1
+ else
+  " user did not specify which shell to use, and
+  " the script itself does not specify which shell to use. FYI: /bin/sh is ambiguous.
+  " Assuming /bin/sh is executable, and if its a link, find out what it links to.
+  let s:shell = ""
+  if executable("/bin/sh")
+   let s:shell = resolve("/bin/sh")
+  elseif executable("/usr/bin/sh")
+   let s:shell = resolve("/usr/bin/sh")
   endif
-  if exists("g:is_kornshell")
-    let b:is_kornshell= 1
-    if exists("b:is_sh")
-      unlet b:is_sh
-    endif
-  elseif exists("g:is_bash")
-    let b:is_bash= 1
-    if exists("b:is_sh")
-      unlet b:is_sh
-    endif
-  elseif exists("g:is_dash")
-    let b:is_dash= 1
-    if exists("b:is_sh")
-      unlet b:is_sh
-    endif
+  if     s:shell =~ '\<ksh\>'
+   let b:is_kornshell= 1
+  elseif s:shell =~ '\<bash\>'
+   let b:is_bash = 1
+  elseif s:shell =~ '\<dash\>'
+   let b:is_dash = 1
   else
-    let b:is_sh= 1
+   let b:is_posix = 1
   endif
+  unlet s:shell
+ endif
 endif
 
 " if b:is_dash, set b:is_posix too
@@ -80,6 +74,12 @@
  let b:is_posix= 1
 endif
 
+if exists("b:is_kornshell") || exists("b:is_bash")
+ if exists("b:is_sh")
+  unlet b:is_sh
+ endif
+endif
+
 " set up default g:sh_fold_enabled {{{1
 " ================================
 if !exists("g:sh_fold_enabled")
