Что означает ошибка «XOFF игнорируется, бормотать»?


45

При попытке сохранить файл из Nano на днях я получил сообщение об ошибке «XOFF игнорируется, бормотание бормотание». Я понятия не имею, что это должно означать. Есть идеи?


2
CTRL-Sработает (как файл сохранения) в Ubuntu 18.04, но не в 16.04.
Нобар

1
Хорошо поймал! Похоже, это было добавлено в v2.9.0!
nathangiesbrecht

Ответы:


36

Вы набрали символ XOFF Ctrl-S. В традиционной среде терминала XOFF заставляет терминал приостанавливать вывод, пока вы не введете символ XON.

Nano игнорирует это, потому что Nano является полноэкранным редактором, и приостановка его вывода - в значительной степени бессмысленная концепция.

Относительно того, почему формулировка такая, какая есть, вам нужно спросить оригинальных разработчиков.


приостановка его вывода не является бессмысленной, если вы используете «управление потоком программного обеспечения» с главного компьютера на физическом терминале и используете xoff для предотвращения переполнения буфера при перерисовке экрана (переход по страницам вниз и т. д.). Но обычно это обрабатывается на стороне хоста, а не на стороне пользователя.
Wyatt8740

По иронии судьбы, я в основном использую CTRL-X для сохранения и выхода за один раз, и это всегда заставляет меня путать биты X и XOFF.
aalaap

13
Я верю, что «бормотание» - это мягкая шутка для пользователей Windows, где CTRL+Sнаходится горячая клавиша сохранения. Добро пожаловать в Unix
DarkCygnus

Ctrl-S также сохраняется в Nano, но только в последних версиях.
Тимммм

49

Вы нажали Ctrl + S вместо Ctrl + O, чтобы сохранить файл. Ctrl + S - это старая комбинация клавиш управления потоком, чтобы приостановить передачу и прекратить прокрутку данных на терминал (внутренне отправленный код называется XOFF). Ctrl + Q (XON) - дополнение для начала передачи и возобновления прокрутки.

Nano игнорирует этот код, поскольку не использует прокрутку. Бормотание, вероятно, является результатом его разочарования, что вы не помните, чтобы использовать Ctrl + O для сохранения.


1
Я дал @Michael Kohne правильный ответ, только потому, что он был на несколько секунд быстрее вас. Я думаю, что я рефлексивно использовал S вместо O. Спасибо, хотя!
nathangiesbrecht
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.