ウィンドウを終了するための素晴らしい WM ショートカット

ウィンドウを終了するための素晴らしい WM ショートカット

awesome WM で現在のウィンドウを終了するショートカットを設定するにはどうすればよいでしょうか?

ウィンドウを閉じることはわかっていますが、私が欲しいのは KILL (たとえばCtrl)です。⇧ ShiftCkill <PID>

たとえば、フリーズしたウィンドウのプロセスを強制終了するにはこれが必要です。

答え1

必要なのは、ウィンドウを作成したプロセスを強制終了することです。これはすぐには実行できませんが、特定の状況下では実行できる可能性があります。

ぜひご覧くださいStack Overflowのこの回答なぜそれが通常は不可能なのかについて。

とにかく試してみたい場合は、lua でアクティブ ウィンドウ ID を取得し、そこから 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.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
)

関連情報