When I run the :sh command I see the following characters

enter image description here

If it is relevant, my default shell is zsh and it runs oh-my-zsh also

  • Can you confirm the problem doesn't come from your vimrc?
    – statox
    Mar 5 '19 at 11:09
  • using the default vimrc gives the same wired characters
    – jagjordi
    Mar 5 '19 at 11:28
  • 1
    01;32m feels like color codes to me. and those box icons are glyphs not supported by your font. Have you recently changed your configuration? As in moved to a new font/terminal emulator/distro/copied someone's bashrc?
    – kadekai
    Mar 5 '19 at 12:32
  • I recently discovered the sh command and Is always been like this. bashrc is made by my, running an empty bashrc results in the same issue
    – jagjordi
    Mar 5 '19 at 12:35
  • Whats the Vim version? (See Help->About)
    – Ralf
    Mar 6 '19 at 5:55

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 ls or grep.

Vim 8.0.1609 added the guioption !, see :help 'go-!'. This provides a better terminal:

:set guioptions+=!

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 :help terminal.

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".

  • I tried adding ! to guioptions but the problem persists
    – jagjordi
    Mar 5 '19 at 23:16
  • @jagjordi Updated, added some version information.
    – Ralf
    Mar 6 '19 at 6:37
  • @jagjordi try to set shell=/bin/bash and then run shell :sh
    – Alex Kroll
    Mar 6 '19 at 6:40
  • @AlexKroll Do you want to write that in a own answer, or should I integrate it into my answer?
    – Ralf
    Mar 6 '19 at 10:20
  • I am not sure. Your solution solves the issue of getting the wired characters to disappear, but maybe I should post another answer asking how to get zsh to work with :sh
    – jagjordi
    Mar 6 '19 at 14:36

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.