diff --git a/runtime/autoload/dist/ft.vim b/runtime/autoload/dist/ft.vim
index 973d3b0..de45faa 100644
--- a/runtime/autoload/dist/ft.vim
+++ b/runtime/autoload/dist/ft.vim
@@ -1,7 +1,7 @@
 " Vim functions for file type detection
 "
 " Maintainer:	Bram Moolenaar <Bram@vim.org>
-" Last Change:	2017 Dec 05
+" Last Change:	2019 Jan 18
 
 " These functions are moved here from runtime/filetype.vim to make startup
 " faster.
@@ -484,6 +484,10 @@
 
 " Called from filetype.vim and scripts.vim.
 func dist#ft#SetFileTypeSH(name)
+  if did_filetype()
+    " Filetype was already detected
+    return
+  endif
   if expand("<amatch>") =~ g:ft_ignore_pat
     return
   endif
@@ -531,6 +535,10 @@
 " as used for Tcl.
 " Also called from scripts.vim, thus can't be local to this script.
 func dist#ft#SetFileTypeShell(name)
+  if did_filetype()
+    " Filetype was already detected
+    return
+  endif
   if expand("<amatch>") =~ g:ft_ignore_pat
     return
   endif
@@ -551,6 +559,10 @@
 endfunc
 
 func dist#ft#CSH()
+  if did_filetype()
+    " Filetype was already detected
+    return
+  endif
   if exists("g:filetype_csh")
     call dist#ft#SetFileTypeShell(g:filetype_csh)
   elseif &shell =~ "tcsh"
diff --git a/runtime/filetype.vim b/runtime/filetype.vim
index 72a756d..cdfbbff 100644
--- a/runtime/filetype.vim
+++ b/runtime/filetype.vim
@@ -1462,9 +1462,11 @@
 
 " Shell scripts (sh, ksh, bash, bash2, csh); Allow .profile_foo etc.
 " Gentoo ebuilds and Arch Linux PKGBUILDs are actually bash scripts
-au BufNewFile,BufRead .bashrc*,bashrc,bash.bashrc,.bash[_-]profile*,.bash[_-]logout*,.bash[_-]aliases*,bash-fc[-.]*,*.bash,*/{,.}bash[_-]completion{,.d,.sh}{,/*},*.ebuild,*.eclass,PKGBUILD* call dist#ft#SetFileTypeSH("bash")
-au BufNewFile,BufRead .kshrc*,*.ksh call dist#ft#SetFileTypeSH("ksh")
-au BufNewFile,BufRead */etc/profile,.profile*,*.sh,*.env call dist#ft#SetFileTypeSH(getline(1))
+" NOTE: Patterns ending in a star are further down, these have lower priority.
+au BufNewFile,BufRead .bashrc,bashrc,bash.bashrc,.bash[_-]profile,.bash[_-]logout,.bash[_-]aliases,bash-fc[-.],*.bash,*/{,.}bash[_-]completion{,.d,.sh}{,/*},*.ebuild,*.eclass,PKGBUILD call dist#ft#SetFileTypeSH("bash")
+au BufNewFile,BufRead .kshrc,*.ksh call dist#ft#SetFileTypeSH("ksh")
+au BufNewFile,BufRead */etc/profile,.profile,*.sh,*.env call dist#ft#SetFileTypeSH(getline(1))
+
 
 " Shell script (Arch Linux) or PHP file (Drupal)
 au BufNewFile,BufRead *.install
@@ -1475,14 +1477,14 @@
 	\ endif
 
 " tcsh scripts
-au BufNewFile,BufRead .tcshrc*,*.tcsh,tcsh.tcshrc,tcsh.login	call dist#ft#SetFileTypeShell("tcsh")
+au BufNewFile,BufRead .tcshrc,*.tcsh,tcsh.tcshrc,tcsh.login	call dist#ft#SetFileTypeShell("tcsh")
 
 " csh scripts, but might also be tcsh scripts (on some systems csh is tcsh)
-au BufNewFile,BufRead .login*,.cshrc*,csh.cshrc,csh.login,csh.logout,*.csh,.alias  call dist#ft#CSH()
+au BufNewFile,BufRead .login,.cshrc,csh.cshrc,csh.login,csh.logout,*.csh,.alias  call dist#ft#CSH()
 
 " Z-Shell script
 au BufNewFile,BufRead .zprofile,*/etc/zprofile,.zfbfmarks  setf zsh
-au BufNewFile,BufRead .zsh*,.zlog*,.zcompdump*  call s:StarSetf('zsh')
+au BufNewFile,BufRead .zsh,.zlog,.zcompdump  	call s:StarSetf('zsh')
 au BufNewFile,BufRead *.zsh			setf zsh
 
 " Scheme
@@ -2074,6 +2076,20 @@
 " Remind
 au BufNewFile,BufRead .reminders*		call s:StarSetf('remind')
 
+" Shell scripts ending in a star
+au BufNewFile,BufRead .bashrc*,.bash[_-]profile*,.bash[_-]logout*,.bash[_-]aliases*,bash-fc[-.]*,,PKGBUILD* call dist#ft#SetFileTypeSH("bash")
+au BufNewFile,BufRead .kshrc* call dist#ft#SetFileTypeSH("ksh")
+au BufNewFile,BufRead .profile* call dist#ft#SetFileTypeSH(getline(1))
+
+" tcsh scripts ending in a star
+au BufNewFile,BufRead .tcshrc*	call dist#ft#SetFileTypeShell("tcsh")
+
+" csh scripts ending in a star
+au BufNewFile,BufRead .login*,.cshrc*  call dist#ft#CSH()
+
+" Z-Shell script ending in a star
+au BufNewFile,BufRead .zsh*,.zlog*,.zcompdump*  call s:StarSetf('zsh')
+
 " Vim script
 au BufNewFile,BufRead *vimrc*			call s:StarSetf('vim')
 
