Вопрос Как я могу сделать пользовательские ярлыки работать над выпуском ключа, а не нажатием клавиши? [Дубликат]


На этот вопрос уже есть ответ:

Я использую Ubuntu 14.04. с Unity DE.

Как я могу использовать клавиши быстрого доступа к клавише выпуск, не на нажатие клавиши?

Например, если я хочу использовать ключ Windows для нескольких ярлыков, он работает только для того, который запускается только ключом win, потому что ярлык работает до того, как будет зарегистрировано следующее нажатие клавиши.


4
2018-01-06 15:09


происхождения


Я думаю, вам нужно как минимум два ключа для быстрого доступа. т. е. вы не можете установить ярлык только с одним ключом win
@VishwaPrakashHV вы можете, в другом примере, вы можете сделать скриншот с одним print ключ. Ну, возьмите другой пример с двумя ключами. Ctrl + Alt назначается одному ярлыку. Теперь я хочу Ctrl + Alt + A-Z  к другим ярлыкам (-ам). ?? - Ravan
Ну, вы не можете установить только Ctrl+Alt как ярлык для любой задачи. т. е. вы не можете устанавливать какие-либо ярлыки, используя только комбинации Ctrl или Alt или Super или Shift, А также вам нужно, по крайней мере, один из этих клавиш установить любые ярлыки. (Мне любопытно, если вы получаете какое-либо рабочее сочетание с реальной проблемой, упомянутой в вопросе)
почему нет? вы можете, например, изменить ярлык параметров ввода текста на Ctrl + Shift из Win + Space @VishwaPrakashHV - Ravan


ответы:


Не совсем ответ, но, возможно, решение.

AFAIK, ключи, которые вы упоминаете, являются клавишами-модификаторами, которые предназначены для изменения эффекта нажатия другого (немодификатора) клавиши одновременно.

Я не очень хорошо разбираюсь в аппаратных средствах, но я считаю, что часть обработки модификатора может фактически произойти в аппаратном обеспечении клавиатуры или в драйверах - так что они не без труда доступный на уровне приложения. Я знаю, что некоторые клавиатуры, которые я много лет назад выпускали 8-битные символы ASCII и фактически модифицировали некоторые из этих бит, когда вы нажимали Ctrl или shift.

Это, как говорится, работает xev показывает, что программное обеспечение «более высокого уровня» может получить доступ к фактическим кодам сканирования, выходящим из «устройства» клавиатуры, поэтому я ожидаю, что можно написать свой собственный заменяющий драйвер клавиатуры, который будет делать все, что вы достаточно квалифицированы для кодирования, но это может включать в себя много знаний о ядре и других внутренних компонентах Linux.

Вместо того, чтобы расти на ваших глазных яблоках, изучая все это, сначала рассмотрите несколько альтернатив, которые могут удовлетворить некоторые или все ваши потребности:

xmodmap команда позволяет изменять раскладку клавиатуры, изменяя, что делают отдельные клавиши. Это происходит до того, как любые приложения видят нажатия клавиш, поэтому они должны работать прозрачно.

AutoKey это клавиатурный макропроцессор, который позволяет вам определять текстовые фразы и горячие клавиши, которые вызывают замещения фразы или запускают целые макросы, написанные на Python.

Он предназначен для использования в средах gui, которые поддерживаются GTK или QT, но также отлично работают в терминальном окне.

Каждый макрос или фраза также может иметь связанный фильтр окна, так что он будет работать только в окнах, которые передают фильтр (и не делают недопустимые вещи, если они вызваны в окне, в котором он не был предназначен для работы).

Как только макрос вызывается, вы, по сути, запускаете программу Python, которая может делать почти все, что Python может ограничить, главным образом, вашими навыками программирования, потому что есть модули Python для всего, что вы, возможно, захотите сделать.

поскольку AutoKey предназначен для испускания нажатий клавиш, которые выглядят точно так, как если бы вы их набрали, он должен работать практически с любой программой. Программа просто подумает, что вы набрали все нажатия клавиш AutoKey испускает и даже не знает, что вы их не вводили. (Есть несколько тонких моментов, но в основном это работает.)


1
2018-01-14 04:45