在shell中启动交互式命令时,Enter不起作用

Bog*_*iev 4 zsh line-breaks

在术语中的某些操作后,使用shell中的交互式命令停止工作 - 我仍然可以启动命令但是如果命令需要额外的输入,则在'^ M'处插入换行符.

例:

$ git add -p .
diff --git a/app/models/coupon.rb b/app/models/coupon.rb
index 39df1f3..736ea62 100644
--- a/app/models/coupon.rb
+++ b/app/models/coupon.rb
@@ -3,6 +3,7 @@ class Coupon < ActiveRecord::Base
   COUPON_PRECREATE_EXPIRATION_BUFFER = 5.days
   COUPON_PRECREATE_COUNT = 15

+  include CommonNamedScopes

   belongs_to :coupon_list
   #belongs_to :couponable, :polymorphic => true
Stage this hunk [y,n,q,a,d,/,e,?]? y^M
Run Code Online (Sandbox Code Playgroud)

(cat例如,当使用时可以获得相同的问题)因此它与之无关git.

有人可以建议为什么会这样吗?

iTerm2 Build 1.0.0.20120724

zsh 5.0.0(x86_64-apple-darwin11.4.2)

qqx*_*qqx 6

这通常是因为程序改变了终端的状态,但没有改变它.

尝试运行该reset命令,看看是否能解决问题.

由于您使用的是zsh,因此您还可以使用ttyctl -fzsh在命令运行后自动重置终端设置.但是在首先重置终端之前不要使用它,否则zsh会在破坏状态下冻结设置.