Mac终端/ iTerm历史游标问题


13

通常,我在Terminal.app或iTerm中运行一个命令,按向上箭头返回编辑它,光标跳到上面的行或完全在错误的地方。当命令太长以至于包裹到下一行时,尤其会发生这种情况。有时这些长命令都出现在一行上,有时它们在多行上正确显示。

在iTerm和Terminal.app中都会发生这种情况

在vi和emacs模式下也会发生这种情况,使它们几乎无法使用。

有任何想法吗?谢谢!

Answers:


20

这很可能是因为您的提示定义包括不应在提示长度中计算的序列,例如用于设置颜色的序列。这些序列应介于两者之间 \[\] 防止他们的长度被计算在内。这是一个产生全红色提示的示例:

PS1='\[\033[31m\]\u@\h:\w\$\[\033[0m\]'

这行在配置文件中(如 .bashrc 要么 .bash_profile ),对于任何人 - 像我一样 - 在阅读回复后无能为力。
montrealist

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.