9

Я использую iTerm2 на Mac OSX (10.10.5).

Недавно я столкнулся с чем-то очень странным: после использования iTerm2 какое-то время Ctrl-C перестал работать. Первоначально это было хорошо. Только после определенного периода использования. Терминал выводит ^C как если бы это было обычное нажатие клавиши.

Я понятия не имею, как это может быть воспроизведено.

2 ответа2

1

Одна из возможных причин этого заключается в том, что вы использовали trap для установки сигнала INT на что-то другое.

Если вы сбрасываете ловушку (функция ed) на INT по умолчанию, эта проблема должна исчезнуть 1. Вы можете сделать это, выполнив это:

trap - INT
trap

Еще один способ исправить это, хотя и "хакерский", это добавить что-то вроде следующего в ваш .zshrc или .bashrc:

function reset_trap {
  # Hacky hack because of <function/script-that-sets-trap-INT>
  trap - INT
}

autoload -Uz add-zsh-hook
add-zsh-hook preexec reset_trap

+1 По крайней мере, это / это сработало для меня!

0

Я публикую здесь работу, так как это может принести пользу некоторым людям. Я сам этого не приму.

Когда это произойдет, kill запущенный процесс в текущей вкладке, возможно, из другой вкладки / оболочки. Затем на исходной вкладке выполните reset и все вернется в нормальное состояние.

Все еще не знаю почему.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .