When I run the
:sh command I see the following characters
If it is relevant, my default shell is zsh and it runs oh-my-zsh also
You are doing this in GVim and this only provides a terminal with limited capabilities. The command
echo $TERM returns "dumb". Might be your zsh /oh-my-zsh setup can't handle this.
It works for me (with bash) as my bash setups checks for terminal capabilities before configuring a colored PS1 or configuring colored output for
Vim 8.0.1609 added the
:help 'go-!'. This provides a better terminal:
Then the "terminal" started by
:sh supports colors.(tested with Vim 8.1.996 on Ubuntu:
echo $TERM returns "xterm").
If you have Vim 8.0.747+, or better 8.1.x, you should use
:terminal to start a terminal window inside GVim. See
If you are on an older version of Vim, you need to change your zsh setup to work properly on a dumb terminal. Google something like "zsh dumb terminal" or "oh-my-zsh dumb terminal".