diff --git a/src/main/java/com/maddyhome/idea/vim/group/ProcessGroup.java b/src/main/java/com/maddyhome/idea/vim/group/ProcessGroup.java
index 20316a4d1..3d3ba65d2 100644
--- a/src/main/java/com/maddyhome/idea/vim/group/ProcessGroup.java
+++ b/src/main/java/com/maddyhome/idea/vim/group/ProcessGroup.java
@@ -40,6 +40,7 @@ import com.maddyhome.idea.vim.command.Command;
 import com.maddyhome.idea.vim.command.VimStateMachine;
 import com.maddyhome.idea.vim.ex.ExException;
 import com.maddyhome.idea.vim.ex.InvalidCommandException;
+import com.maddyhome.idea.vim.helper.EngineStringHelperKt;
 import com.maddyhome.idea.vim.helper.UiHelper;
 import com.maddyhome.idea.vim.newapi.IjExecutionContext;
 import com.maddyhome.idea.vim.newapi.IjVimEditor;
@@ -262,10 +263,9 @@ public class ProcessGroup extends VimProcessGroupBase {
       if (exitCode != null && exitCode != 0) {
         VimPlugin.showMessage("shell returned " + exitCode);
         VimPlugin.indicateError();
-        return output.getStderr() + output.getStdout();
       }
 
-      return output.getStdout();
+      return EngineStringHelperKt.removeAsciiColorCodes(output.getStderr() + output.getStdout());
     }, "IdeaVim - !" + command, true, ((IjVimEditor) editor).getEditor().getProject());
   }
 
diff --git a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/helper/EngineStringHelper.kt b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/helper/EngineStringHelper.kt
index 5f0b60ac0..08cace47f 100644
--- a/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/helper/EngineStringHelper.kt
+++ b/vim-engine/src/main/kotlin/com/maddyhome/idea/vim/helper/EngineStringHelper.kt
@@ -53,3 +53,9 @@ object EngineStringHelper {
     return c.toString()
   }
 }
+
+// https://stackoverflow.com/a/14652763/3124227
+fun String.removeAsciiColorCodes(): String {
+  return this.replace("\u001B\\[[;\\d]*m".toRegex(), "")
+}
+