Вот такое надо сделать

Все о программировании под *nix
Anonymous

Вот такое надо сделать

Сообщение Anonymous »

1 - моя программа(скоре всего Х-овая и написанная на QT) висит в памяти и при опреленных условиях(например при нажатии на пробел), вознакшней во внешнй программе, должна переключать раскладку клавиатуры(глобально).
2 - та же программа при опреленных условиях, вознакших во внешней программе, должна перехватывать ввод этой программы с клавиатуры, сохранять часть веденного текста в своем "буфере", обрабатывать и возвращать программе.
Как все это сделать?

Аватара пользователя
Llama
Неотъемлемая часть форума
Сообщения: 9749
Зарегистрирован: 06 фев 2002, 11:40
Откуда: Менск

Сообщение Llama »

Это будет костыль а-ля punto switcher?
Опыт растет прямо пропорционально выведенному из строя оборудованию

Anonymous

Сообщение Anonymous »

Да.Но не думаю, что костыль:)

michael
Неотъемлемая часть форума
Сообщения: 434
Зарегистрирован: 12 апр 2004, 11:00
Откуда: г. Владивосток
Контактная информация:

Сообщение michael »

Было бы это просто, давно, наверное, уже сделали бы.:(

Аватара пользователя
sanitar
Неотъемлемая часть форума
Сообщения: 1116
Зарегистрирован: 28 ноя 2002, 02:23
Откуда: Минск

Сообщение sanitar »

s/просто/нужно/
I'll kill this code without a knife -- with only fork().

michael
Неотъемлемая часть форума
Сообщения: 434
Зарегистрирован: 12 апр 2004, 11:00
Откуда: г. Владивосток
Контактная информация:

Сообщение michael »

sanitar писал(а):s/просто/нужно/
Зря ты так. Неплохая вещь.

Anonymous

Сообщение Anonymous »

"Было бы это просто, давно, наверное, уже сделали бы"
Думаю, что дело не в этом.Просто никому это не надо.

Аватара пользователя
Llama
Неотъемлемая часть форума
Сообщения: 9749
Зарегистрирован: 06 фев 2002, 11:40
Откуда: Менск

Сообщение Llama »

Код: Выделить всё

DESCRIPTION
       The xmodmap program is used to edit and display the  keyboard  modifier
       map  and  keymap  table that are used by client applications to convert
       event keycodes into keysyms.  It is usually run from the user’s session
       startup  script to configure the keyboard according to personal tastes.

Код: Выделить всё

       -e expression
               This option specifies an expression to be executed.  Any number
               of expressions may be specified from the command line.
см. также xev - для определения кода клавиш
В KDE была некая приблуда, которая мониторила буффер обмена, в ней можно посмотреть пример перехвата содержимого...
Опыт растет прямо пропорционально выведенному из строя оборудованию

Anonymous

Сообщение Anonymous »

xev здесь не в тему - он отображает события только для своего окна, а нужно перехватывать события для любого окна. Скорее стоит посмотреть код какого-нибудь оконного менеджера попроще.

Аватара пользователя
Llama
Неотъемлемая часть форума
Сообщения: 9749
Зарегистрирован: 06 фев 2002, 11:40
Откуда: Менск

Сообщение Llama »

viv, нет, xev на тему узнования кода клавиши на которую потом будет xmodmap'ом вешаться программа.
Опыт растет прямо пропорционально выведенному из строя оборудованию

Anonymous

Сообщение Anonymous »

Llama писал(а):viv, нет, xev на тему узнования кода клавиши на которую потом будет xmodmap'ом вешаться программа.
Что-то я из map xmodmap не понял как с его помощью вызывать некую программу. О! Вот что надо смотреть - xxkb.

Аватара пользователя
Llama
Неотъемлемая часть форума
Сообщения: 9749
Зарегистрирован: 06 фев 2002, 11:40
Откуда: Менск

Сообщение Llama »

плохо читал ман и этот трэд.
Опыт растет прямо пропорционально выведенному из строя оборудованию

Anonymous

Сообщение Anonymous »

Тогда дай пример. Я вижу как через -e настроить маппинг клавиатуры и мыши, как запустить программу - не нашёл.

Аватара пользователя
Llama
Неотъемлемая часть форума
Сообщения: 9749
Зарегистрирован: 06 фев 2002, 11:40
Откуда: Менск

Сообщение Llama »

Да, я был несколько неправ.
xmodmap позволяет сопоставить сканкод и код символа. Известный мне способ обработки символа - это пользовать возможност нормальных WM
Опыт растет прямо пропорционально выведенному из строя оборудованию

Anonymous

Сообщение Anonymous »

Известный мне способ обработки символа - это пользовать возможност нормальных WM
А что, обработка символа в каждом(и не нрмальном тоже) WM разная?

Ответить