2015-11-02 29 views
0

有时当我使用git add --patch时,我的回车键和箭头键停止工作 - 当我打他们时,我看到奇怪的符号。git add --patch在我返回时显示“^ m”

例如,这里就是我现在看到的,如果我跑git add --patch并点击“返回”,“左”,“右”,“向下”,“向上”(中间有空格的每个键之间):

Stage this hunk [y,n,q,a,d,/,e,?]? ^M ^[[D ^[[C ^[[B ^[[A 

这显然是一种编码问题,但它只发生在git命令需要用户输入,如补丁 - 当我回到正常的终端操作,事情再次正常工作。

每天至少有一次发生这种情况,我发现的唯一解决方法是关闭终端窗口并打开一个新窗口!

这是什么原因导致的?我该如何预防?

更多详情:我在OS X 10.10.2的Terminal中使用zsh。在终端首选项,“文本编码”设置为UTF-8

回答

1

尝试查看您控制台stty -a 配置如果我旗之一,因为icrnl签署我没有问题。如果我将其更改为-icrnl,结果与您的相似。

为了解决它只是执行 stty icrnl

你甚至可以将其添加在您的zsh配置文件。

您还可以检查此:https://askubuntu.com/questions/441744/pressing-enter-produces-m-instead-of-a-newline

+0

'的stty icrnl'解决了这个问题,但我怎么防止它摆在首位发生?什么可以改变我的'stty'配置? – GMA

+0

正如我所说的,你可以在zsh配置文件中添加该命令,以确保从一个干净的终端开始,但是......如果你想尝试“捕捉”改变你的stty配置的命令或程序,你可以尝试请遵循本指南:http://shallowsky.com/blog/linux/debugging-mysterious-stty.html – Mike