XTerm не закрывается при использовании опции -e

XTerm не закрывается при использовании опции -e

У меня есть скрипт tcl, работающий в MWM, и он запускает терминалы xterm с помощью:

 .menu.utils.m add command -label {Xterm} -command {
        exec xterm -sb -T "Xterm" -sl 10000 -e su - int &
  }

При этом терминалы не могут быть закрыты с помощью Alt+F4 или панели меню. Есть ли способ исправить это?

решение1

Вы пробовали использовать xkill? Это уничтожит окно, хотя и оставит suпроцесс и его дочерние элементы. Вы можете попробовать нажать Ctrl-C в , xtermчтобы убить процесс. Или, если это действительно xtermпроцесс (а не gnome-terminalчто-то в этом роде), вы можете нажать Ctrl-левый клик и отправить сигнал KILL (или другой) дочернему процессу.

ОБНОВЛЯТЬ Я думаю, вы могли бы добавить что-то вроде этого к своему .mwmrc:

Keys MyKeyBindings
{
    Alt Shift<Key>F4     window   f.exec "xkill -id <WM_CLIENT_LEADER>"
}

Причина, по которой f.killи Closeв fvwmне закрывает, xterm -e su -заключается в том, что xtermне может завершить подпроцесс. Поэтому, чтобы оконный менеджер завершил его, его xtermнужно уничтожить, а не вежливо попросить закрыть.

решение2

Итак, в конце концов я нашел активное окно и уничтожил его следующим образом:

 f.exec "xkill -id `xdpyinfo | grep focus | awk '{print $3}' | tr -d ','`"

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