- How to simulate key press and mouse movement in Linux
- Installation of Xdotool on Linux
- Basic Usage of Xdotool
- Bonus
- Support Xmodulo
- Управление нажатиями и перемещением указателя мыши с помощью клавиатуры
- unixforum.org
- Как установить управление мышью с клавиатуры
- Как установить управление мышью с клавиатуры
- Re: Как установить управление мышью с клавиатуры
- Re: Как установить управление мышью с клавиатуры
- Re: Как установить управление мышью с клавиатуры
- Control mouse with keyboard in Ubuntu
- 5 Answers 5
- Управляй мышью с клавиатуры в Ubuntu
- 4 ответа 4
How to simulate key press and mouse movement in Linux
Have you ever dreamed of your computer doing stuff automatically for you? Probably not if you just watched Terminator. But except for that, scripting and task automation are every power user’s dreams. If a lot of solutions exist today to fit such goal, it is sometimes hard to pick the simple, smart, and efficient one out of the lot. I cannot pretend to have found it myself, but in the mean time, my preference goes to neat software called xdotool . Its approach is intuitive as it stands as an X11 automation tool. In other words, xdotool can simulate key presses and even mouse events from reading a text file.
Installation of Xdotool on Linux
For Ubuntu, Debian or Linux Mint, you can just do:
$ sudo apt-get install xdotool
For Fedora, use yum command:
For CentOS user, the package is available in EPEL repo. After enabling EPEL repo, simply use yum command as above.
For Arch user, the package is available in the Community repo:
If you cannot find xdotool for your distribution, you can always download it from the official website.
Basic Usage of Xdotool
As intuitive as it is, xdotool remains a scripting application. Hence you have to know the syntax in order to use it properly. Rest assured though, the syntax is very simple and quick to pick up, relative to the extent of the program’s features.
First, it is very easy to simulate key press. From the terminal, you can type the command:
$ xdotool key [name of the key]
If you want to chain two keys, use the + operator between them. For example, to switch windows:
To have xdotool type for you, use the type command:
$ xdotool type '[text 1="type" language="to"][/text]'
That’s already enough for basic key pressing. But one of the many strengths of xdotool is its ability to put the focus on a particular window. It can fetch the right window, and then type in it, preventing all your recorded keystrokes to just vaporize in thin air. For this, the simplest command is:
$ xdotool search --name [name of the window] key Linux клавиатура как мышь
This will search through the opened window for one with the name matching the search, give it the focus, and then simulate the key pressing.
A bit more advanced, but very useful, xdotool can simulate mouse movement and click. For example:
With the above command, you can place the cursor at coordinates (x,y) of your screen (in pixels). You can also combine it with the click argument:
$ xdotool mousemove x y click 1
This will move the mouse to (x,y), and click with the left button. The 1 represents the left button of the mouse, 2 would be the scroll wheel, 3 the right button, etc.
Finally, once you have your commands in mind, you might want to actually dump it in a file to edit and play. For that, there is more than one syntax. You can write is a bash script:
#!/bin/bash xdotool [command 1] xdotool [command 2] . . .
where you write your commands in a separate file and plug its name as the argument.
Bonus
As a bonus to this post, here is a concrete example of xdotool in action. You may or may not have heard of Bing, the Microsoft’s search engine. In the latter case, you have then never heard of Bing Rewards: a program that allows you to trade Bing points for Amazon’s and other gift cards. To earn those points, you can do up to 30 searches a day on Bing, each search giving you 0.5 point. In other words, you have to make Bing your default search engine, and use it every day.
Or, you can use this xdotool script, which will automatically give focus to Firefox (replace it with your favorite navigator), and perform a search using the fortune command to generate some random words. In about 30 seconds, all your daily searches will be done.
#!/bin/bash for i in do WID=`xdotool search --title "Mozilla Firefox" | head -1` xdotool windowfocus $WID xdotool key ctrl+l xdotool key Tab SENTENCE="$(fortune | cut -d' ' -f1-3 | head -1)" xdotool type $SENTENCE xdotool key "Return" sleep 4 done
To conclude, I really like xdotool even if its full capabilities extend way beyond the scope of this post. It is a really approachable way to scripting and task automation. The downside is that it probably is not the most efficient one. But again, it does the job, and isn’t too much of a bother to learn.
What are your thoughts on xdotool ? Do you prefer another automation tool to it? And why? Let us know in the comments.
Support Xmodulo
This website is made possible by minimal ads and your gracious donation via PayPal or credit card
Please note that this article is published by Xmodulo.com under a Creative Commons Attribution-ShareAlike 3.0 Unported License. If you would like to use the whole or any part of this article, you need to cite this web page at Xmodulo.com as the original source.
Управление нажатиями и перемещением указателя мыши с помощью клавиатуры
Если вам трудно управлять мышью или другим координатным устройством, можно управлять указателем мыши с помощью клавиш цифрового блока клавиатуры. Эта функция называется «кнопки мыши» .
- Откройте Обзор и начните вводить: Специальные возможности . Открыть режим Обзора можно, нажав на него, а также переведя курсор мыши в левый верхний угол экрана, с помощью клавиш Ctrl + Alt + Tab и Enter , или же используя клавишу Super .
- Нажмите Специальные возможности , чтобы открыть этот раздел настроек.
- С помощью клавиш со стрелками выберите Кнопки мыши во вкладке Наведение и нажатие , затем нажмите Enter , чтобы включить переключатель пункта Кнопки мыши .
- Убедитесь, что индикатор Num Lock отключен. Теперь можно управлять указателем мыши с помощью цифрового блока клавиатуры.
Цифровой блок — это набор цифровых клавиш на клавиатуре, обычно сгруппированных в прямоугольный блок. Если на клавиатуре нет цифрового блока (например, на клавиатуре ноутбука), его функции могут выполнять некоторые другие клавиши, нажатые одновременно с функциональной клавишей ( Fn ). Если вы часто пользуетесь этой возможностью на ноутбуке, можно приобрести внешний цифровой блок, подключаемый через USB или Bluetooth.
Каждая клавиша с номером в цифровом блоке соответствует направлению. Например, нажатие клавиши 8 переместит указатель вверх, а нажатие клавиши 2 — вниз. Чтобы выполнить нажатие мышью, нажмите 5 , а для двойного нажатия быстро нажмите эту же клавишу дважды.
На многих клавиатурах имеется специальная клавиша, соответствующая нажатию правой кнопкой мыши. Иногда её называют «кнопкой Меню ». Обратите внимание, что нажатие этой клавиши соответствует нажатию правой кнопкой там, где находится фокус клавиатуры, а не там, где находится указатель мыши. См. Имитация нажатия правой кнопкой мыши , чтобы узнать, как можно имитировать нажатие правой кнопкой при удержании нажатой клавиши 5 или левой кнопки мыши.
Если при включённых «кнопках мыши» нужно воспользоваться цифровым блоком для ввода цифр, включите Num Lock . Помните, что при включённом Num Lock управлять указателем мыши с помощью цифрового блока клавиатуры невозможно.
Обычные клавиши с цифрами, находящиеся в верхнем ряду клавиатуры, не могут управлять указателем мыши. Для этого можно использовать лишь клавиши цифрового блока.
unixforum.org
Как установить управление мышью с клавиатуры
Как установить управление мышью с клавиатуры
Сообщение kt315e » 30.06.2014 12:28
Как установить управление мышью с клавиатуры в Gnome 3 (Gnome-Classik)?
Дистрибутив Debian Wheezy.
Hephaestus Сообщения: 3729 Статус: Многоуважаемый джинн. ОС: Slackware64-14.1/14.2 Контактная информация:
Re: Как установить управление мышью с клавиатуры
Сообщение Hephaestus » 01.07.2014 09:32
Есть в X-сервере «из коробки»
Option "XkbOptions" "keypad:pointerkeys"
После этого нажимаем shift+numpad и курсор мыши управляется клавишами цифрового блока клавиатуры.
Есть в некоторых оболочках.
Есть в схемах для людей с ограниченными возможностями.
Какой именно способ интересует?
Re: Как установить управление мышью с клавиатуры
Сообщение kt315e » 01.07.2014 12:21
Есть в X-сервере «из коробки»
Option "XkbOptions" "keypad:pointerkeys"
Option "XkbOptions" "keypad:pointerkeys"
Так файла xorg.conf нет. Нарисовал такое:
Section "InputDevice" Driver "xbd" Option "XkbOptions" "keypad:pointerkeys" EndSection
Естественно X сервер не запустился. Нет названия устройства (клавиатуры). Как его узнать? Надо будет корректно указать все парвметры клавиатуры (Тогда как узнать?) или только изменяемые относительно параметров по умолчанию? Или же надо в xorg.conf переопределить всю конфигурацию x сервера?
Hephaestus Сообщения: 3729 Статус: Многоуважаемый джинн. ОС: Slackware64-14.1/14.2 Контактная информация:
Re: Как установить управление мышью с клавиатуры
Сообщение Hephaestus » 01.07.2014 12:51
Естественно X сервер не запустился. Нет названия устройства (клавиатуры). Как его узнать? Надо будет корректно указать все парвметры клавиатуры (Тогда как узнать?) или только изменяемые относительно параметров по умолчанию? Или же надо в xorg.conf переопределить всю конфигурацию x сервера?
Пардон. Я писал в общих чертах, без привязки к дистру.
Опцию keypad:pointerkeys нужно указывать там же, где прописано переключение раскладок клавиатуры. У меня это в /etc/default/keyboard в соответствии с действующей политикой Debian. Подозреваю, что у Вас так же, учитывая, что xorg.conf отсутствует.
Создавать xorg.conf, а уж тем более полностью переопределять настройки X-сервера не нужно.
Однако никто не запрещает указать это в настройках X-сервера (xorg.conf либо один из файлов в /etc/X11/xorg.conf.d), а также и в настройках оболочки.
Control mouse with keyboard in Ubuntu
I’m looking for a program that I can use to control the mouse from the keyboard. I think a video can explain it much better than I could, so please check out Mouser from lifehacker.com: http://lifehacker.com/212816/hack-attack-operate-your-mouse-with-your-keyboard Unfortunately, it’s only for Windows, but something like this would be the perfect solution. I found a lot of help on mapping keys to programs, but nothing about mapping keys to mouse control.
5 Answers 5
If you look at that HackaDay article, it says he created Mouser.exe after viewing a presentation from a guy at Google. Google’s known for its use of linux, right? One of the links from your HackaDay article took me here: http://www.semicomplete.com/projects/keynav/ And here is a demo of keynav in action
Just tested on Ubuntu 10.10 and it works fine. I had to install libxdo-dev before it would build (make), but then it ran fine. Note there’s no ‘make install’ target, so just copy the keynav binary it builds to someplace in your path (~/bin, /opt/bin, etc).
Doesn’t work awesome with dual monitors.Edit: NM. Split at least once, than use Shift+[hjkl] to move the divider around. That can jump you to the other screen.
keynav is great, I’ve been using it for years. I’d also like to point out warpd, which has a few more features. It’s currently only packaged for Arch, though, which is why I’m posting this as a comment instead of an answer.
Управляй мышью с клавиатуры в Ubuntu
Я ищу программу, которую можно использовать для управления мышью с клавиатуры. Я думаю, что видео может объяснить это намного лучше, чем я, поэтому, пожалуйста, проверьте Mouser с lifehacker.com: http://lifehacker.com/212816/hack-attack-operate-your-mouse-with-your-keyboard К сожалению, это только для Windows, но что-то вроде этого было бы идеальным решением. Я нашел много помощи в сопоставлении клавиш с программами, но ничего о сопоставлении клавиш с управлением мышью.
4 ответа 4
Если вы посмотрите на эту статью HackaDay, там написано, что он создал Mouser.exe после просмотра презентации от парня из Google. Google известен своим использованием Linux, верно? Одна из ссылок из вашей статьи на HackaDay привела меня сюда: http://www.semicomplete.com/projects/keynav/ А вот демоверсия keynav в действии Только что протестировал на Ubuntu 10.10 и все работает нормально. Я должен был установить libxdo-dev, прежде чем он собрал (сделал), но потом он работал нормально. Обратите внимание, что нет цели ‘make install’, поэтому просто скопируйте двоичный файл keynav, который он создает, в какое-то место на вашем пути (~/bin, /opt /bin и т.д.). Не работает потрясающе с двумя мониторами.Редактировать: NM. Разделите хотя бы один раз, затем используйте Shift+[hjkl], чтобы переместить разделитель. Это может перейти на другой экран.
Это может помочь частично. System -> Settings -> Assistive Technologies ; затем Keyboard Accessibility , под » Mouse Buttons » Также использование ярлыков может помочь вам тоже. Другой способ — использовать ctrl-shift-numlock которая должна быть комбинацией клавиш, которая позволит вам перемещать курсор с помощью клавиатуры. Но я не совсем уверен, что это работает, поскольку у моего ноутбука нет выделенной клавиши Numlock. Вы можете управлять мышью с клавиатуры. Клавиши / и * на цифровой клавиатуре выбирают левой кнопкой мыши и правой кнопкой мыши соответственно. Щелчок мыши делается на 5 на цифровой клавиатуре.
- System-settings
- Universal Access
- Pointing and Clicking
- Выключите ключ с надписью « Mouse keys .