Есть ли какие-нибудь макродомеры для Ubuntu? Мне нужна программа, которой я мог бы назначить клавишу для записи движения мыши и набора текста с клавиатуры. Спасибо
Смотрите на Гну - Ссылка Xnee
: http://www.gnu.org/software/xnee/
Для приложения командной строки на человечности:
sudo apt-get install cnee
N.B: xnee
meta пакет в человечности и установке, которая также установит cnee
. gnee
пакет, который необходимо установить, если Вы хотите gui.
использование В качестве примера:
cnee --record -o events.xnr --mouse --events-to-record 100 --time 2
Это записывает 100 событий от нажатия мыши после задержки 2 секунд.
cnee --replay -f events.xnr --time 2
Это воспроизводит события после задержки 2 секунд.
я посмотрел бы на страницу справочника для cnee для получения дополнительной информации о том, как использовать его.
Также больше деталей о xnee может быть найдено здесь https://xnee.wordpress.com /
Actiona не является устройством записи, это - средство автоматизации задачи. После получения ошибок с gnee я попробовал его, и я думаю, что это - большой инструмент и простой в использовании.
sudo apt install actiona
Можно использовать X-макрос.
Для установки x-макроса используют эту команду:
sudo apt-get install xmacro
Для рекордного использования xmacrorec2 команда:
xmacrorec2 > test.file
для игры записал макро-xmacroplay
xmacroplay "$DISPLAY" < test.file
использования В дополнение к Sikuli (уже упомянутый), существует Kantu. Я нахожу легче использовать и более легкий. Это может сделать автоматизацию браузера и настольная автоматизация и доступно для Windows, Mac и Ubuntu.
Лучшим там является Sikuli
sudo apt-get install sikulix
Вместо того, чтобы записать макрос, могло бы быть более полезно написать сценарий его с нуля с xdotool. Это дает Вам намного больше контроля процессом.
Из Вашего описания я предполагаю, что Вам нужно что-то более постоянное и не макрос, который только используется несколько раз после записи его. Я знаю, что это не может быть тем, чего Вы желаете, но это может быть лучшее решение.
Зарегистрированный макрос перестал бы работать с недостающими окнами, различные размеры окна и т.д., поскольку это является слепым к своей среде. Я сомневаюсь, что это приемлемо в Вашем случае.
С xdotool мог определить окна и управлять ими к Вашим параметрам и затем щелчкам программы относительно них, игнорируя их положение.
Можно даже выполнить команды из чистого xdotool сценария и закрыть их окно после того, как задание будет сделано.
sudo apt install xdotool
Для получения правильного положения для щелчков, можно переместить окно в верхний левый угол и использование:
ALT+F2
xterm -hold -e /usr/bin/xdotool getmouselocation
Следует иметь в виду, что на Ubuntu Вы обычно не можете перемещать свое окно в координаты 0,0. Необходимо было бы вычислить смещение.
Создайте текстовый файл для своего xdotool сценария. Давайте назовем это xdoscript.
Это - демонстрационный сценарий для xdotool:
search --name xdowindow
windowfocus
windowsize 1000 800
mousemove --window %@ 200 100
click 3
sleep 2
mousemove --window %@ 400 200
click 1
sleep 1
click 3
mousemove_relative --polar 140 5
sleep 1
click 1
sleep 1
type "man xdotool"
sleep 2
key Return
sleep 2
key Next
sleep 1
key Next
sleep 1
key Next
sleep 1
key q
Я пытался получить эту работу с терминалом гнома, но терминал гнома был существенной неисправностью в течение некоторого времени, и с тех пор ее заголовок окна не может быть изменен, таким образом, я использовал Сакуру для тестирования вместо этого. Команды сна должны только замедлить его к смотрибельной скорости.
sudo apt install sakura
Запустите Сакуру с пользовательского имени xdowindow и запустите xdotool сценарий в нем:
sakura -t xdowindow
xdotool xdoscript
Для Вашего собственного сценария Вам было бы нужно следующее:
Конечно, хотя такие сценарии намного более устойчивы, чем зарегистрированные макросы, они ни в коем случае не являются портативными. Если бы Вы изменяете свои настольные настройки, такие как размер шрифта или переустанавливаете Вашу систему, они могли бы прекратить работать и потребовали бы корректировки.
PS: команда windowfocus требуется, чтобы работало большинство других команд.