^s (Control s) в терминале и в GNU Screen

Не секрет что zsh, bash и иже с ними останавливают поток вывода на экран при нажатии ^s (визуально терминал блокируется, хотя всё работает как положено), а для отображения потока ^q. Попробуйте в консоли нажмите ^s и попробуйте чего-нить напечатать, вряд ли у вас получится (но ^q нас спасет и мы увидим то что вводили)
Дело в том что терминалы получают команды управления потоком XOFF и XON (выключение и включение соответственно).
Если вам не нравиться такое поведение консоли, то втыкаем маны и узнаем о том что команда stty позволяет изменить сие (и не только) поведение. Дабы не заставлять читать маны привожу команды которые надо добавить в bashrc или zshrc
stty ixany
stty ixoff -ixon

Так же эти команды можно вводить и в интерактивном режиме.

Всё бы ничего, но... В GNU Screen ^+s как работал до сих манипуляций так и работает, заглядываем в ман и вспоминаем об управлении потоком в самом скрине — defflow для всех окон и flow для текущей консоли уже при запущенном screen (^+a f или ^+a ^+f для цеклического переключения).
По умолчанию defflow выставлен в auto, но в мой ~/.screenrc каким-то образом затесалась строка defflow on, заменяя на auto (в зависимости от настроек терминала) или off ^+s начинает работать передавая ^+s в терминал (в zsh к примеру это fwd-i-search, в joe тоже поиск) и его можно назначить как управляющую последовательность вместо дефолтного ^+a
Juev 09-09-2009
А я все думал, что за фигня у меня твориться с терминалом, никак понять не мог... Приходилось терминал просто закрывать и открывать вновь...
Век живи век учись блин... =)
Спасибо большое за статью!
nick 09-09-2009
Спасибо большое!

как раз для случая - запустил screen, rails script/console, проскроллил вверх, а потом мысля "а что всё не работает".

PS в опере10 чекбокс "подписаться на комментарии" разъехался )
muhas 09-09-2009
@nick мерси, посмотрю