LINUX.ORG.RU

xvkbd и Control-Shift-Tab

 


0

2

Доброго всем времени суток, господа. Пытаюсь тут развивать тему многоконопчной мыши, а именно передавать нужные сочетания кнопок с помощью связки xvkbd + xbindkeys в зависимости от активного приложения.

Для переключения вкладок в qpdfview нужно отправить окну сочетание Control+Shift+Tab, что я и пытаюсь делать с помощью:

xvkbd -text "\[Control_L]\[Shift_L]\[Tab]"
Однако, это не приводит к ожидаемому результату, в отличии от варианта без Shift'а. Может кто знает, что я делаю не так?

Ответ на: комментарий от exception13

xdotool прекрасно работает, например так

xdotool keydown Control_L keydown Shift_L key Tab keyup Shift_L keyup Control_L

Но нужно приспособить xvkbd. Не работает только одно сочетание и использовать что-то дополнительно только ради одного сочетания одной из десятки программ - это бред. Ну и ад для перфекциониста.

e-pirate
() автор топика
Ответ на: комментарий от e-pirate

Нет, замену я попробовал первым делом.

Вот интересное в xvkbd написано:

    - \[keysym] - the keysym keysym
             Please note that modify with  ‘‘\S’’  will  be  ignored  in  many
             cases.   For  example,  ‘‘a\Cb\ScD\CE’’ will be interpreted as a,
             Control-b, c, Shift-D, and Control-Shift-E.

Может, как-то связано с игнором Shift_L?

Попробуй вместо Shift+Tab подать символ ISO_Left_Tab, то есть

xvkbd -text "\[Control_L]\[ISO_Left_Tab]"

Я смотрю, что с xdotool проблема так и не решенаб раз пользуешься xvkbd?

Zubok ★★★★★
()
Ответ на: комментарий от Zubok

Неа, это я все тоже пробовал :) На самом-то деле вопрос решился куда как проще, а именно:

xbinkeys -text "\{+Control_L}\{+Shift_L}\{Tab}\{-Shift_L}\{-Control_L}"
делает желаемое. Так что SOLVED. Осталось только придумать, как бы еще возвращать из скрипта истинное нажатие так, что бы оно не приводило к рекурсивному зацикливанию. Думаю что-нибудь сгородить на flock. Что скажете?

e-pirate
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.