Как я могу установить ярлык, чтобы убить текущее окно в удивительной WM?
Я знаю, что Ctrl + ⇧ Shift + C закрывает окно, но мне нужно KILL (например, kill <PID>
).
Мне нужно это, чтобы убить процесс замороженного окна, например.
Как я могу установить ярлык, чтобы убить текущее окно в удивительной WM?
Я знаю, что Ctrl + ⇧ Shift + C закрывает окно, но мне нужно KILL (например, kill <PID>
).
Мне нужно это, чтобы убить процесс замороженного окна, например.
То, что вы хотите, это убить процесс, который создал окно. Вы не можете сделать это «из коробки», но можете сделать это при определенных обстоятельствах.
Пожалуйста, посмотрите на этот ответ в 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
)