在术语中的某些操作后,使用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
(例如,使用cat
时可能会遇到同样的问题)因此它与git
无关。
有人可以建议为什么会这样吗?
iTerm2 Build 1.0.0.20120724
zsh 5.0.0(x86_64-apple-darwin11.4.2)
答案 0 :(得分:5)
这通常是因为程序改变了终端的状态,但没有改变它。
尝试运行reset
命令,看看是否能解决问题。
由于您正在使用zsh,因此您还可以使用ttyctl -f
让zsh在命令运行后自动重置终端设置。但是在首先重置终端之前不要使用它,否则zsh会在破坏状态下冻结设置。