
Eu escrevi um script:
^!c::
ClipSave := ClipboardAll
Send ^x
Run calc.exe
WinWaitActive Calculator
Send %clipboard%
Send Enter
Sleep 100
Send ^c
;WinClose
Send ^v
Clipboard := ClipSave
deveria calcular automaticamente o texto destacado, mas continua fazendo cálculos estranhos. Por exemplo, '2+3' sai como algo como "reciproc(ln(tan(cube(2))))". O que estou perdendo?
Responder1
O AutoHotkey vê os símbolos matemáticos e os transforma em teclas do AutoHotkey. Por exemplo: + torna-se Shift. Portanto, a calculadora pega 2 + 3 e o interpreta como o número 2 e Shift + 3.
Não se esqueça Return
da parte inferior dos scripts também. Isso também pode estar desencadeando lixo extra.
Eu adicionei alguns Sleeps
também, ele estava se adiantando mesmo com ClipWait
.
Aqui está o roteiro.
+^c::
ClipSaved := ClipboardAll
SendInput ^x
Run calc.exe
WinWaitActive Calculator
clipboard = %clipboard%
SendInput {Raw}%clipboard%
SendInput {Enter}
Sleep 100
SendInput ^c
Sleep 100
ClipWait, 2
WinClose
SendInput %clipboard%
Clipboard := ClipSaved
Return
Responder2
Para enviar a Enterchave, você deve colocá-la entre colchetes para especificar que é uma chave.
Exemplo:
Send {Enter}
Sua chamada para WinClose
também está comentada por algum motivo.