Отправка ключевого кода в Xorg + wine с помощью bash-скрипта - PullRequest
2 голосов
/ 05 июня 2009

Как отправить код ключа в текущее запущенное приложение под Linux, работающее под Wine? Я хотел бы, чтобы это было в bash для простоты.

1 Ответ

2 голосов
/ 05 июня 2009

Используйте пакет под названием xvkbd . Это должно быть в каждом дистрибутиве Linux. Синтаксис прост:

xvkbd -text [line of keycodes]

Например, запуск игры Warcraft 3 с автоматическим входом в Battle.net:

#!/bin/bash
cd ~/.wine/drive_c/Program\ Files/Warcraft3/
wine euroloader.exe -opengl > /dev/null 2> /dev/null & # run W3
sleep 5; # wait until animation fades out
xvkbd -text "b" # "b" is for Battle.net
sleep 7;
xvkbd -text "password\r" # password
sleep 3;
xvkbd -text "h" # "h" is for channel
sleep 5;
xvkbd -text "h" # honestly I don't know why, but without this the script might not work
sleep 5;
xvkbd -text "zcu\r" # type in your channel and join the room
sleep 5;
xvkbd -text ".load\r" # I'm using ghost, so I'll ask him what map is loaded
...