最も簡単な機能を実装したいです。キーa
をに再マップしますt
。私のコードにはrc.lua
次の行があります。
function myremapp_ress()
root.fake_input('key_press', "t")
end
function myremap_release()
root.fake_input('key_release', "t")
end
-- {{{ Key bindings
globalkeys = gears.table.join(
awful.key({ }, "a", myremap_press, myremap_release),
keygrabber
私が知っている限り、フォークをするには停止する必要があるため、フォークではありませんfake_input
。これを次のように変更すると:
function myremapp_ress()
keygrabber.stop()
root.fake_input('key_press', "t")
end
これで、aの代わりにtを入力できますが、他のキーワードが追加されないまで前に入力するとmyremap_release
機能しません。t
直接防ぐことはできますが、キーを押し続けると、最初のキーを押すだけで結果が得られます。
function myremapp_ress()
keygrabber.stop()
root.fake_input('key_press', "t")
root.fake_input('key_release', "t")
end
私は以前試しました:
function myremapp_ress()
keygrabber.stop()
root.fake_input('key_press', "t")
keygrabber.run()
end
しかし、エラーだけを返すので、keygrabber.runに引数を指定する必要があります(文書によると、両方の関数は同じ引数を持つため奇妙です)。
それで、私の質問はこの簡単なことをどうするかです。もっと簡単にする方法はありますかpause keygrabber
?keygrabber.active
Keygrabberループで確認されるフラグはありますか? Keygrabberを停止した後、どのように再起動しますかfake_input
?