
Я создаю скрипт autohotkey для запуска выделенного текста через калькулятор, и мне нужно отправить содержимое буфера обмена как последовательность нажатий клавиш, так как калькулятор на самом деле не поддерживает вставку математической операции. Как это сделать?
решение1
Я исправил оригинальный скрипт, который вы написали здесь:https://superuser.com/questions/7271/most-useful-autohotkey-scripts/31282#31282Теперь отлично работает на моей системе Vista.
Рассматриваемый фрагмент кода, извлеченный из глубин Wayback Machine:
^!c::
ClipSave := ClipboardAll
Send ^x
Run calc.exe
WinWaitActive Calculator
Send ^v
Send {Enter}
Sleep 250
Send ^c
WinClose
Send ^v
Clipboard := ClipSave
return
решение2
Вам нужно использовать такую команду, чтобы «ввести» именно то, что находится в буфере обмена.
^+v::SendRaw %clipboard%
^+v означает ctrl+shift+v. Замените на желаемое сочетание клавиш. Смотретьэта страницадля того, какие символы соответствуют каким клавишам-модификаторам.
решение3
Чтобы сопоставить Ctrl+ Kдля отправки данных буфера обмена, например:
^k::Send %clipboard%
решение4
Для меня все остальные ответы здесь не сработали при попытке вставить в Visual Studio (он вставил знак тире после вставки). Сработало только это:
SendInput, ^v