Send

Материал из UoPilot
Перейти к навигации Перейти к поиску

Описание

Send - используется для отправки нажатий клавиш в приложения.
Если параметр распознан как клавиша, то учитывается текущая раскладка. Т. е. 'send q' при русской раскладке напишет 'й'. Чтобы узнать текущую раскладку используйте Getlayout.
Если параметр не распознан как управляющая клавиша, то он посылается как текст. Т. е. 'Send qq' будет распознан как текст и напишет 'qq' при любой раскладке.
Для нажатия модификаторов Ctrl, Alt, Shift используйте Sendex.
Может работать не во всех приложениях, тогда используйте аналог Send217.

Синтаксис

Привязка к окну: необходима.
Работа в свернутом окне: да.

Send <клавиша [пауза]> | <текст>

Где:
<клавиша> - клавиша для нажатия, не односимвольные клаввиши заключается в {}.
[пауза] - необязательный параметр, указывается в миллисекундах (1 секунда = 1000 мсек).
<текст> - если параметр не распознан как управляющая клавиша, то он посылается как текст.

Примеры

// Пример 1
Send Привет      //напишет 'Привет'
// Пример 2
Send {F1}        //нажать клавишу 'F1'
// Пример 3
Send {Enter}     //нажать 'Enter'
// Пример 3
//В зависимости от раскладки напишет 'q' или 'й'
Send q 2000      //нажать клавишу 'q' и ждать 2 секунды (1 секунда = 1000 мсек)        
// Пример 4
set $a F3
send $a          //нажать клавишу 'F3'
// Пример 5
set #a 3
send {F#a}       //нажать клавишу 'F3'
// Пример 6
set $string "mymail@mail.ru"
send $string                      //напечатает строку mymail@mail.ru, кавычек не будет
// Пример 7
init_arr %a (1) Hour : Min : Sec
send %a [1]                       //напечатает текущее время
// Пример 8
//В операторе send вы можете использовать строковые, числовые и зарезервированные переменные, а также их сочетания:
set $a Сейчас
set #b hour
send $a #b часов min минут
Результат: Сейчас 14 часов 27 минут.

Смотрите также

Send217
Sendex
Post
Say
Send_down
Sendex_down
SetSelectedText

История развития

1.01 beta 7

Send <клавиша [пауза]> | <текст>

"Нажать" клавишу и ждать указанное число миллисекунд. Если параметр не распознан как управляющая клавиша, то он посылается как текст. В последнем случае команда работает аналогично команде say, за исключением завершающего Enter'а.

1.07 beta 8
Немного изменена посылка одиночных клавиш командой send и со вкладки Общее.
Send посылает текст по одной клавише. можно задавать список клавиш, после первой нераспознанной клавиши, все до конца строки посылается сплошным текстом. если первое слово клавиша, а второе число, то считаем, что это задержка после клавиши.

2.18
Почти полностью переписал 'send' и 'post'. Теперь больше похоже на правду. Они больше не посылают символ как таковой, а нажимают клавишу, на которой этот символ нарисован, соответственно что получится - зависит от того какая раскладка выбрана в приложении. Если нужно, то нажимают модификаторы [Ctrl,Alt,Shift], это к сожалению срабатывает для всей системы, а не только для выбранного приложения. Они теперь работают следующим образом, '{}' для функциональных клавиш не требуются, но обрабатываются в зависимости от того как указаны.

send {num_4} // 4
send { num_4 } // [4]

2.19
Слегка ускорил 'send'.
Поправил отправку функциональных клавиш в 'send'.

2.29
Немного исправил команду 'send' в плане указания клавиш в скобках с пробелами. Теперь:

send {num_4}   // 4
send { num_4 } // 4

Однако, если больше одной пары скобок в строке, то:

send {num_4} { num_4 } // 4[4]

2.30
Поправил команду 'send' при отправке последовательности символов. Приблизил к варианту 'send217'.

2.34
Убрал вывод в лог отладочной информации командами "send".