Как установить сочетание клавиш для закрытия текущего окна в Awesome WM?
Я знаю, что Ctrl+ ⇧ Shift+ Cзакрыть окно, но я хочу УБИТЬ ( kill <PID>
например).
Мне это нужно, например, для завершения процесса замороженного окна.
решение1
То, что вы хотите, это убить процесс, который создал окно. Вы не можете сделать это из коробки, но можете сделать это при определенных обстоятельствах.
Пожалуйста, взгляните наэтот ответ на 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)"))
решение2
client
класс имеет pid
свойство (по крайней мере в awesome 4.2https://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
)