Você poderia usar uma abordagem semelhante que usei em sua outra pergunta, use o buffer da área de transferência:
!p::
ClipSaved := ClipboardAll
Send ^c
clipwait
Clipboard = <p>%Clipboard%</p>
Send ^v
Clipboard := ClipSaved
ClipSaved=
return
faça um teste para mim!