ctrl+shift+tab + scroll
ジョブをボリュームアップ/ダウンにマッピングしたいです。この目標をどのように達成できますか?
ctrl + scroll
地図は基本的に拡大/縮小されることがわかっています。もちろん、このようなカスタムショートカットを作成する方法はありますか?
(私は kde Plasma 5.14.5 を実行しています)
答え1
私の研究では、この問題に対するエレガントな解決策は見つかりませんでした。非常に粗雑なPythonスクリプトをハッキングしましたが、うまくいきませんでした...申し訳ありません。
from pynput import keyboard
from pynput import mouse
from pynput.keyboard import Controller
import subprocess
from subprocess import call
kbd = Controller()
COMBINATIONS = [{keyboard.Key.ctrl, keyboard.Key.shift}]
current = set()
def execute():
with mouse.Listener(on_scroll=on_mscroll) as listener:
listener.join()
def on_press(key):
if any([key in COMBO for COMBO in COMBINATIONS]):
current.add(key)
if any(all(k in current for k in COMBO) for COMBO in COMBINATIONS):
# this executes only once and then it looses the keycombination
execute()
def on_release(key):
if any([key in COMBO for COMBO in COMBINATIONS]):
try:
current.remove(key)
except KeyError:
pass
def on_mscroll(x, y, dx, dy):
if dy < 0:
# this can be changed to the appropriate command to change the volume
# like pactl
call(["amixer", "-D", "pulse", "sset", "Master", "5%-"],stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
else:
call(["amixer", "-D", "pulse", "sset", "Master", "5%+"], stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL)
return False
with keyboard.Listener(on_press=on_press, on_release=on_release) as listener:
listener.join()
問題は、ctrl
+をshift
押して上下にスクロールし、もう一度タップしてshift
操作を切り替える必要があることです。私の言葉はこれがEYであるということです。さらに、これはスクロールを防ぎませんので、中立位置(サイドバーなど)でスクロールすることをお勧めします。
うまくいきますpynput
が、問題にならないことを願っています。