таким образом, я пытаюсь сделать сочетание клавиш с помощью xdotool. Единственная вещь, которую я пропускаю и это не может узнать, как сделать, это:
Как нажать функциональную клавишу на моей клавиатуре. В более общем случае, и это решило бы мою проблему также, как нажать клавишу с помощью xdotool на основе кода клавиши (если Вы знаете о другой программе, которая может сделать это, я не возражаю использовать это вместо этого).
У меня есть клавиатура окон и существует этот 'переключатель' (промежуточный alt gr
и right ctrl
) при нажатии это открывает контекстное меню (прямо рядом с, где курсор ввода). Я должен нажать эту кнопку в сценарии так или иначе. Я узнал (использование showkey -k
) то, что код клавиши этого ключа равняется 127, но я не могу сделать xdotool для нажатия его.
Какие-либо идеи о том, как сделать это?
PS: Я знаю, что могу моделировать щелчок правой кнопкой xdotool click 3
но это не помогает, потому что щелчок правой кнопкой затем происходит, где указатель мыши, и мне нужен он для случая, где курсор ввода.
Спасибо :)
Проблема решена благодаря комментарию от Jacob Vlijm.
название кнопки может быть найдено этот путь: выполненный xev
, затем нажмите кнопку, и имя обнаруживается в скобках. В моем случае это было это: keycode 135 (keysym 0xff67, Menu)
, здесь Меню является названием ключа.
Затем я мог работать xdotool Menu
. Однако, чтобы заставить его работать с пользовательским ярлыком я должен был добавить sleep
перед ним, таким образом, я закончил с этим кодом:
sleep 0.5 && xdotool key 'Menu'
sleep 0.01 && xdotool key 's'
sleep 0.01 && xdotool key 'e'
и это работает! :)
BTW: цель этой целой вещи состояла в том, чтобы быстро переключиться между написанием языков в Chrome.
При добавлении сочетания клавиш на Ubuntu 18.04 необходимо явно выполнить подпроцесс:
/bin/bash -c "sleep 0.4 && xdotool key Menu"