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

3

Как я могу установить ярлык, чтобы убить текущее окно в удивительной 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)"))
Preuk
источник
1

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
)
ch1p
источник