我在 Mac OS X 10.14.6 上使用 bash 作为我的 shell,使用 iTerm2 build 3.3.1 作为我的终端模拟器每当我使用一个长命令时,iTerm 窗口都会用新符号覆盖我当前的行,即使我输入正确的符号命令并运行它,它运行成功意味着,错误仅在于显示命令,而不是存储它。当我退出 vim 时有时也会发生这种情况。一些缓冲区保留在屏幕上,但我的窗口位于 shell 上,而不是 vim 上。这主要发生在我使用 ctags 和 cscope 时。附上长命令和退出 vim 的屏幕截图。
请提出一些解决方案。
更新 1:我发现 bash 在使用逗号时行为不当,因为对于 中的颜色编码PS1
,我使用了\e[....m
格式类型。当我替换为\[...\]
bash 提示问题时就解决了。我不知道为什么会这样。另外,退出 vim 后清除 shell 缓冲区的问题仍然会发生(图 2).. 有关这些的任何帮助都会有所帮助。谢谢!