Что вызывает уведомления вида «Звонок в сеансе Shell» в KDE?

Что вызывает уведомления вида «Звонок в сеансе Shell» в KDE?

Я использую KDE на Debian Testing.

Время от времени программы, работающие в терминале (Konsole), вызывают системные уведомления вида «Звонок в сеансе Shell».

Что вызывает эти уведомления?

Примечание: Я не спрашиваю, как их отключить - я знаю, что есть возможность сделать это в Konsole -> Настройки -> Настроить уведомления. Я спрашиваю, какое поведение вызывает их в первую очередь, с целью возможной модификации некоторых программ, которые их вызывают, чтобы они не вызывали их или вызывали их при других условиях.

решение1

Я полагаю, что именно так эмулятор терминала Konsole интерпретирует звонки.

Попробуйте запустить в bash

sleep 3 && echo -e "\a"

Затем переключитесь на другое приложение и подождите 3 секунды.

Много-много лет назад, когда настоящие терминалы были подключены к большим компьютерам, существовал специальный протокол, называемый "escape sequences", для отправки команд на такие терминалы. Существуют последовательности для изменения цвета, перехода на новую строку или звонка. Первые терминалы были оснащены настоящими звонками, чтобы уведомлять оператора о завершении какой-либо длительной задачи.

Любой современный эмулятор терминала (konsole, xterm или настоящая консоль, когда вы находитесь в текстовом режиме) просто эмулирует такой терминал, а значит, понимает такие последовательности.

Переменная env TERM. сообщает имя эмулируемого терминала. Некоторые библиотеки, например, ncursesиспользуют termcap(или terminfo) файл, чтобы найти, какая последовательность используется для чего на этом терминале.

Связанный контент