Удивительный ярлык WM, чтобы убить окно

Как я могу установить ярлык, чтобы убить текущее окно в удивительной WM?

Я знаю, Ctrl + ⇧ Shift + C, чтобы закрыть окно, но я хочу убить (kill <PID> например).

Мне нужно это, чтобы убить процесс замороженного окна, например.

2 ответа

То, что вы хотите, это убить процесс, который создал окно. Вы не можете сделать это "из коробки", но можете сделать это при определенных обстоятельствах.

Пожалуйста, посмотрите на этот ответ на Stack Overflow о том, почему это обычно невозможно.

В любом случае, если вы хотите попробовать, вам нужно получить активный идентификатор окна в lua, попытаться получить из него PID и вызвать kill -9 команда на это. Это легко сделать, используя такой инструмент, как xpropИли вы можете использовать такую ​​команду (непроверенная, возможно, даже не работающая):

awful.key({ modkey, "Control"   }, "c",
    function (c) awful.util.spawn("kill -9 " .. get_xproperty("_NET_WM_PID(CARDINAL)"))

client класс имеет pid свойство (по крайней мере, в удивительном 4.2 https://awesomewm.org/doc/api/classes/client.html), так что вы можете просто сделать это:

awful.key({ modkey, "Control"   }, "c",
    function (c)
        if c.pid then
            awful.spawn("kill -9 " .. c.pid)
        end
    end
)
Другие вопросы по тегам