The parent mode of envrc-file-mode (sh-mode) unconditionally guesses the concrete shell (via sh--guess-shell). The guess is consistently wrong when the visited file does not have a suffix indicating the concrete shell used. In that case, it guesses from the content of the SHELL environment variable. In my case, SHELL is "/bin/zsh", so sh-mode (and therefore envrc-file-mode) guesses that every .envrc is a zsh file. But .envrc always is a bash file.
The parent mode of
envrc-file-mode
(sh-mode
) unconditionally guesses the concrete shell (via sh--guess-shell
). The guess is consistently wrong when the visited file does not have a suffix indicating the concrete shell used. In that case, it guesses from the content of theSHELL
environment variable. In my case,SHELL
is"/bin/zsh"
, sosh-mode
(and thereforeenvrc-file-mode
) guesses that every.envrc
is a zsh file. But.envrc
always is a bash file.