Ще одна пропозиція xdotool, яка працює в Debian Jessie 8.7 (січень 2017):
xdotool click --delay 0 --clearmodifiers 2
- xdotool обробляє багатобайтові рядки (pe UTF-8), на відміну від xvkbd.
xdotool click
імітує фактичне натискання, тому вам не доведеться клацати себе, щоб вставити в положення миші, як це було б, якби ви використовували xdotool type
, або xvkbd.
Єдина проблема полягає в тому, що --clearmodifiers
буде "натискати" назад будь-який модифікатор (Ctrl / Alt / Shift / Meta), який ви використовуєте після імітації клацання. Навіть з --delay 0
(замість 12 мс) команда потребує трохи виконання. Якщо ви відпустите клавіші до того, як вона закінчиться, ваші модифікатори знову будуть "натиснуті" і застрягнуть там, поки ви ще не натиснете і не відпустите фактичну клавішу.
Тож з цим вам доведеться трохи «повільно» (50 мс?) Звільнити свої модифікатори, якщо ви використовуєте будь-які.
Ви можете перевірити це, встановивши ярлик клавіатури, використовуючи його в текстовому редакторі, а потім натискаючи клавішу (наприклад a
, або стрілку). Лист має з’являтись малими літерами. Якщо щось інше трапляється, ви занадто швидкий і модифікатор застряг (pe Shift, якщо він знаходиться у великих літери, Ctrl, якщо ви вибрали весь текст, Alt, якщо ви відкрили меню). Натисніть та відпустіть свої модифікатори знову, щоб скинути їх.
Якщо ви занадто швидкі, можете скористатись пропозицією ilkerk:
sh -c 'sleep 0.3 && xdotool type --clearmodifiers --delay 0 "`xsel`"'
Тоді вам доведеться звільнити їх менше ніж за 300 мс і почекати півсекунди, щоб текст з’явився.
Крім того, використовуючи xdotool type
засоби, ви вставляєте текст так, ніби ви куди вводите текст, у позиції текстового курсору, а не вказівника миші. Ви можете змінити його, click
якщо вам більше подобається звичайна поведінка середнього клацання.
.